Big Data in der Praxis - Beispiellösungen mit Hadoop und NoSQL. Daten speichern, aufbereiten, visualisieren

Jonas Freiknecht

Big Data in der Praxis

Beispiellösungen mit Hadoop und NoSQL. Daten speichern, aufbereiten, visualisieren

2014

448 Seiten

Format: PDF

E-Book: €  39,99

E-Book kaufen

E-Book kaufen

ISBN: 9783446441774

 

Inhalt

9

Vorwort

13

1 Einleitung

15

2 Big-Data

21

2.1 Historische Entstehung

22

2.2 Big-Data – ein passender Begriff?

23

2.2.1 Die drei V

24

2.2.2 Das vierte V – Veracity

27

2.2.3 Der Verarbeitungsaufwand ist big

28

2.2.4 Sicht der Industrien auf Big-Data

28

2.3 Eingliederung in BI und Data-Mining

29

3 Hadoop

33

3.1 Hadoop kurz vorgestellt

34

3.2 HDFS – das Hadoop Distributed File System

35

3.3 Hadoop 2.x und YARN

39

3.4 Hadoop als Single-Node-Cluster aufsetzen

40

3.4.1 Falls etwas nicht funktioniert

53

3.5 Map-Reduce

56

3.6 Aufsetzen einer Entwicklungsumgebung

58

3.7 Implementierung eines Map-Reduce-Jobs

65

3.8 Ausführen eines Jobs über Kommandozeile

77

3.9 Verarbeitung im Cluster

81

3.10 Aufsetzen eines Hadoop-Clusters

83

3.11 Starten eines Jobs via Hadoop-API

95

3.12 Verketten von Map-Reduce-Jobs

108

3.13 Verarbeitung anderer Dateitypen

123

3.14 YARN-Anwendungen

139

3.14.1 Logging und Log-Aggregation in YARN

139

3.14.2 Eine einfache YARN-Anwendung

143

3.15 Vor- und Nachteile der verteilten Verarbeitung

167

3.16 Die Hadoop Java-API

168

3.16.1 Ein einfacher HDFS-Explorer

169

3.16.2 Cluster-Monitor

181

3.16.3 Überwachen der Anwendungen im Cluster

183

3.17 Gegenüberstellung zur traditionellen Verarbeitung

185

3.18 Big-Data aufbereiten

186

3.18.1 Optimieren der Algorithmen zur Datenauswertung

186

3.18.2 Ausdünnung und Gruppierung

188

3.19 Ausblick auf Apache Spark

190

3.20 Markt der Big-Data-Lösungen

192

4 Das Hadoop-Ecosystem

195

4.1 Ambari

196

4.2 Sqoop

197

4.3 Flume

197

4.4 HBase

198

4.5 Hive

198

4.6 Pig

199

4.7 Zookeeper

199

4.8 Mahout

200

4.9 Spark

201

4.10 Data Analytics und das Reporting

201

5 NoSQL und HBase

203

5.1 Historische Entstehung

203

5.2 Das CAP-Theorem

204

5.3 Typen von Datenbanken

205

5.4 Umstieg von SQL und Dateisystemen auf NoSQL oder HDFS

208

5.4.1 Methoden der Datenmigration

208

5.5 HBase

210

5.5.1 Das Datenmodell von HBase

210

5.5.2 Aufbau von HBase

212

5.5.3 Installation als Stand-alone

213

5.5.4 Arbeiten mit der HBase Shell

215

5.5.5 Verteilte Installation auf dem HDFS

217

5.5.6 Laden von Daten

220

5.5.6.1 HBase Bulk Loading über die Shell

221

5.5.6.2 Datenextrakt aus einer Datenbank über Sqoop

223

5.5.7 HBase Java-API

232

5.5.8 Der Umstieg von einem RDBMS auf HBase

256

6 Data-Warehousing mit Hive

259

6.1 Installation von Hive

260

6.2 Architektur von Hive

262

6.3 Das Command Line Interface (CLI)

263

6.4 HiveQL als Abfragesprache

265

6.4.1 Anlegen von Datenbanken

265

6.4.2 Primitive Datentypen

266

6.4.3 Komplexe Datentypen

266

6.4.4 Anlegen von Tabellen

267

6.4.5 Partitionierung von Tabellen

268

6.4.6 Externe und interne Tabellen

268

6.4.7 Löschen und leeren von Tabellen

269

6.4.8 Importieren von Daten

270

6.4.9 Zählen von Zeilen via count

271

6.4.10 Das SELECT-Statement

271

6.4.11 Beschränken von SELECT über DISTINCT

274

6.4.12 SELECT auf partitionierte Tabellen

275

6.4.13 SELECT sortieren mit SORT BY und ORDER BY

275

6.4.14 Partitionieren von Daten durch Bucketing

277

6.4.15 Gruppieren von Daten mittels GROUP BY

278

6.4.16 Subqueries – verschachtelte Abfragen

279

6.4.17 Ergebnismengen vereinigen mit UNION ALL

279

6.4.18 Mathematische Funktionen

280

6.4.19 String-Funktionen

281

6.4.20 Aggregatfunktionen

282

6.4.21 User-Defined Functions

283

6.4.22 HAVING

291

6.4.23 Datenstruktur im HDFS

291

6.4.24 Verändern von Tabellen

292

6.4.25 Erstellen von Views

295

6.4.26 Löschen einer View

295

6.4.27 Verändern einer View

295

6.4.28 Tabellen zusammenführen mit JOINs

296

6.5 Hive Security

298

6.5.1 Implementieren eines Authentication-Providers

304

6.5.2 Authentication-Provider für HiveServer2

308

6.5.3 Verwenden von PAM zur Benutzerauthentifizierung

309

6.6 Hive und JDBC

310

6.7 Datenimport mit Sqoop

328

6.8 Datenexport mit Sqoop

330

6.9 Hive und Impala

331

6.10 Unterschied zu Pig

332

6.11 Zusammenfassung

333

7 Big-Data-Visualisierung

335

7.1 Theorie der Datenvisualisierung

335

7.2 Diagrammauswahl gemäß Datenstruktur

341

7.3 Visualisieren von Big-Data erfordert ein Umdenken

342

7.3.1 Aufmerksamkeit lenken

343

7.3.2 Kontextsensitive Diagramme

345

7.3.3 3D-Diagramme

347

7.3.4 Ansätze, um Big-Data zu visualisieren

348

7.4 Neue Diagrammarten

350

7.5 Werkzeuge zur Datenvisualisierung

354

7.6 Entwicklung einer einfachen Visualisierungskomponente

358

8 Auf dem Weg zu neuem Wissen – aufbereiten, anreichern und empfehlen

371

8.1 Eine Big-Data-Table als zentrale Datenstruktur

374

8.2 Anreichern von Daten

376

8.2.1 Anlegen einer Wissensdatenbank

378

8.2.2 Passende Zuordnung von Daten

378

8.3 Diagrammempfehlungen über Datentypanalyse

382

8.3.1 Diagrammempfehlungen in der BDTable

384

8.4 Textanalyse – Verarbeitung unstrukturierter Daten

390

8.4.1 Erkennung von Sprachen

391

8.4.2 Natural Language Processing

392

8.4.2.1 Klassifizierung

393

8.4.2.2 Sentiment-Analysis

398

8.4.3 Mustererkennung mit Apache UIMA

400

9 Zusammenfassung und Ausblick

419

10 Häufige Fehler

423

11 Anhang

429

11.1 Installation und Verwendung von Sqoop2

429

11.2 Hadoop für Windows 7 kompilieren

435

Literaturverzeichnis

439

Index

443

 

© 2009-2024 ciando GmbH