Passa al contenuto principale

Delta Sharing: standard aperto per la condivisione sicura dei dati

Delta-Sharing-Social

Aggiornamento: Delta Sharing è ora generalmente disponibile su AWS e Azure.

Ottieni un'anteprima del nuovo e-book di O'Reilly con la guida dettagliata di cui hai bisogno per iniziare a usare Delta Lake.

 

Il Data Sharing è diventato fondamentale nell'economia moderna, in quanto le aziende cercano di scambiare dati in modo sicuro con clienti, fornitori e partner. Ad esempio, un rivenditore potrebbe voler pubblicare i dati di vendita ai propri fornitori in tempo reale, oppure un fornitore potrebbe voler condividere l'inventario in tempo reale. Finora, però, la Data Sharing è stata fortemente limitata perché le soluzioni di condivisione sono legate a un unico fornitore. Ciò crea attrito sia per i fornitori di dati che per i consumatori, i quali naturalmente utilizzano piattaforme diverse.

Oggi lanciamo un nuovo progetto open-source che semplifica la condivisione tra organizzazioni diverse: Delta Sharing, un protocollo aperto per lo scambio sicuro e in tempo reale di grandi set di dati, che consente per la prima volta la Data Sharing sicura tra prodotti. Stiamo sviluppando Delta Sharing con partner tra i principali fornitori di software e dati al mondo.

Per capire perché le attuali soluzioni di Data Sharing creano attrito, si pensi a un rivenditore che vuole condividere dati con un analista di uno dei suoi fornitori. Oggi, il rivenditore potrebbe utilizzare uno dei tanti data warehouse in cloud che offrono il Data Sharing, ma l'analista dovrebbe quindi collaborare con i propri team IT, di sicurezza e di approvvigionamento per implementare lo stesso prodotto warehouse presso la propria azienda, un processo che può richiedere mesi. Inoltre, una volta implementato il warehouse, la prima cosa che l'analista farebbe sarebbe esportare i dati da esso nel suo strumento di data science preferito, come pandas o Tableau.

Con Delta Sharing, gli utenti dei dati possono connettersi direttamente ai dati condivisi tramite pandas, Tableau o decine di altri sistemi che implementano il protocollo aperto, senza dover prima distribuire una piattaforma specifica. Questo riduce i tempi di accesso da mesi a minuti e riduce notevolmente il lavoro per i fornitori di dati che desiderano raggiungere il maggior numero di utenti possibile.

Stiamo collaborando con un vivace ecosistema di partner su Delta Sharing, tra cui i team di prodotto dei principali fornitori di servizi cloud, BI e dati:

 Ecosistema Delta Sharing

In questo post, spiegheremo come funziona Delta Sharing e perché siamo così entusiasti di un approccio aperto alla Data Sharing.

Obiettivi di Delta Sharing

Delta Sharing è progettato per essere facile da usare sia per i fornitori che per i consumatori con i loro dati e flussi di lavoro esistenti. L'abbiamo progettato con quattro obiettivi in mente:

  • Condividi dati in tempo reale direttamente senza copiarli: vogliamo semplificare la condivisione dei dati esistenti in tempo reale. Oggi, la maggior parte dei dati aziendali è archiviata in sistemi cloud data lake e lakehouse. Delta Sharing funziona su questi; in particolare, consente di condividere in modo sicuro qualsiasi set di dati esistente nei formati Delta Lake o Apache Parquet.
  • Supporto per una vasta gamma di client: i destinatari dovrebbero essere in grado di utilizzare direttamente i dati dagli strumenti di loro scelta senza installare una nuova piattaforma. Il protocollo Delta Sharing è progettato per essere facilmente supportato direttamente dagli strumenti. Si basa su Parquet, che la maggior parte degli strumenti già supporta, quindi implementare un connettore è semplice.
  • Sicurezza, auditing e governance solidi: il protocollo è progettato per aiutarti a soddisfare i requisiti di privacy e conformità. Delta Sharing consente di concedere, tenere traccia e verificare l'accesso ai dati condivisi da un unico punto di applicazione.
  • Scale per set di dati di grandi dimensioni: la condivisione dei dati deve sempre più supportare set di dati dell'ordine dei terabyte, come dati industriali o finanziari granulari, una sfida per le soluzioni legacy. Delta Sharing sfrutta il costo e l'elasticità dei sistemi di archiviazione cloud per condividere set di dati di grandi dimensioni in modo economico e affidabile.

Come funziona Delta Sharing?

Delta Sharing è un semplice protocollo REST che condivide in modo sicuro l'accesso a una parte di un set di dati cloud. Sfrutta i moderni sistemi di archiviazione cloud, come S3, ADLS o GCS, per trasferire in modo affidabile set di dati di grandi dimensioni. Sono coinvolte due parti: i fornitori di dati e i destinatari.

In qualità di provider di dati, Delta Sharing consente di condividere tabelle esistenti o parti di esse (ad esempio, versioni di tabelle specifiche di partizioni) archiviate nel proprio data lake cloud in formato Delta Lake. Una tabella Delta Lake è essenzialmente una raccolta di file Parquet ed è facile eseguire il wrapping delle tabelle Parquet esistenti in Delta Lake, se necessario. Il fornitore di dati decide quali dati condividere, esegue un server di condivisione che implementa il protocollo Delta Sharing e gestisce l'accesso per i destinatari. Abbiamo reso open source un server di condivisione di riferimento e ne forniamo uno in hosting su Databricks, come immaginiamo faranno altri fornitori.

In qualità di destinatario dei dati, è sufficiente uno dei tanti client Delta Sharing che supporta il protocollo. Abbiamo rilasciato connettori open source per pandas, Apache Spark, Rust e Python e stiamo lavorando con i partner su molti altri.

