Java-Datenbank Apache Accumulo 1.6 unterstützt Multiple Namenodes

Redaktion JAXenter

Version 1.6 der Key/Value-Datenbank Apache Accumulo ist verfügbar. Ab sofort ist es möglich, Dateien auf mehreren Masterknoten (Namenodes) zu speichern. Dazu muss in der instance.volumes-Konfiguration in accumulo-site.xml lediglich eine Liste an entsprechenden Namenode-URIs, durch Kommata getrennt, angegeben werden. Mit diesem neuen Feature wird ein Engpass umgangen, den die BigTable-Architektur nach sich zieht: Zwar ist es mit Googles Datenbanksystem, Vorbild für Accumulo, möglich, Metadaten auf mehreren Knoten zu speichern. Der HDFS-Masterknoten jedoch speichert alle Daten in-memory auf demselben Volume, wodurch die Skalierbarkeit eingeschränkt wird.

Hinzugekommen sind außerdem Tabellen-Namespaces, dank derer sich Tabellen zu logischen Einheiten zusammenfügen und gemeinsam bearbeiten lassen.

Conditional Mutations, ein weiteres neues Feature, ermöglichen es, Änderungen in Spalten vor der Implementierung zu testen. Noch experimentell ist die Verschlüsselung, die mit Version 1.5.0 eingeführt wurde. Die Verschlüsselung von rfiles und write ahead logs wurde eingeführt, ebenso wie verschlüsselte Datenübertragung per SSL.

Mit den ebenfalls hinzugekommenen Pluggable Compactions lässt sich spezifizieren, welche Dateien zu welchem Zeitpunkt zusammengeführt werden. Ohne dieses Feature wurde die Kombination von Dateien automatisch auf Basis einer vorgegebenen Verhältnisgröße ausgeführt – auch hier stand eine BigTable-Funktionalität, der Log Structured Merge Tree, Pate.

Das Accumulo-API wurde um Lexicoder erweitert, die für eine lexikographische Sortierung von Daten sorgen. Neu sind außerdem ein Maven-Plug-in zum Testen von Client-Apps, ein optimierter Zugriff auf Locality Groups, Service-IP-Adressen sowie Unterstützung für die Klasse ViewFS.

Weitere Neuheiten und Bugfixes lassen sich in den Release Notes nachlesen. Dort befinden sich auch die Downloads. Accumulo 1.6 basiert auf Hadoop 1, für Produktionssysteme wird Hadoop 2 mit High-Availability-Namenode empfohlen.

Accumulo ist eine in Java entwickelte, interaktive und verteilte Key/Value-Datenbank auf Basis der Apache-Technologien Hadoop, Zookeeper und Thrift. Sie zeichnet sich durch zellenbasierte Berechtigungen („Access Labels“) aus, ein Sicherheitsfeature, durch das jeder Nutzer nur Zugriff auf die Bereiche der Datenbank hat, für die er autorisiert ist.

2008 rief die NSA das Accumulo-Projekt ins Leben, 2011 gab sie es als Open Source unter Apache-Lizenz frei. Seit März 2012 ist es Top-Level-Projekt bei Apache. Vorangetrieben wird es von etwa einem Dutzend Organisationen und Unternehmen, darunter die NSA, Koverse, Hortonworks und Objective Solutions. Zum 1.6-Release trugen 36 Committer bei.

Geschrieben von
Kommentare

Hinterlasse einen Kommentar

Hinterlasse den ersten Kommentar!

avatar
400
  Subscribe  
Benachrichtige mich zu: