Columnare Datenbanken in einer Big Data Environment

Columnare Datenbanken können in Ihrem großen Daten Projekt sehr hilfreich sein. Relationale Datenbanken sind Reihe orientiert, Wie die Daten in jeder Zeile einer Tabelle zusammen gespeichert. In einer säulen oder spaltenorientierte Datenbank, die Daten werden gespeichert über Reihen. Obwohl dies wie eine triviale Unterscheidung erscheinen mag, ist es die wichtigste darunter liegende Merkmal der säulen Datenbanken.

Es ist sehr einfach Spalten hinzufügen, und sie können Zeile für Zeile hinzugefügt werden, bietet eine große Flexibilität, Leistung und Skalierbarkeit. Wenn Sie Volumen und die Vielfalt der Daten haben, können Sie eine säulen Datenbank zu verwenden. Es ist sehr adaptable- Sie einfach weiter Spalten hinzufügen.

Eines der beliebtesten säulen Datenbanken HBase. Auch er ist ein Projekt in der Apache Software Foundation unter der Lizenz v2.0 Apache Software verteilt. HBase verwendet die Hadoop-Dateisystem und MapReduce-Engine für seine Datenspeicheranforderungen Kern.

Das Design von HBase wird auf Googles BigTable modelliert. Daher Implementierungen von HBase sind hoch skalierbar, spärlich verteilt, persistent mehrdimensionale sortierten Karten. Die Karte wird durch eine Reihe Schlüssel, Spalte Schlüssel indiziert und ein timestamp- jeder Wert in der Karte ist ein uninterpretierte Array von Bytes.

Wenn Sie Ihre große Daten Implementierung erfordert zufällig, Echtzeit-Lese / Schreib-Datenzugriff, ist HBase eine sehr gute Lösung. Es wird oft zu speichern Ergebnisse für die spätere analytische Verarbeitung verwendet.

Wichtige Eigenschaften von HBase gehören die folgenden:

  • Konsistenz: Obwohl dies keine # 147-ACID # 148- Implementierung bietet HBase stark konsistent liest und schreibt und auf einem schließlich konsistentes Modell basiert. Dies bedeutet, dass Sie es für High-Speed-Anforderungen nutzen können, solange Sie nicht brauchen, die # 147-Extra-Features # 148- angeboten von RDBMS wie vollständige Transaktionsunterstützung oder typisierte Spalten.

  • Sharding: Da die Daten durch das Stützdateisystem verteilt ist, bietet HBase transparent, automatische Aufteilen und Umverteilung des Inhalts.

  • Hohe Verfügbarkeit: Durch die Implementierung von Region-Server, unterstützt HBase LAN- und WAN-Failover und Recovery. Im Kern befindet sich ein Master-Server verantwortlich für die Überwachung der Region-Server und alle Metadaten für den Cluster.

  • Client API: HBase bietet programmatischen Zugriff durch eine Java-API.

  • Die Unterstützung für den IT-Betrieb: Implementers kann die Leistung und andere Metriken durch eine Reihe von integrierten Web-Seiten aus.

HBase Implementierungen sind am besten geeignet für

  • Großvolumige, inkrementelle Datenerfassung und -verarbeitung

  • Echtzeit-Informationsaustausch (zum Beispiel messaging)

  • Häufig wechselnde Inhalte Portion

Menü