Revenir au contenu principal

Delta Sharing : une norme ouverte pour le partage de données sécurisé

Delta-Sharing-Social

Mise à jour : Delta Sharing est désormais en disponibilité générale sur AWS et Azure.

Obtenez un aperçu en avant-première du nouvel ebook d'O'Reilly pour vous guider pas à pas dans vos débuts avec Delta Lake.

 

Le Data Sharing est devenu essentiel dans l'économie moderne, car les entreprises cherchent à échanger des données en toute sécurité avec leurs clients, leurs fournisseurs et leurs Partenaires. Par exemple, un détaillant peut vouloir publier des données de ventes à ses fournisseurs en temps réel, ou un fournisseur peut vouloir partager ses stocks en temps réel. Mais jusqu'à présent, le Data Sharing a été fortement limité, car les solutions de partage sont liées à un fournisseur unique. Cela crée des frictions pour les fournisseurs et les consommateurs de données, qui utilisent naturellement des plateformes différentes.

Aujourd'hui, nous lançons un nouveau projet open source qui simplifie le partage entre organisations : Delta Sharing, un protocole ouvert pour l'échange sécurisé et en temps réel de grands datasets, qui permet pour la première fois le Data Sharing sécurisé entre différents produits. Nous développons Delta Sharing avec des Partenaires, les plus grands fournisseurs de logiciels et de données au monde.

Pour comprendre pourquoi les Solutions actuelles de Data Sharing créent des frictions, prenons l'exemple d'un détaillant qui souhaite partager des données avec un analyste de l'un de ses fournisseurs. Aujourd'hui, le détaillant pourrait utiliser l'un des nombreux data warehouses cloud qui proposent le Data Sharing, mais l'analyste devrait alors collaborer avec ses équipes IT, de sécurité et d'approvisionnement pour déployer le même produit de warehouse au sein de son entreprise, un processus qui peut prendre des mois. De plus, une fois le warehouse déployé, la première chose que ferait l'analyste serait d'en exporter les données vers son outil de science des données favori, comme pandas ou Tableau.

Avec Delta Sharing, les utilisateurs de données peuvent se connecter directement aux données partagées par le biais de pandas, Tableau ou des dizaines d'autres systèmes qui implémentent le protocole ouvert, sans avoir à déployer au préalable une plateforme spécifique. Cela réduit leur temps d'accès de plusieurs mois à quelques minutes et simplifie grandement le travail des fournisseurs de données qui souhaitent toucher le plus grand nombre d'utilisateurs possible.

Nous travaillons avec un écosystème dynamique de partenaires sur Delta Sharing, notamment les équipes produit des principaux fournisseurs de cloud, de BI et de données :

 Écosystème Delta Sharing

Dans ce post, nous expliquerons le fonctionnement de Delta Sharing et pourquoi nous sommes si enthousiastes à l'idée d'une approche ouverte du Data Sharing.

Objectifs de Delta Sharing

Delta Sharing est conçu pour être facile à utiliser par les fournisseurs comme par les consommateurs avec leurs données et workflows existants. Nous l'avons conçu avec quatre objectifs en tête :

  • Partagez des données en direct sans les copier : Nous voulons faciliter le partage des données existantes en temps réel. Aujourd'hui, la majorité des données d'entreprise sont stockées dans des systèmes de data lake et de lakehouse cloud. Delta Sharing fonctionne sur ces derniers ; en particulier, il vous permet de partager en toute sécurité n'importe quel dataset existant aux formats Delta Lake ou Apache Parquet.
  • Prise en charge d'un large éventail de clients : les destinataires doivent pouvoir consommer directement les données à partir des outils de leur choix sans installer de nouvelle plateforme. Le protocole Delta Sharing est conçu pour être facilement et directement pris en charge par les outils. Il est basé sur Parquet, que la plupart des outils prennent déjà en charge, l'implémentation d'un connecteur est donc facile.
  • Sécurité renforcée, audit et gouvernance : Le protocole est conçu pour vous aider à respecter les exigences de confidentialité et de conformité. Delta Sharing vous permet d'accorder, de suivre et d'auditer l'accès aux données partagées à partir d'un point d'application unique.
  • Monter en charge pour les jeux de données massifs : le Data Sharing doit de plus en plus prendre en charge des jeux de données de l'ordre du téraoctet, comme des données industrielles ou financières détaillées, un défi pour les Solutions. Delta Sharing s'appuie sur le coût et l'élasticité des systèmes de stockage cloud pour partager des datasets massifs de manière économique et fiable.

Comment fonctionne Delta Sharing ?

Delta Sharing est un protocole REST simple qui partage en toute sécurité l'accès à une partie d'un dataset dans le cloud. Il s'appuie sur des systèmes de stockage cloud modernes, tels que S3, ADLS ou GCS, pour transférer de manière fiable des datasets volumineux. Deux parties sont impliquées : les fournisseurs de données et les destinataires.

En tant que fournisseur de données, Delta Sharing vous permet de partager des tables existantes ou des parties de celles-ci (par exemple, des versions de table ou des partitions spécifiques) stockées sur votre data lake cloud au format Delta Lake. Une table Delta Lake est essentiellement une collection de fichiers Parquet, et il est facile d'encapsuler des tables Parquet existantes dans Delta Lake si nécessaire. Le fournisseur de données décide des données qu'il souhaite partager et exécute un serveur de partage en amont qui implémente le protocole Delta Sharing et gère l'accès pour les destinataires. Nous avons mis en open source un serveur de partage de référence; et nous en fournissons un hébergé sur Databricks, comme nous imaginons que d'autres fournisseurs le feront.

