Data As Code
Dremio supporta anche Apache Iceberg, un Table Format open-source che risponde alla domanda: “Quali dati sono presenti all’interno della tabella?”. Apache Iceberg abilita le transazioni ACID all’interno dell’object storage e grazie a questa proprietà permette di effettuare version rollback e time-travel sulla tabella.
Un tassello fondamentale per il Table Format è quello di poter contare su un Table Repository nel quale salvare i puntamenti delle varie tabelle Iceberg. Ne esistono di diverse tipologie, quello su cui ci soffermeremo oggi è Project Nessie che oltre ad avere il ruolo di Table Repository abilita le operazioni git-like sul Data Lakehouse. Grazie a questa tecnologia è possibile gestire i dati in branch ed è sempre possibile effettuare version rollback e time-travel ma su più tabelle.
Utilizzando questo stack tecnologico è possibile abilitare il concetto di Data As Code, ossia trattare i dati allo stesso modo di come trattiamo il codice. Infatti, vengono garantite le seguenti proprietà senza dover duplicare i dati:
 
- Isolamento: grazie all’utilizzo dei branch è possibile lavorare su una stessa tabella ma utilizzando diverse versioni della stessa
 
- Versionamento: grazie alla possibilità di effettuare version rollback e time-travel è possibile lavorare su versioni diverse della tabella
 
- Governabilità del dato: è possibile visualizzare le diverse operazioni compiute sulla tabella e da chi vengono compiute