Eine Aufzeichnung, lesbar für die Werkzeuge, die Sie schon haben: XTable und UniForm

Das Finanzteam fährt seine Berichte in Power BI über Microsoft Fabric. Eine im letzten Jahr gekaufte Tochtergesellschaft berichtet in Snowflake. Die Dateningenieure der Gruppe bevorzugen Trino. Jedes Werkzeug liest ein Tabellenformat gut, also hat jedes seine eigene Kopie des Verkaufsbuchs, nach eigenem Zeitplan aktualisiert, und die Quartalsmarge existiert in drei leicht verschiedenen Fassungen, bis jemand eine auswählt.
Ein Unternehmen kommt nicht mit leeren Händen bei einem neuen Betriebssystem an. Es kommt mit diesen Werkzeugen, diesen Gewohnheiten und diesen Kopien. Hurukans Aufzeichnung ist so entworfen, dass sie von ihnen gelesen wird, ohne für sie kopiert zu werden. Zwei Projekte machen das möglich, und zu verstehen, was sie tun und was nicht, ist eine Frage der Souveränität, nicht der Installation.
Warum Übersetzung überhaupt möglich ist
Delta Lake, Apache Iceberg und Apache Hudi speichern Daten auf dieselbe Weise: als Parquet-Dateien, die nie bearbeitet werden. Sie unterscheiden sich in den Metadaten, die neben diese Dateien geschrieben werden — die Liste, welche Dateien die Tabelle jetzt bilden, das Schema, die Partitionen, die Statistiken. Ein Tabellenformat ist ein Plan über den Ziegeln, und die Ziegel sind gemeinsam.
Eine in einem Format geschriebene Tabelle kann also einen zweiten Plan bekommen. Nichts wird kopiert; ein zweiter Satz Metadaten wird geschrieben, der auf dieselben Dateien zeigt, und eine Engine, die das zweite Format liest, findet eine Tabelle, wo sie eine erwartet. Die Datenschicht, die Hurukans Aufzeichnung hält, ist im Aufbau, und das ist eine der Eigenschaften, um die herum sie entworfen wird.
Apache XTable: ein Übersetzer, der neben der Tabelle läuft
Apache XTable ist ein Projekt im Inkubator der Apache Software Foundation. Es liest die Metadaten eines Quellformats und schreibt die Metadaten eines oder mehrerer Zielformate, „ohne die zugrunde liegenden Datendateien zu kopieren oder zu verschieben”. Die aktuelle Version ist 0.4.0-incubating vom August 2026 (geprüft am 21. Oktober 2026). Es läuft als Werkzeug oder geplanter Job, mit einer vollständigen Synchronisation, die die Zielmetadaten neu aufbaut, und einer inkrementellen, die nur überträgt, was sich seit dem letzten Lauf geändert hat.
Seine Dokumentation ist ehrlich bei den Grenzen: Hudi- und Iceberg-Tabellen mit Merge-on-Read-Anordnung werden nicht unterstützt, ebenso wenig Delta-Tabellen mit Löschvektoren. Microsofts eigene Beschreibung von OneLake sagt, dass es XTable nutzt, um Tabellen in mehr als einem Format zu zeigen — ein nützliches Zeichen dafür, wo das Projekt im Markt steht.
Delta UniForm: ein zweiter Plan, geschrieben beim Commit
Delta UniForm erledigt dieselbe Aufgabe aus
Delta Lake heraus. Ist es an einer Tabelle eingeschaltet, schreibt Delta nach jedem Commit
asynchron Iceberg-Metadaten (und, als Vorschau, Hudi-Metadaten), sodass ein Iceberg-Leser die
Tabelle nativ sieht. Es verlangt Column Mapping, eine Leserversion von mindestens 2 und eine
Schreiberversion von mindestens 7 sowie die Tabellenfunktion IcebergCompatV2. Delta 4.3.0 vom
Juni 2026 fügte die atomare inkrementelle Iceberg-Konvertierung hinzu (geprüft am 21. Oktober
2026).
Die Grenzen sind das Spiegelbild von XTable: Die Iceberg- oder Hudi-Seite ist nur lesbar;
Löschvektoren, der Typ VOID und der Change Data Feed werden nicht übertragen. In einer
Microsoft-Umgebung ist der Effekt in
OneLake sichtbar, das
Delta-Tabellen als Iceberg virtualisiert, mit einer dokumentierten Verzögerung von einigen Sekunden
bis zu ein paar Minuten, für Tabellen unter fünftausend Commits.
| Apache XTable | Delta UniForm | |
|---|---|---|
| Wo es läuft | neben der Tabelle, als Job | im Delta-Schreiber, beim Commit |
| Quellformate | Delta, Iceberg, Hudi (und mehr in 0.4.0) | nur Delta |
| Zielformate | jedes der drei | Iceberg; Hudi als Vorschau |
| Schreiben von der zweiten Seite | nein | nein |
| Katalog und Berechtigungen | nicht übersetzt | nicht übersetzt |
Was übersetzt wird und was nicht
Metadaten werden übersetzt. Die Dateiliste, das Schema, die Partitionen, die Statistiken. Drei Dinge nicht, und jedes davon ist eine Entscheidung, die beim Unternehmen bleibt.
Das Schreibformat. Ein Format bleibt dasjenige, in das geschrieben wird. Dort sitzt der Verantwortliche der Tabelle, dort wird die Aufbewahrung gesetzt und dort wird eine Löschung nach Datenschutzrecht ausgeführt. Die anderen Formate sind Sichten darauf.
Der Katalog. Einem Leser in Snowflake oder Fabric muss weiterhin gesagt werden, wo die Tabelle liegt und ob diese Person sie lesen darf. Übersetzte Metadaten tragen keine Berechtigungen. Hurukan hält Berechtigungen auf dem Server und den Katalog auf Infrastruktur, die das Unternehmen wählt; das ist der Kern der Schicht Sicherheit und Souveränität.
Funktionen, die das andere Format nicht kennt. Eine Delta-Tabelle mit Löschvektoren oder eine Iceberg-Tabelle, die durch ein Format gelesen wird, dem eine Funktion fehlt, verweigert entweder die Übersetzung oder zeigt ein anderes Ergebnis. Der Testplan für eine solche Tabelle liest sie durch jedes verwendete Format und vergleicht Zeilenzahlen, Aggregate und die Verzögerung zwischen einem Schreibvorgang und seiner Sichtbarkeit auf der anderen Seite. In Hurukan ist diese Testsuite etwas, das ein Agent aus dem Schema erzeugen kann und das ein Mensch freigibt, bevor das zweite Format irgendjemandem angeboten wird.
Lock-in in beide Richtungen
Die übliche Sorge bei einem Betriebssystem für das ganze Unternehmen ist, dass es das Unternehmen einsperrt. Die Aufzeichnung beantwortet das von innen: offene Formate, Dateien und Katalog auf der Infrastruktur des Unternehmens, lesbar für andere Engines. XTable und UniForm beantworten es von außen: Die Werkzeuge, für die das Unternehmen bereits zahlt, lesen weiter dieselbe Aufzeichnung, in dem Format, das sie bevorzugen, ohne eine Kopie, die abzugleichen wäre. Integrationen mit Microsoft 365 Copilot und den anderen Assistenten sind geplant, nicht live; die Dateiformate darunter sind bereits offen.
Welches Format Hurukan zuerst schreibt, ist eine Wahl über Katalog und Umgebung statt über Funktionen, und sie wird getroffen in Der Prüfpfad ist eine Tabelle.
Ein Test, den Sie heute machen können
Listen Sie die Tabellen auf, die in Ihrem Unternehmen in mehr als einem Werkzeug existieren. Schreiben Sie zu jeder auf, welcher Kopie die Leute vertrauen und wann die anderen zuletzt aktualisiert wurden. Ist die zweite Spalte leer, ist diese Tabelle ein Kandidat für eine Aufzeichnung mit zwei Plänen statt zwei Tabellen mit einem Namen.
- Apache XTable
- Delta UniForm
- Tabellenformate
- Lock-in
- Microsoft Fabric