• 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. Versorgungseinrichtung der Bezirksärztekammer Koblenz, Koblenz
  2. Knappschaft Kliniken Service GmbH, Bottrop

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. 7,99€
  2. (u. a. Code Vein - Deluxe Edition für 23,99€, Railway Empire - Complete Collection für 23...
  3. 16,49€

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
       


Fotos kolorieren mit einem Klick per KI - Tutorial

Wir zeigen, wie sich ein altes Bild schnell kolorieren lässt - ganz ohne Photoshop.

Fotos kolorieren mit einem Klick per KI - Tutorial Video aufrufen
    •  /