Hbase ist eine NoSQL Datenbank, welche im Hadoop-Projekt von Apache eingebunden ist. Sie ist spaltenbasiert und verteilt. Demgemäß benutzt sie zeitgleich mehrere Rechner. Überdies ist sie in der Programmiersprache Java geschrieben und baut auf dem Hadoop Distributet File System (HDFS) auf.

Sie ermöglicht es, in Echtzeit auf Tabellen mit Milliarden von Zeilen und Millionen von Spalten zuzugreifen. Dabei können all diese Daten völlig frei verteilt auf verschiedenen Rechner-Clustern gespeichert sein. Zudem sind diese Cluster frei erweiterbar, um gestiegen Anforderungen einfach abdecken zu können.

Anfänglich hat die Firma Powerset Hbase ins Leben gerufen. Damals benötigte man eine Lösung für die Verarbeitung massiver Datenmengen. Heute handelt es sich dabei um eines der Top Level Projekte von Apache.

Zahlreiche Zugriffsmöglichkeiten

Die in den Tabellen gespeicherten Daten kann man mit MapReduce Programmen verarbeiten. Dabei erfolgt der Zugriff üblicherweise mit Java. Allerdings ist das System offen und unterstützt auch die Frameworks REST, Avro und Thrift. Zudem gibt es die Möglichkeit, auf die verteilte Datenbank mit SQL zuzugreifen, wie es sonst bei normalen relationalen Datenbanken üblich ist.

Hbase und Big Data

Im Zusammenhang mit Big Data ist Hbase vor allem relevant, weil es für Analysearbeiten optimiert ist. Das heißt, dass man mit wenig Aufwand aus der Vielzahl der gespeicherten Daten in kürzester Zeit aussagekräftige Berichte erstellen kann. Aufgrund des Datenmodells, des schnellen Durchsatzes und der hohen Fehlertoleranz eignet es sich auch sehr gut für Web-Analysen, Finanzdienste, Anwendungen welche Zeitreihendaten nutzen und viele weitere Einsatzgebiete.