Strukturierte Datenspeicherung und -verarbeitung in Hadoop

Wenn Hadoop Fähigkeiten für die Arbeit mit strukturierten Daten (oder die Arbeit mit Daten jeglicher Art, für diese Angelegenheit) unter Berücksichtigung erinnern Kerneigenschaften des Hadoop: Hadoop ist, in erster Linie, eine universelle Datenspeicherung und -verarbeitung Plattform, um Tausende zu skalieren entworfen von Rechenknoten und Petabytes von Daten.

Es gibt keine Datenmodell itself- Daten in Hadoop wird einfach auf die Hadoop-Cluster als Raw-Dateien gespeichert. Als solche haben die Kernkomponenten von Hadoop selbst keine speziellen Fähigkeiten für die Katalogisierung, Indexierung, oder strukturierte Daten abfragen.

Die Schönheit eines Allzweckdatenspeichersystems ist, dass es für hochspezifische Zwecke erweitert werden kann. Die Hadoop-Community hat genau das getan mit einer Reihe von Apache-Projekte - Projekte, die in der Summe, die Hadoop bilden Ökosystem. Wenn es um strukturierte Datenspeicherung und -verarbeitung kommt, die in dieser Liste beschriebenen Projekte sind die am häufigsten verwendeten:

  • Bienenstock: Ein Data-Warehousing-Rahmen für Hadoop. Hive Kataloge Daten in strukturierten Dateien und stellt eine Abfrage-Schnittstelle mit dem SQL-ähnliche Sprache namens HiveQL.

  • HBase: EIN verteilt Datenbank - eine NoSQL-Datenbank, die eher auf mehreren Computern beruht als auf einer einzigen CPU, mit anderen Worten - die auf der Oberseite von Hadoop integriert ist.

  • Giraph: Ein Graph Processing Engine für in Hadoop gespeicherten Daten.

Viele andere Apache-Projekte unterstützen verschiedene Aspekte der strukturierten Datenanalyse, und einige Projekte konzentrieren sich auf eine Reihe von Frameworks und Schnittstellen.

Wenn die optimale Architektur für Ihre Analytik Bedürfnisse zu bestimmen, müssen Sie die Attribute und Fähigkeiten der Systeme zu bewerten Sie in Betracht ziehen. Die Tabelle vergleicht Hadoop-basierten Datenspeicher (Hive, Giraph und HBase) mit traditionellen RDBMS.

Ein Vergleich von Hadoop-basierter Speicher und RDBMS
KriterienBienenstockGiraphHBaseRDBMS
Veränderbare DatenNeinjaja
Daten-LayoutRaw-Dateien gespeichert in HDFS- Hive unterstützt proprietaryrow orientierte oder spaltenorientierte Formate.Ein spärlich verteilt, persistent mehrdimensionale SortedMapRow-orientierte oder spaltenorientierte
DatentypenBytes- Datentypen werden auf Abfrage interpretiert.Rich-Datentyp-Unterstützung
HardwareHadoop-Cluster-Ware x86 Server- fünf oder mehr ist typicalbecause der zugrunde liegenden Speichertechnologie ist HDFS, die von defaultrequires drei Repliken.Typischerweise große, skalierbare Multi-Prozessor-Systeme
Hohe VerfügbarkeitJa- in die Hadoop-ArchitekturJa, wenn die Hardware und RDBMS korrekt konfiguriert sind
IndizesjaNeinRow-Schlüssel nur oder spezielle Tabelle erforderlichja
AbfragespracheHiveQLGiraph APIHBase API-Befehle (,,,,,, HiveQLSQL
SchemaSchema als Dateien definiert werden mit dem Hive Data Language (DDL) katalogisiertSchema auf LeseVariability in Schema zwischen den ReihenSchema auf Last
DurchsatzMillionen von Lese- und Schreibvorgänge pro SekundeTausende liest und schreibt pro Sekunde
TransaktionenKeinerBietet ACID-Unterstützung auf nur einer einzigen ReiheBietet mehrreihigen und Kreuztabelle Transaktionsunterstützung withfull ACID-Eigenschaft Compliance
TransaktionsgeschwindigkeitModest Geschwindigkeit für interaktive queries- schnell für volle tablescansSchnell für interaktive queries- schnell für vollständige TabellenscansSchnell für interaktive queries- langsamer für vollständige Tabellenscans
Typische GrößeBereiche von Terabyte zu Petabyte (von Hunderten von millionsto Milliarden von Zeilen)Von Gigabyte Terabyte (von Hunderttausenden tomillions von Zeilen)

Menü