Lo scambio effettivo è progettato con cura per essere efficiente, sfruttando le funzionalità dei sistemi di archiviazione cloud e di Delta Lake. Il protocollo funziona come segue:

  1. Il client del destinatario si autentica presso il server di condivisione (tramite un bearer token o un altro metodo) e richiede di query una tabella specifica. Il client può anche fornire filtri sui dati (ad es. “country=US”) come suggerimento per leggere solo un sottoinsieme dei dati.
  2. Il server verifica se il client è autorizzato ad accedere ai dati, logga la richiesta e quindi determina quali dati restituire. Si tratterà di un sottoinsieme degli oggetti di dati in S3 o in altri sistemi di cloud storage che costituiscono effettivamente la tabella.
  3. Per trasferire i dati, il server genera URL pre-firmati di breve durata che consentono al client di leggere questi file Parquet direttamente dal provider cloud, in modo che il trasferimento possa avvenire in parallelo con un'enorme larghezza di banda, senza streaming attraverso il server di condivisione. Questa potente funzionalità, disponibile in tutti i principali cloud, rende la condivisione di set di dati di grandi dimensioni veloce, economica e affidabile.

Vantaggi del design

Il design di Delta Sharing offre molti vantaggi sia per i fornitori che per i consumatori:

  • I provider di dati possono condividere facilmente un'intera tabella, o solo una versione o una partizione della tabella, poiché ai client viene concesso l'accesso solo a un sottoinsieme specifico degli oggetti in essa contenuti.
  • I provider di dati possono aggiornare i dati in modo affidabile in tempo reale utilizzando le transazioni ACID su Delta Lake e i destinatari vedranno sempre una vista coerente.
  • I destinatari dei dati non devono trovarsi sulla stessa piattaforma del provider, o nemmeno in cloud: la condivisione funziona tra più cloud e anche da cloud a utenti on-premise.
  • Il protocollo Delta Sharing è molto facile da implementare per i client se conoscono già Parquet. La maggior parte delle nostre implementazioni di prototipi con motori open source e strumenti di BI ha richiesto solo 1-2 settimane per la realizzazione.
  • Il trasferimento è veloce, economico, affidabile e parallelizzabile utilizzando il sistema cloud sottostante.

Un ecosistema aperto

Come accennato in precedenza, siamo entusiasti di definire un approccio aperto alla Data Sharing. I fornitori di dati, come Nasdaq, ci hanno detto all'unanimità che è troppo difficile fornire dati a consumatori diversi, i quali utilizzano tutti strumenti di analitiche differenti.

"Supportiamo Delta Sharing e la sua visione di un protocollo aperto che semplificherà il Data Sharing sicuro e la collaborazione tra le organizzazioni. Delta Sharing migliorerà il modo in cui lavoriamo con i nostri partner, ridurrà i costi operativi e consentirà a più utenti di accedere a una gamma completa della suite di dati di Nasdaq per scoprire approfondimenti e sviluppare strategie finanziarie”, ha affermato Bill Dague, Head of Alternative Data, Nasdaq.

Con Delta Sharing, decine di sistemi popolari potranno connettersi direttamente ai dati condivisi in modo che qualsiasi utente possa utilizzarli, riducendo gli ostacoli per tutti i partecipanti. Stiamo lavorando con decine di partner per definire lo standard Delta Sharing e vi invitiamo a partecipare.
Molte di queste aziende hanno esteso il loro supporto per il lancio di oggi:

Strumenti di BI: Tableau, Qlik, Power BI, Looker
Analitiche: AtScale, Dremio, Starburst, Microsoft Azure, Google BigQuery
Governance: Collibra, Immuta, Alation, Privacera
Provider di dati: FactSet, Nasdaq, Precisely, Safegraph, Atlassian, AWS, Foursquare, ICE, Qandl, S&P, SequenceBio

Delta Sharing su Databricks

I clienti Databricks avranno un'integrazione nativa di Delta Sharing nel nostro Unity Catalog, che offre un'esperienza semplificata per la condivisione dei dati sia all'interno che tra organizzazioni diverse. Gli amministratori potranno gestire le share utilizzando una nuova sintassi SQL CREATE SHARE o le API REST e controllare tutti gli accessi in modo centralizzato. I destinatari potranno utilizzare i dati da qualsiasi piattaforma. Iscriviti alla nostra lista d'attesa per accedere in anteprima e ricevere aggiornamenti.

Roadmap

Questa prima versione di Delta Sharing è solo start. Con lo sviluppo del progetto, prevediamo di estenderlo alla condivisione di altri oggetti, quali stream, viste SQL o file arbitrari come i modelli di machine learning. Crediamo che il futuro del Data Sharing sia aperto e siamo entusiasti di portare questo approccio ad altri flussi di lavoro di condivisione.

Introduzione a Delta Sharing

Per provare la versione open source di Delta Sharing, segui le istruzioni su delta.io/sharing. Oppure, se sei un cliente Databricks, registrati per ricevere aggiornamenti sul nostro servizio. Siamo lieti di ricevere il tuo feedback.

Non perdere mai un post di Databricks

Iscriviti al nostro blog e ricevi gli ultimi post direttamente nella tua casella di posta elettronica.

Cosa succederà adesso?

Introducing AI/BI: Intelligent Analytics for Real-World Data

Produto

June 12, 2024/11 min de leitura

Apresentando o AI/BI: analítica inteligente para dados do mundo real

Five Simple Steps for Implementing a Star Schema in Databricks With Delta Lake

Produto

September 12, 2024/8 min de leitura

Cinco etapas simples para implementar um esquema de estrela na Databricks com Delta Lake