• IT-Karriere:
  • Services:

Subsurface: Git-Objects statt XML als Datenspeicher

Die Anwendung Subsurface für Taucher ist ein Hobbyprojekt von Intels Open-Source-Chef Dirk Hohndel, sie wurde von Linus Torvalds initiiert. Statt des bisher verwendeten XML bekommt die Software künftig wohl einen Datenspeicher mittels Git.

Artikel veröffentlicht am ,
Diese Daten speichert Subsurface künftig wohl mittels Git.
Diese Daten speichert Subsurface künftig wohl mittels Git. (Bild: Subsurface)

Er hacke glücklich ein neues Speicherformat für die Tauchdaten in Subsurface zusammen, schreibt Linux-Erfinder Linus Torvalds, der auch Initiator der Software für Taucher ist, auf Google+. Statt des bisher verwendeten XML will Torvalds die Git-Object-Datenbank benutzen. Damit kombiniere er Teile zweier sehr verschiedener Projekte, die er gestartet habe, so Torvalds.

Git-Objekt-Baum

Stellenmarkt
  1. über duerenhoff GmbH, Raum Mannheim
  2. Axians IKVS GmbH, Münster

Die Versionsverwaltung Git speichert Inhalte in einer Key-Value-Datenbank - in den sogenannten Git Objects. In der Erklärung zu dem Code-Commit schreibt Torvalds, dass Subsurface Tauchdaten statt in einer XML-Datei nun eben in einem Git-Object-Repository speichert.

Dabei werden die einzelnen Objekte in einem Baum gespeichert, in dem "die einzelnen Tauchgänge als eigene Datei" repräsentiert sind. Diese werden hierarchisch nach Trip und Datum sortiert. Diese Vorgehensweise dupliziert den XML-Code zum Speichern größtenteils, erklärt Torvalds. Die Logik sei zwar sehr ähnlich, es gebe aber "tonnenweise triviale Unterschiede".

XML ist "ein Desaster"

Ursprünglich nutzte Torvalds XML als Speicher, da das auch viele andere Projekte so machten, und "Subsurface war ursprünglich nicht in der Lage dazu, etwas Eigenes zu machen". Doch XML sei das schlechteste jemals designte Dateiformat, skaliere nicht gut und sei "im Allgemeinen ein komplettes Desaster".

So suchten Torvalds und Intels Open-Source-Chef Dirk Hohndel, der Subsurface seit einiger Zeit pflegt, eine Alternative. Doch binäre Formate seien "böse und nicht erweiterbar", außerdem wollten die Entwickler "Replikation, Netzwerktransparenz und die Möglichkeit, mehrere Tauchgänge aus verschiedenen Quellen zu kombinieren".

Die Git-Objektdatenbank sei dagegen gut designt, biete effiziente Deduplikation und Kompression. Zusätzlich bekommen Nutzer Backups und eine Historie dank Git einfach dazu. Ebenso lassen sich die Dateien mit vielen Werkzeugen ansehen, um etwa Diffs der Dateien anzusehen oder einfach verschiedene Tauchgänge.

Für die Überlegungen zu dem tatsächlichen Code ließ sich Torvalds einige Monate Zeit, um ein komplettes Bild davon zu haben, wie er die Idee umsetzen möchte. Der Quellcode der Erweiterung von Subsurface durch Git-Objekte steht via Git zur Verfügung.

Bitte aktivieren Sie Javascript.
Oder nutzen Sie das Golem-pur-Angebot
und lesen Golem.de
  • ohne Werbung
  • mit ausgeschaltetem Javascript
  • mit RSS-Volltext-Feed


Anzeige
Spiele-Angebote
  1. 3,61€
  2. (-20%) 39,99€
  3. 53,99€

AwayFromTheSun82 11. Mär 2014

Erstmal muss man sagen, das XML so gut oder schlecht ist, wie der der es einsetzt. Wenn...

yoyoyo 08. Mär 2014

Ein Object in git ist content und header mit dem deflate Algorithmus (zlib) komprimiert...


Folgen Sie uns
       


Parksensor von Bosch ausprobiert

Wenn es darum geht, Autofahrer auf freie Parkplätze zu lotsen, lassen sich die Bosch-Sensoren sinnvoll einsetzen.

Parksensor von Bosch ausprobiert Video aufrufen
In eigener Sache: Aktiv werden für Golem.de
In eigener Sache
Aktiv werden für Golem.de

Keine Werbung, kein unerwünschtes Tracking - kein Problem! Wer Golem.de-Inhalte pur nutzen möchte, hat neben dem Abo Golem pur jetzt eine weitere Möglichkeit, Golem.de zu unterstützen.

  1. Golem Akademie Von wegen rechtsfreier Raum!
  2. In eigener Sache Wie sich Unternehmen und Behörden für ITler attraktiv machen
  3. In eigener Sache Unser Kubernetes-Workshop kommt auf Touren

Need for Speed Heat im Test: Temporausch bei Tag und Nacht
Need for Speed Heat im Test
Temporausch bei Tag und Nacht

Extrem schnelle Verfolgungsjagden, eine offene Welt und viel Abwechslung dank Tag- und Nachtmodus: Mit dem Arcade-Rennspiel Heat hat Electronic Arts das beste Need for Speed seit langem veröffentlicht. Und das sogar ohne Mikrotransaktionen!
Von Peter Steinlechner

  1. Electronic Arts Need for Speed Heat saust durch Miami

ZFS erklärt: Ein Dateisystem, alle Funktionen
ZFS erklärt
Ein Dateisystem, alle Funktionen

Um für möglichst redundante und sichere Daten zu sorgen, ist längst keine teure Hardware mehr nötig. Ein Grund dafür ist das Dateisystem ZFS. Es bietet Snapshots, sichere Checksummen, eigene Raid-Level und andere sinnvolle Funktionen - kann aber zu Anfang überfordern.
Von Oliver Nickel

  1. Dateisystem OpenZFS soll einheitliches Repository bekommen
  2. Dateisystem ZFS on Linux unterstützt native Verschlüsselung

    •  /