(elektronische Musik) Willkommen bei Big Data Systems and Analytics. In diesen Lektionen lernen Sie Speichersysteme kennen entwickelt für Big Data, wie Hadoop und seine Architektur, Dazu gehören Hadoop Distributed File System, MapReduce, und verschiedene Arten von verfügbaren Knoten. Um Big Data zu verarbeiten, benötigen Sie eine zentralisierte Anwendung Damit können Sie Daten übermitteln und dann speichern in eine relationale Datenbank, aber es ist nicht möglich große Datensätze in einer relationalen Datenbank zu speichern weil die Datenbank einen Engpass entwickeln wird. Diese Anwendungen unterstützen normalerweise nur kleine Systeme die mit Big Data nicht umgehen können. Google hat dieses Problem gelöst mit dem Programmiermodell MapReduce. Der MapReduce-Algorithmus führt die folgenden Funktionen aus. Aufteilen einer großen Aufgabe in kleinere Teile. Selbständiges Ausführen kleinerer Aufträge. Integrieren von Ergebnissen in einen einzigen Datensatz. Wenn Sie ein großes Problem zu lösen haben, dann können Sie den Algorithmus in mehrere kleinere Aufgaben aufteilen, und jede Aufgabe wird unabhängig ausgeführt auf verteilter Infrastruktur. Hadoop wurde entwickelt, um den MapReduce-Algorithmus auszuführen. Hadoop-Systeme führen den MapReduce-Algorithmus aus, die den Job in mehrere kleine Aufgaben aufteilt. Es verarbeitet die Daten parallel, Das bedeutet, dass diese kleineren Aufgaben gleichzeitig ausgeführt werden damit es statistische Analysen durchführen kann auf riesige Datenmengen gleichzeitig. Weitere Vorteile der Verwendung der Hadoop-Architektur sind, dass es uns helfen kann, mit einer Situation umzugehen wo, wenn ein Knoten ausfällt, dann kümmert sich ein anderer Knoten um die Verarbeitung. Hadoop kann die Daten bis zur Größe verarbeiten von einem Petabyte parallel. Es bietet auch eine Skalierbarkeitslösung, d.h Der Knoten kann dynamisch hinzugefügt werden, um weitere Daten zu verarbeiten. Das Hadoop Distributed File System bietet Zuverlässigkeit, Skalierbarkeit und Verfügbarkeit. Daten werden systemweit repliziert zur Verarbeitung in einem verteilten Banner. Die Dateien werden in großen Blöcken verteilt und werden repliziert, um optimierte parallele Lesevorgänge zu ermöglichen. Bei MapReduce führt Hadoop den Job aus Verwenden der auf dem verteilten Dateisystem gespeicherten Daten mit dem MapReduce-Algorithmus. Es hilft uns, Berechnungen effizient durchzuführen mit den gespeicherten Daten. Apache Pig ist ein Open-Source-Projekt, das darauf aufbaut von MapReduce-Algorithmen. Es hilft uns, das Datenanalyseprogramm zu erstellen. Sie können die großen Datensätze mit Apache Pig analysieren. Es hilft uns auch, die Daten als Datenflüsse darzustellen. Sie müssen das Datenanalyseprogramm schreiben mit der Pig-Sprache, und dieses Programm wird konvertiert einplanen und Aufgaben intern reduzieren. Die Verwendung von Pig bietet mehrere Vorteile. Es ähnelt der strukturierten Abfragesprache. Wenn Sie die Abfragesprache kennen, dann ist es einfach, diese Sprache aufzugreifen. Es unterstützt Operatoren wie Joins und Sorting, ähnlich der relationalen Datenbank. Es kann sowohl strukturierte als auch unstrukturierte Daten verarbeiten. Apache Pig ist eine Hochsprache auf der MapReduce-Abstraktionsschicht aufgebaut. MapReduce kann im Vergleich zu Apache Pig schwer zu erlernen sein, sondern ein Experte für Java-Programmierung kann beim lernen helfen. Mit Apache Pig können Sie auch Beispielskripte schreiben das ist bereits kompiliert und wird generiert den MapReduce-Job intern. Der MapReduce-Job benötigt eine längere Kompilierzeit und erlaubt Entwicklern, die Daten zu speichern irgendwo in der Pipeline. Es stellt die Bibliotheken bereit, mit denen wir erstellen können die Extrahierungs-, Transformations- und Ladejobs. Hier sind einige der häufigsten Anwendungen für Apache Pig. Konvertieren Sie Daten in das Parquet-Format. Durchsuchen Sie Protokolldateien aus den Petabytes an Daten. Verarbeiten Sie große Datenmengen und generieren Sie Aggregate. Führen Sie eine Bildkonvertierung durch. Apache Hive ist auch eine Plattform zum Generieren von MapReduce-Operationen. Hive bietet Unterstützung für Ad-hoc-Abfragen zur Generierung von Datenaggregaten und bietet auch verschiedene Techniken, die helfen bei der Analyse großer Datensätze. Es unterstützt Sprache ähnlich in die SQL-Server-Abfragesprache. Hive funktioniert im Allgemeinen gut mit strukturierten Daten im Vergleich zu Apache Pig und arbeitet mit verschiedenen Datentypen, wie strukturiert, unstrukturiert und halbstrukturiert. Hive ermöglicht es uns, das Skript mit HiveQL zu schreiben, eine Abfrageverarbeitungs- und deklarative Sprache.