Ét register, læsbart for de værktøjer, du allerede har: XTable og UniForm

En dataingeniør set bagfra ved et skrivebord med to skærme side om side, hver med den samme abstrakte blågrå tabel i et andet layout, et enkelt blåt kabel mellem de to maskiner, et lyst åbent kontor ude af fokus

Økonomiteamet kører sine rapporter i Power BI over Microsoft Fabric. Et datterselskab, der blev købt sidste år, rapporterer i Snowflake. Koncernens dataingeniører foretrækker Trino. Hvert værktøj læser ét tabelformat godt, så hvert har sin egen kopi af salgshovedbogen, opdateret efter sin egen plan, og kvartalsmarginen findes i tre lidt forskellige versioner, indtil nogen vælger én.

En virksomhed ankommer ikke tomhændet til et nyt operativsystem. Den ankommer med de værktøjer, de vaner og de kopier. Hurukans register er designet til at blive læst af dem uden at blive kopieret til dem. To projekter gør det muligt, og at forstå, hvad de gør og ikke gør, er et suverænitetsspørgsmål, ikke et VVS-spørgsmål.

Hvorfor oversættelse overhovedet er mulig

Delta Lake, Apache Iceberg og Apache Hudi gemmer data på samme måde: som Parquet-filer, der aldrig redigeres. De adskiller sig i de metadata, der skrives ved siden af de filer — listen over, hvilke filer der udgør tabellen nu, skemaet, partitionerne, statistikken. Et tabelformat er en tegning lagt over murstenene, og murstenene er fælles.

Så en tabel skrevet i ét format kan få en anden tegning. Intet kopieres; et andet sæt metadata skrives, der peger på de samme filer, og en motor, der læser det andet format, finder en tabel, hvor den forventer én. Datalaget, der rummer Hurukans register, er under opbygning, og det er en af de egenskaber, det designes omkring.

Apache XTable: en oversætter, der kører ved siden af tabellen

Apache XTable er et inkubationsprojekt hos Apache Software Foundation. Det læser metadataene i et kildeformat og skriver metadataene for et eller flere målformater “uden at kopiere eller flytte de underliggende datafiler”. Den aktuelle udgivelse er 0.4.0-incubating fra august 2026 (kontrolleret den 21. oktober 2026). Det kører som et værktøj eller et planlagt job, med en fuld synkronisering, der genopbygger målets metadata, og en inkrementel synkronisering, der kun overfører det, der er ændret siden sidste kørsel.

Dets dokumentation er ærlig om grænserne: Hudi- og Iceberg-tabeller med merge-on-read-layout understøttes ikke, og det gør Delta-tabeller, der bruger sletningsvektorer, heller ikke. Microsofts egen beskrivelse af OneLake angiver, at det bruger XTable til at vise tabeller i mere end ét format, hvilket er et nyttigt tegn på, hvor projektet står på markedet.

Delta UniForm: en anden tegning skrevet ved commit

Delta UniForm gør det samme arbejde indefra Delta Lake. Når det er aktiveret på en tabel, skriver Delta Iceberg-metadata (og, i preview, Hudi-metadata) efter hver commit, asynkront, så en Iceberg-læser ser tabellen indbygget. Det kræver kolonnemapping, en læserversion på mindst 2 og en skriverversion på mindst 7 samt tabelfunktionen IcebergCompatV2. Delta 4.3.0 fra juni 2026 tilføjede atomar inkrementel Iceberg-konvertering (kontrolleret den 21. oktober 2026).

Grænserne er spejlbilledet af XTables: Iceberg- eller Hudi-siden er skrivebeskyttet; sletningsvektorer, typen VOID og change data feed følger ikke med. I et Microsoft-bo ses effekten i OneLake, som virtualiserer Delta-tabeller som Iceberg med en dokumenteret forsinkelse på nogle få sekunder til et par minutter, for tabeller under fem tusind commits.

Apache XTableDelta UniForm
Hvor det kørerved siden af tabellen, som et jobinde i Delta-skriveren, ved commit
KildeformaterDelta, Iceberg, Hudi (og flere i 0.4.0)kun Delta
Målformaterethvert af de treIceberg; Hudi i preview
Skrivninger fra den anden sidenejnej
Katalog og rettighederoversættes ikkeoversættes ikke

Hvad der oversættes, og hvad der ikke gør

Metadata oversættes. Listen over filer, skemaet, partitionerne, statistikken. Tre ting gør ikke, og hver af dem er en beslutning, der bliver hos virksomheden.

Skriveformatet. Ét format forbliver det, der skrives til. Det er der, tabellens ejer sidder, hvor opbevaring sættes, og hvor en sletning efter databeskyttelsesloven udføres. De andre formater er visninger af det.

Kataloget. En læser i Snowflake eller Fabric skal stadig have at vide, hvor tabellen er, og om denne person må læse den. Oversatte metadata bærer ikke rettigheder. Hurukan holder rettighederne på serveren og kataloget på infrastruktur, virksomheden vælger, hvilket er substansen i laget for sikkerhed og suverænitet.

Funktioner, det andet format ikke kender. En Delta-tabel med sletningsvektorer eller en Iceberg-tabel læst gennem et format, der mangler en funktion, vil enten afvise oversættelsen eller vise et andet resultat. Testplanen for en sådan tabel læser den gennem hvert format i brug og sammenligner rækkeantal, aggregater og forsinkelsen mellem en skrivning og dens synlighed på den anden side. I Hurukan er den testsuite noget, en agent kan generere ud fra skemaet, og et menneske godkender, før det andet format tilbydes nogen.

Fastlåsning i begge retninger

Den sædvanlige bekymring ved et operativsystem for hele virksomheden er, at det låser virksomheden fast. Registret besvarer den indefra: åbne formater, filer og katalog på virksomhedens infrastruktur, læsbare af andre motorer. XTable og UniForm besvarer den udefra: de værktøjer, virksomheden allerede betaler for, bliver ved med at læse det samme register, i det format, de foretrækker, uden nogen kopi at afstemme. Integrationer med Microsoft 365 Copilot og de andre assistenter er planlagt, ikke i drift; filformaterne under dem er allerede åbne.

Hvilket format Hurukan skriver først, er et valg om katalog og bo snarere end funktioner, og det træffes i Revisionssporet er en tabel.

En test, du kan lave i dag

Lav en liste over de tabeller, der findes i mere end ét værktøj i din virksomhed. Skriv for hver ned, hvilken kopi der er den, folk stoler på, og hvornår de andre sidst blev opdateret. Hvis den anden kolonne er tom, er den tabel en kandidat til ét register med to tegninger i stedet for to tabeller med ét navn.