Magnus Reimann

In immer mehr Projekten besteht die Anforderung, große Datenmengen effizient und kostengünstig zu speichern und für spätere Analysen im Zugriff zu haben. Dabei stoßen traditionelle Datenbankmanagementsysteme oft an ihre Grenzen. Auf Basis von Apache Hadoop wurde HBase, eine sogenannte NoSQL-Datenbank, in Java entwickelt, die von der Skalierbarkeit der Hadoop-Architektur profitiert. Diese Speicherungsform eignet sich insbesondere für Daten, die selten oder nie gelöscht oder verändert werden, dafür aber oft ergänzt: zum Beispiel Kassenbons.

NoSQL steht in diesem Fall für "not only SQL" und dieser Anspruch spiegelt sich darin wieder, dass nicht nur in Java, sondern auch in SQL Tabellen und Abfragen erstellt werden können. Verantwortlich für diese Funktionalität ist Apache Phoenix, das zwischen HBase und dem jeweiligen Benutzer eine Zwischenschicht darstellt, um SQL-Anweisungen in Java zu übersetzen. Dies läuft für den Anwender transparent ab, so dass der Eindruck entstehen kann, mit einem klassischen relationalen Datenbankmanagementsystem zu arbeiten.

Die Hortonworks Data Platform (HDP) bietet eine sauber abgestimmte Distribution mit einer aktuellen HBase-Version. Für Interessierte befindet sich auf der Homepage eine sogenannte Sandbox, mit der sofort erste Schritte in HBase möglich sind. Eine Übersicht über die in HDInsight, der auf HDP basierende Hadoop-Distribution in der Cloud, verfügbaren Versionen befindet sich in dem Link unten.

 

Quellen:

Apache Hadoop: https://hadoop.apache.org/
Apache HBase: http://hbase.apache.org/
Apache Phoenix: http://phoenix.apache.org/
Hortonworks: http://hortonworks.com/
HDInsight: http://azure.microsoft.com/en-in/documentation/articles/hdinsight-component-versioning/