En tant que destinataire de données, il vous suffit de disposer de l'un des nombreux clients Delta Sharing qui prennent en charge le protocole. Nous avons publié des connecteurs open source pour pandas, Apache Spark, Rust et Python, et nous travaillons avec des partenaires pour en développer de nombreux autres.

L'échange réel est soigneusement conçu pour être efficace en tirant parti des fonctionnalités des systèmes de stockage cloud et de Delta Lake. Le protocole fonctionne comme suit :

  1. Le client du destinataire s'authentifie auprès du serveur de partage (via un jeton de porteur ou une autre méthode) et demande d'interroger une table spécifique. Le client peut également fournir des filtres sur les données (p. ex. « country=US ») comme indice pour ne lire qu'un sous-ensemble des données.
  2. Le serveur vérifie si le client est autorisé à accéder aux données, logs la requête, puis détermine quelles données renvoyer. Il s'agira d'un sous-ensemble des objets de données dans S3 ou d'autres systèmes de stockage cloud qui composent réellement la table.
  3. Pour transférer les données, le serveur génère des URL présignées éphémères qui permettent au client de lire ces fichiers Parquet directement depuis le fournisseur de cloud, afin que le transfert puisse s'effectuer en parallèle à très haut débit, sans streaming via le serveur de partage. Cette fonctionnalité puissante, disponible dans tous les principaux clouds, permet de partager de très grands datasets de manière rapide, économique et fiable.

Avantages de la conception

La conception de Delta Sharing offre de nombreux avantages, tant pour les fournisseurs que pour les consommateurs :

  • Les fournisseurs de données peuvent facilement partager une table entière, ou juste une version ou une partition de la table, car les clients n'ont accès qu'à un sous-ensemble spécifique des objets qu'elle contient.
  • Les fournisseurs de données peuvent mettre à jour les données de manière fiable en temps réel en utilisant les transactions ACID sur Delta Lake, et les destinataires verront toujours une vue cohérente.
  • Les destinataires des données n'ont pas besoin d'être sur la même plateforme que le fournisseur, ni même dans le cloud -- le partage fonctionne entre les clouds et même du cloud vers les utilisateurs on-premise.
  • Le protocole Delta Sharing est très facile à implémenter pour les clients s'ils comprennent déjà Parquet. La plupart de nos implémentations de prototypes avec des moteurs open source et des outils de BI n'ont nécessité que 1 à 2 semaines de développement.
  • Le transfert est rapide, bon marché, fiable et parallélisable grâce au système cloud sous-jacent.

Un écosystème ouvert

Comme mentionné précédemment, nous sommes ravis de mettre en place une approche ouverte au Data Sharing. Les fournisseurs de données, comme le Nasdaq, nous ont unanimement déclaré qu'il est trop difficile de fournir des données à des consommateurs divers, qui utilisent tous des outils analytiques différents.

"Nous soutenons Delta Sharing et sa vision d'un protocole ouvert qui simplifiera le partage sécurisé de Data Sharing et la collaboration entre les organisations. « Delta Sharing améliorera notre façon de travailler avec nos partenaires, réduira les coûts opérationnels et permettra à plus d'utilisateurs d'accéder à une gamme complète de la suite de données de Nasdaq pour découvrir des insights et développer des stratégies financières », a déclaré Bill Dague, responsable des données alternatives chez Nasdaq.

Avec Delta Sharing, des dizaines de systèmes populaires pourront se connecter directement aux données partagées afin que n'importe quel utilisateur puisse les utiliser, réduisant ainsi les frictions pour tous les participants. Nous travaillons avec des dizaines de partenaires pour définir la norme Delta Sharing, et nous vous invitons à y participer.
Nombre de ces entreprises ont apporté leur soutien au lancement d'aujourd'hui :

Outils BI : Tableau, Qlik, Power BI, Looker
Analytique : AtScale, Dremio, Starburst, Microsoft Azure, Google BigQuery
Gouvernance : Collibra, Immuta, Alation, Privacera
Fournisseurs de données : FactSet, Nasdaq, Precisely, Safegraph, Atlassian, AWS, Foursquare, ICE, Qandl, S&P, SequenceBio

Delta Sharing sur Databricks

Les clients Databricks bénéficieront d'une intégration native de Delta Sharing dans notre Unity Catalog, offrant une expérience simplifiée pour le partage de données au sein des organisations et entre elles. Les administrateurs pourront gérer les partages à l'aide d'une nouvelle syntaxe SQL CREATE SHARE ou d'API REST et auditer tous les accès de manière centralisée. Les destinataires pourront consommer les données depuis n'importe quelle plateforme. Inscrivez-vous pour rejoindre notre liste d'attente et bénéficier d'un accès en avant-première et de mises à jour.

Feuille de route

Cette première version de Delta Sharing n'est qu'un début. Au fur et à mesure que nous développons le projet, nous prévoyons de l'étendre au partage d'autres objets, tels que des Streams, des vues SQL ou des fichiers arbitraires comme des Modèles de machine learning. Nous sommes convaincus que l'avenir du Data Sharing est ouvert et nous sommes ravis d'appliquer cette approche à d'autres flux de travail de partage.

Premiers pas avec Delta Sharing

Pour essayer la version open source de Delta Sharing, suivez les instructions à l'adresse delta.io/sharing. Ou, si vous êtes un client Databricks, inscrivez-vous pour recevoir des mises à jour sur notre service. Nous avons hâte de lire vos commentaires !

Ne manquez jamais un article Databricks

Abonnez-vous à notre blog et recevez les derniers articles dans votre boîte mail.

Et ensuite ?

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