Aller au contenu principal

Qu'est-ce qu'OpenSharing ?

OpenSharing est la plateforme de Data Sharing sécurisée dans Databricks qui vous permet de partager des données et des assets d'IA avec des utilisateurs extérieurs à votre organisation, qu'ils utilisent Databricks ou non. OpenSharing est également la base de Databricks Marketplace, un forum ouvert pour l'échange de produits de données.

OpenSharing est également disponible sous forme de projet open source que vous pouvez utiliser pour partager des tables Delta à partir d'autres plateformes.

Comment fonctionne OpenSharing ?​

OpenSharing est un protocole ouvert développé par Databricks pour le Data Sharing sécurisé avec d'autres organisations. Cela fonctionne indépendamment des plateformes de calcul que ces organisations utilisent.

Il existe plusieurs façons de partager des données à l'aide d'OpenSharing :

  1. Le protocole de partage Databricks-to-Databricks , qui vous permet de partager des données et des assets d'IA depuis votre workspace compatible Unity Catalog avec les utilisateurs qui ont également accès à un workspace Databricks compatible Unity Catalog.

    Cette approche utilise le serveur OpenSharing intégré à Databricks. Il prend en charge certaines fonctionnalités OpenSharing qui ne sont pas prises en charge dans les autres protocoles, notamment le partage de Notebook, le partage de volume Unity Catalog, le partage de modèle d’IA Unity Catalog, la gouvernance des données Unity Catalog, l’audit et le suivi de l’utilisation pour les fournisseurs et les destinataires. L'intégration avec Unity Catalog simplifie la configuration et la gouvernance pour les fournisseurs et les bénéficiaires et améliore les performances.

    Consultez Qu’est-ce que le protocole OpenSharing Databricks-to-Databricks ?.

  2. **Le protocole de partage Databricks-to-Open**, qui vous permet de partager des données tabulaires que vous gérez dans un Workspace Databricks compatible avec Unity Catalog avec les utilisateurs de n'importe quelle plateforme informatique.

    Cette approche utilise le serveur OpenSharing intégré à Databricks et est utile lorsque vous gérez des données à l'aide d'Unity Catalog et souhaitez les partager avec des utilisateurs qui n'utilisent pas Databricks ou n'ont pas accès à un workspace Databricks activé pour Unity Catalog. L'intégration avec Unity Catalog côté fournisseur simplifie la configuration et la gouvernance pour les fournisseurs.

    Consultez Qu'est-ce que le protocole de partage Databricks-à-Ouvert ?.

  3. Une implémentation gérée par le client du serveur OpenSharing open source , qui vous permet de partager de n'importe quelle plateforme vers n'importe quelle plateforme, que ce soit Databricks ou non.

    La documentation Databricks ne fournit pas d'instructions pour configurer votre propre serveur OpenSharing. Consultez le projet open source.

  4. **Le connecteur SAP Business Data Cloud (BDC) pour Databricks**, qui vous permet de partager des données entre votre workspace compatible Unity Catalog et un compte SAP BDC.

    Cette approche utilise le connecteur SAP BDC, qui utilise OpenSharing pour un accès en direct et sans copie aux produits de données SAP BDC.

    Voir Qu'est-ce que le connecteur SAP BDC pour Databricks?.

Partages, fournisseurs et destinataires​

Les concepts principaux sous-jacents à OpenSharing dans Databricks sont les *partages*, les *fournisseurs* et les *destinataires*.

Qu'est-ce qu'un partage ?​

Dans OpenSharing, un partage est un ensemble en lecture seule de tables et de partitions de table qu'un fournisseur souhaite partager avec un ou plusieurs destinataires. Si votre destinataire utilise un workspace Databricks compatible avec Unity Catalog, vous pouvez également inclure des fichiers notebook, des vues (y compris des vues dynamiques qui restreignent l'accès au niveau des lignes et des colonnes), des volumes Unity Catalog et des modèles Unity Catalog dans un partage.

Vous pouvez ajouter ou supprimer des tables, des tables de streaming, des tables Iceberg gérées, des vues, des vues matérialisées, des vues de métriques, des volumes, des modèles et des fichiers de notebook d'un partage à tout moment, et vous pouvez attribuer ou révoquer l'accès des destinataires de données à un partage à tout moment.

Dans un workspace Databricks compatible avec Unity Catalog, un partage est un objet sécurisable enregistré dans Unity Catalog. Si vous supprimez un partage de votre métastore Unity Catalog, tous les destinataires de ce partage perdent la capacité d'y accéder.

Voir Créer des partages pour OpenSharing.

Qu’est-ce qu’un fournisseur ?​

Un fournisseur est une entité qui partage des données avec un destinataire. Si vous êtes un fournisseur et que vous souhaitez profiter du serveur Databricks OpenSharing intégré et gérer les partages et les destinataires à l'aide d'Unity Catalog, vous avez besoin d'au moins un workspace Databricks activé pour Unity Catalog. Vous n'avez pas besoin de migrer tous vos workspaces existants vers Unity Catalog. Vous pouvez simplement créer un nouveau workspace compatible avec Unity Catalog pour vos besoins OpenSharing.

Si un destinataire se trouve sur un workspace Databricks où Unity Catalog est activé, le fournisseur est également un objet sécurisable Unity Catalog qui représente l'organisation du fournisseur et associe cette organisation à un ensemble de partages.

Qu'est-ce qu'un destinataire ?​

Un *destinataire* est une entité qui reçoit des partages d'un fournisseur. Dans Unity Catalog, un destinataire est un objet sécurisable qui représente une organisation et l'associe à une authentification ou un identifiant de partage sécurisé qui permet à cette organisation d'accéder à un ou plusieurs partages.

En tant que fournisseur de données (partageur), vous pouvez définir plusieurs destinataires pour tout métastore Unity Catalog donné, mais si vous souhaitez partager des données de plusieurs métastores avec un utilisateur ou un groupe d'utilisateurs particulier, vous devez définir le destinataire séparément pour chaque métastore. Un destinataire peut avoir accès à plusieurs partages.

Si un fournisseur supprime un destinataire de son metastore Unity Catalog, ce destinataire perd l'accès à tous les partages auxquels il avait précédemment accès.

Consultez Créer des destinataires de données pour OpenSharing (partage Databricks-to-Databricks).

Partage Databricks-à-Open comparé au partage Databricks-to-Databricks​

Cette section décrit les deux protocoles de partage à partir d'un workspace Databricks pour lequel Unity Catalog est activé.

remarque

Cette section suppose que le fournisseur se trouve sur un workspace Databricks activé pour Unity Catalog. Pour en savoir plus sur la configuration d'un serveur OpenSharing open source pour partager à partir d'une plateforme non-Databricks ou d'un workspace non-Unity Catalog, consultez le projet open source.

La manière dont un fournisseur utilise OpenSharing dans Databricks dépend de la personne avec laquelle il partage les données :

  • Open sharing vous permet de partager des données avec n'importe quel utilisateur, qu'il ait accès à Databricks ou non.
  • Le partage Databricks-to-Databricks vous permet de partager des données avec des utilisateurs Databricks dont le Workspace est attaché à un metastore Unity Catalog différent du vôtre. Databricks-to-Databricks prend également en charge le partage de Notebooks, de volumes et de modèles, ce qui n'est pas disponible dans le partage Databricks-to-Open.

Qu'est-ce qu'OpenSharing ouvert ?​

Si vous souhaitez partager des données avec des utilisateurs extérieurs à votre Workspace Databricks, qu'ils utilisent Databricks ou non, vous pouvez utiliser OpenSharing en accès ouvert pour partager vos données en toute sécurité. En tant que fournisseur de données, vous gérez l'authentification avec le destinataire du partage en utilisant l'une des méthodes suivantes :

  • Vous générez un jeton de porteur de longue durée et le partagez en toute sécurité avec le destinataire. Ils utilisent le jeton pour s'authentifier et obtenir un accès en lecture aux tables que vous avez incluses dans les partages auxquels vous leur avez donné accès.
  • Vous utilisez la fédération Open ID Connect (OIDC), octroyant des jetons OAuth Databricks à courte durée de vie au destinataire en échange de jetons JWT que le fournisseur d'identité (IdP) du destinataire transmet à Databricks.

Les destinataires peuvent accéder aux données partagées à l'aide de nombreux outils et plateformes informatiques, notamment :

  • Databricks
  • Apache Spark
  • Pandas
  • Power BI

Pour une liste complète des connecteurs OpenSharing et des informations sur leur utilisation, consultez la documentation OpenSharing.

Voir aussi Qu'est-ce que le protocole de partage Databricks-vers-Open ?.

Qu'est-ce que Databricks-to-Databricks OpenSharing ?​

Si vous souhaitez partager des données avec des utilisateurs qui possèdent un Workspace Databricks activé pour Unity Catalog, vous pouvez utiliser Databricks-to-Databricks OpenSharing. Le partage Databricks-to-Databricks vous permet de partager des données avec des utilisateurs d’autres comptes Databricks, qu’ils soient sur AWS, Azure ou GCP. C'est aussi un excellent moyen de partager des données en toute sécurité entre différents metastores Unity Catalog dans votre propre compte Databricks. Notez qu’il n’est pas nécessaire d’utiliser OpenSharing pour partager des données entre des Workspace attachés au même metastore Unity Catalog, car dans ce scénario, vous pouvez utiliser Unity Catalog lui-même pour gérer l’accès aux données entre les Workspace.

L’un des avantages du partage Databricks-to-Databricks est que le destinataire du partage n’a pas besoin de jeton pour accéder au partage, et que le fournisseur n’a pas besoin de gérer les jetons des destinataires. La sécurité de la connexion de partage, y compris toute vérification d’identité, authentification et audit, est entièrement gérée via OpenSharing et la plateforme Databricks. Un autre avantage est la possibilité de partager des fichiers Notebook Databricks, des volumes Unity Catalog et des modèles Unity Catalog.

Voir aussi Qu'est-ce que le protocole OpenSharing Databricks-to-Databricks ?.

Comment les administrateurs de fournisseurs configurent-ils OpenSharing et partagent-ils des données ?​

Cette section donne un aperçu de la façon dont les fournisseurs peuvent activer OpenSharing et initier le partage à partir d'un workspace Databricks compatible Unity Catalog. Pour OpenSharing open source, consultez le projet open source.

Le partage Databricks-to-Databricks entre les métastores Unity Catalog du même compte est toujours activé. Pour effectuer un partage avec des workspaces Databricks situés dans d'autres comptes ou avec des clients non-Databricks, un fournisseur disposant des privilèges d'administrateur de compte Databricks ou d'administrateur de métastore procède comme suit :

  1. Activez OpenSharing sur le métastore Unity Catalog qui gère les données.
remarque

Vous n'avez pas besoin d'activer OpenSharing sur votre metastore si vous avez l'intention d'utiliser OpenSharing pour partager des données uniquement avec des utilisateurs sur d'autres metastores Unity Catalog de votre compte. Le partage de métastore à métastore au sein d'un seul compte Databricks est activé par default.

Consultez Activer OpenSharing sur un metastore. 2. Créez un partage et ajoutez-y des données. Consultez Créer des partages pour OpenSharing.

  1. Créer un destinataire. Le fournisseur peut partager des informations d’identification d’accès par e-mail, ce qui permet au destinataire d’accéder plus facilement aux données partagées.

    Consultez Créer des destinataires de données pour OpenSharing (partage Databricks-to-Databricks).

    Si votre destinataire n'est pas un utilisateur Databricks, ou n'a pas accès à un workspace Databricks activé pour Unity Catalog, vous devez utiliser le partage Databricks-vers-Open. Vous pouvez soit générer des informations d'identification basées sur un jeton porteur pour ce destinataire, soit utiliser la fédération OIDC.

  2. Accordez à vos destinataires l'accès aux données. Consultez Gérer l'accès aux partages de données OpenSharing (pour les fournisseurs).

astuce

Utilisez-vous comme destinataire de test pour essayer le processus de configuration.

OpenSharing par e-mail​

info

Bêta

Cette fonctionnalité est en bêta. Pour l'utiliser, un administrateur de compte du fournisseur doit activer OpenSharing par e-mail depuis la page Prévisualisations de la console du compte. Consultez Gérer les aperçus au niveau du compte.

Les fournisseurs OpenSharing utilisent le partage par e-mail pour inviter un destinataire en utilisant son adresse e-mail, au lieu de collecter d'abord son identifiant de partage pour le partage Databricks-to-Databricks ou de fournir manuellement un fichier d'informations d'identification pour le partage ouvert. Il ne s’agit pas d’un nouveau protocole de partage ni d’un nouveau type d’authentification. Il s'agit d'une méthode de livraison superposée au destinataire que vous créez.

Lorsque vous créez le destinataire, vous choisissez les méthodes de connexion autorisées par l'invitation : Databricks, le partage ouvert ou l'une ou l'autre. Les invitations par e-mail ne prennent pas en charge la fédération OIDC.

Le partage d'e-mails simplifie la configuration pour le fournisseur :

  • Vous avez uniquement besoin de l'adresse e-mail du destinataire. Vous n'avez pas besoin de demander au destinataire son identifiant de partage de métastore avant de créer le destinataire, ni de trouver un canal de distribution sécurisé pour transmettre un fichier d'identifiants.
  • OpenSharing fournit le Link d'activation sécurisé lorsque vous accordez l'accès, de sorte que vous n'avez pas à gérer ce transfert vous-même.
  • Si vous autorisez les deux méthodes de connexion, la même invitation permet au destinataire de se connecter via Databricks ou via le partage ouvert, selon ce qui convient le mieux à son environnement.

Les étapes de création, d'octroi et d'accès sont les mêmes que celles utilisées par tous les destinataires :

  1. Créez le destinataire et fournissez son adresse e-mail. Pour les destinataires Databricks-to-Databricks, consultez la page Créer des destinataires de données pour OpenSharing (partage Databricks-to-Databricks). Pour les destinataires ouverts, consultez la page Créer un objet destinataire pour les utilisateurs non-Databricks utilisant des jetons porteurs (partage Databricks-to-Open).
  2. Accordez au destinataire l'accès à un partage, ce qui déclenche également l'envoi par OpenSharing d'un Link d'activation sécurisé par e-mail au destinataire. Consultez Gérer l'accès aux partages de données OpenSharing (pour les fournisseurs).
  3. Le destinataire suit le Link pour accepter l'invitation et lire les données partagées. Consultez la page Obtenir l'accès aux données partagées avec vous.

Pour obtenir la liste complète des limitations, consultez la page Partage par invitation par e-mail.

Comment les destinataires accèdent-ils aux données partagées ?​

Les destinataires accèdent aux assets de données partagés en format lecture seule. Les fichiers notebook partagés sont en lecture seule, mais ils peuvent être clonés, puis modifiés et exécutés dans le Workspace du destinataire comme n’importe quel autre notebook.

L’accès sécurisé dépend du modèle de partage :

Chaque fois que le fournisseur de données met à jour des tables ou des volumes de données dans son propre compte Databricks, les mises à jour apparaissent en quasi temps réel dans le système du destinataire. Pour savoir comment accéder aux données qui vous ont été partagées via OpenSharing, consultez Accéder aux données partagées avec vous via OpenSharing (pour les destinataires).

Comment suivez-vous qui partage et accède aux données partagées ?​

Les fournisseurs de données sur les workspaces Databricks avec Unity Catalog activé peuvent utiliser l'audit logging et les tables système de Databricks pour surveiller la création et la modification des partages et des destinataires, et peuvent surveiller l'activité des destinataires sur les partages. Voir Auditer et suivre le Data Sharing.

Les destinataires de données qui utilisent des données partagées dans un Workspace Databricks peuvent utiliser la journalisation d'audit Databricks et les tables système pour comprendre qui accède à quelles données. Voir Auditer et suivre le Data Sharing.

Partage de volumes​

Vous pouvez partager des volumes à l’aide du flux de partage Databricks-to-Databricks. Consultez Ajouter des volumes à un partage (pour les fournisseurs) et Lire les données partagées à l’aide de Databricks-to-Databricks OpenSharing (pour les destinataires) (pour les destinataires).

Partage de modèles​

Vous pouvez partager des modèles à l'aide du flux de partage Databricks-to-Databricks. Consultez Ajouter des modèles à un partage (pour les fournisseurs) et Lire les données partagées à l'aide de Databricks-to-Databricks OpenSharing (pour les destinataires) (pour les destinataires).

Partage de Notebook​

Vous pouvez utiliser OpenSharing pour partager des fichiers notebook à l'aide du flux de partage Databricks-to-Databricks. Consultez Ajouter des fichiers Notebook à un partage (pour les fournisseurs) et Lire les Notebooks partagés (pour les destinataires).

Restriction de l'accès au niveau des lignes et des colonnes lors du partage des vues​

Vous pouvez partager des vues dynamiques qui restreignent l'accès à certaines données de table en fonction des propriétés des destinataires. Voir Ajouter des vues dynamiques à un partage pour filtrer les lignes et les colonnes.

OpenSharing et streaming​

OpenSharing prend en charge Apache Spark Structured Streaming. Un fournisseur peut partager une table avec l'historique ou une table de streaming afin qu'un destinataire puisse l'utiliser comme source Structured Streaming, en traitant les données partagées de manière incrémentielle avec une faible latence. Les destinataires peuvent également effectuer des queries Delta Lake time travel sur les tables partagées avec l'historique.

Pour savoir comment partager des tables avec l'historique, consultez Ajouter des tables à un partage. Pour savoir comment utiliser les tables partagées comme sources de streaming, consultez Query a table using Apache Spark Structured Streaming (pour les destinataires du partage Databricks-to-Databricks) ou Access a shared table using Spark Structured Streaming (pour les destinataires des données partagées Databricks-to-Open).

Pour savoir comment partager des tables de streaming, consultez Ajouter des tables de streaming à un partage.

Voir aussi les concepts de Structured Streaming.

matrice de prise en charge des fonctionnalités Delta Lake​

OpenSharing prend en charge la plupart des fonctionnalités Delta Lake lorsque vous partagez une table. Cette matrice de prise en charge liste :

  • Fonctionnalités Delta qui nécessitent des versions spécifiques de Databricks Runtime, du connecteur Spark open source OpenSharing ou du connecteur Python open source OpenSharing.
  • Fonctionnalités partiellement prises en charge.

Fonctionnalité

Fournisseur

Destinataire Databricks

Destinataire open source

Vecteurs de suppression

Les tables doivent être partagées avec l'historique.

  • Databricks Runtime 14.1 et versions ultérieures pour les queries par batch
  • Databricks Runtime 14.2+ pour les requêtes CDF et de streaming
  • Connecteur OpenSharing Spark 3.1+
  • Connecteur OpenSharing Python 1.1.0+
  • Power BI v2.132.908.0+

Mappage de colonnes

Les tables doivent être partagées avec l'historique.

  • Databricks Runtime 14.1 et versions ultérieures pour les queries par batch
  • Databricks Runtime 14.2+ pour les requêtes CDF et de streaming
  • Connecteur OpenSharing Spark 3.1+
  • Pris en charge avec des limitations dans le connecteur Python OpenSharing
  • Power BI v2.132.908.0+

Delta avec lectures Iceberg

Les tables doivent être partagées avec l'historique.

  • Databricks Runtime 14.1 et versions ultérieures pour les queries par batch
  • Databricks Runtime 14.2+ pour les requêtes CDF et de streaming
  • Connecteur OpenSharing Spark 3.1+
  • Connecteur OpenSharing Python 1.1.0+
  • Power BI v2.132.908.0+

Point de contrôle V2

Pris en charge avec des limites

Pris en charge avec des limites

Pris en charge avec des limites

TimestampNTZ

Pris en charge

Databricks Runtime 14.1+

Connecteur OpenSharing Spark 3,3+

Clustering fluide

Pris en charge avec des limites

Pris en charge avec des limites

Pris en charge avec des limites

Fonctionnalité

Fournisseur

Destinataire Databricks

Destinataire open source

Vecteurs de suppression

Les tables doivent être partagées avec l'historique.

  • Databricks Runtime 14.1 et versions ultérieures pour les queries par batch
  • Databricks Runtime 14.2+ pour les requêtes CDF et de streaming
  • Connecteur OpenSharing Spark 3.1+
  • Connecteur OpenSharing Python 1.1.0+
  • Power BI v2.132.908.0+

Mappage de colonnes

Les tables doivent être partagées avec l'historique.

  • Databricks Runtime 14.1 et versions ultérieures pour les queries par batch
  • Databricks Runtime 14.2+ pour les requêtes CDF et de streaming
  • Connecteur OpenSharing Spark 3.1+
  • Pris en charge avec des limitations dans le connecteur Python OpenSharing
  • Power BI v2.132.908.0+

Delta avec lectures Iceberg

Les tables doivent être partagées avec l'historique.

  • Databricks Runtime 14.1 et versions ultérieures pour les queries par batch
  • Databricks Runtime 14.2+ pour les requêtes CDF et de streaming
  • Connecteur OpenSharing Spark 3.1+
  • Connecteur OpenSharing Python 1.1.0+
  • Power BI v2.132.908.0+

Point de contrôle V2

Pris en charge avec des limites

Pris en charge avec des limites

Pris en charge avec des limites

TimestampNTZ

Pris en charge

Databricks Runtime 14.1+

Connecteur OpenSharing Spark 3,3+

Clustering fluide

Pris en charge avec des limites

Pris en charge avec des limites

Pris en charge avec des limites

OpenSharing : FAQ​

Voici les questions fréquemment posées sur OpenSharing.

Ai-je besoin d'Unity Catalog pour utiliser OpenSharing ?​

Non, vous n'avez pas besoin de Unity Catalog pour partager (en tant que fournisseur) ou consommer des données partagées (en tant que destinataire). Cependant, Unity Catalog offre des avantages tels que la prise en charge du partage d'assets non tabulaires et d'IA, une gouvernance prête à l'emploi, la simplicité et les performances des requêtes.

Les fournisseurs peuvent partager des données de deux manières :

  • Placez les assets à partager sous la gestion de Unity Catalog et partagez-les à l'aide du serveur Databricks OpenSharing intégré.

    Vous n'avez pas besoin de migrer tous les assets vers Unity Catalog. Vous n'avez besoin que d'un seul Workspace Databricks activé pour Unity Catalog afin de gérer les assets que vous souhaitez partager. Dans certains comptes, les nouveaux Workspace sont activés pour Unity Catalog automatiquement. Voir Se familiariser avec Unity Catalog.

  • Implémentez le serveur de partage Databricks-to-Open pour partager des données, sans nécessairement utiliser votre compte Databricks.

Les destinataires peuvent consommer des données de deux manières :

  • Sans Databricks Workspace. Utilisez les connecteurs open source OpenSharing qui sont disponibles pour de nombreuses plateformes de données, y compris Power BI, pandas et Apache Spark open source. Voir Lire les données partagées avec des jetons porteurs et le projet open source OpenSharing.

  • Dans un workspace Databricks. Les workspaces destinataires n'ont pas besoin d'être activés pour Unity Catalog, mais il y a des avantages en termes de gouvernance, de simplicité et de performances s'ils le sont.

    Les organisations destinataires qui souhaitent ces avantages n'ont pas besoin de migrer tous les assets vers Unity Catalog. Vous n'avez besoin que d'un seul Workspace Databricks activé pour Unity Catalog pour gérer les assets qui vous sont partagés. Dans certains comptes, les nouveaux Workspace sont activés pour Unity Catalog automatiquement. Voir Se familiariser avec Unity Catalog.

Voir Lire les données partagées avec des jetons d'authentification et Lire les données partagées à l'aide de Databricks-to-Databricks OpenSharing (pour les destinataires).

Dois-je être client Databricks pour utiliser OpenSharing ?​

Non, OpenSharing est un protocole ouvert. Vous pouvez partager des données non Databricks avec des destinataires sur n’importe quelle plateforme de données. Les fournisseurs peuvent configurer un serveur OpenSharing ouvert pour partager à partir de n'importe quelle plateforme de calcul. Les destinataires peuvent consommer des données partagées à l'aide de connecteurs OpenSharing open source pour de nombreux produits de données, y compris Power BI, Pandas et Spark open source.

Cependant, l’utilisation d’OpenSharing sur Databricks, en particulier le partage à partir d’un Workspace compatible Unity Catalog, présente de nombreux avantages.

Pour plus de détails, consultez la première question de cette FAQ.

Comment puis-je engager et vérifier les coûts OpenSharing ?​

Le coût d'OpenSharing est encouru lors du partage et de l'accès aux vues, aux vues matérialisées et aux tables de streaming. Voici les sources de coût potentielles pour le partage :

  • Coût du compute, facturé par Databricks.

  • Coût du stockage et du transfert réseau (sortie), facturé par le fournisseur de stockage.

  • Coût de la source de compute externe, lors du partage de schémas et de tables externes.

La méthode par laquelle le compute est effectué et qui le paie dépend de plusieurs facteurs :

  • Le type de compute du destinataire
  • Que le partage se produise au sein du même compte Databricks ou entre des comptes

Le tableau suivant décrit la méthode de facturation pour le partage et l'accès aux vues via OpenSharing :

Compute du destinataire

Relation de compte

Qui paie

SKU utilisé pour la facturation

Méthode d'accès

Databricks Serverless

Tout

Destinataire*

Serverless du destinataire

Le destinataire reçoit un accès direct aux données sous-jacentes.

Databricks Classique

Même compte

Destinataire*

Classique du destinataire

Le destinataire reçoit un accès direct aux données sous-jacentes.

Databricks Classique

Autre compte

Destinataire

Serverless interactif du fournisseur

Le fournisseur effectue le filtrage

Connecteurs de partage Databricks vers Open

Tout

Fournisseur

Serverless interactif du fournisseur

Le fournisseur effectue le filtrage

Compute du destinataire

Relation de compte

Qui paie

SKU utilisé pour la facturation

Méthode d'accès

Databricks Serverless

Tout

Destinataire*

Serverless du destinataire

Le destinataire reçoit un accès direct aux données sous-jacentes.

Databricks Classique

Même compte

Destinataire*

Classique du destinataire

Le destinataire reçoit un accès direct aux données sous-jacentes.

Databricks Classique

Autre compte

Destinataire

Serverless interactif du fournisseur

Le fournisseur effectue le filtrage

Connecteurs de partage Databricks vers Open

Tout

Fournisseur

Serverless interactif du fournisseur

Le fournisseur effectue le filtrage

* Lorsque vous utilisez OpenSharing avec un destinataire utilisant un compute Serverless dans un compte différent, ou avec un destinataire dans le même compte, il n'y a pas de frais supplémentaires. Cela signifie qu'il n'y a aucun coût supplémentaire pour la matérialisation de l'actif de données.

Lors du partage de tables étrangères , la matérialisation est toujours effectuée et stockée du côté du fournisseur. Pour les tables Iceberg étrangères, la matérialisation est effectuée du côté du fournisseur lors du partage avec un destinataire ouvert n'utilisant pas de client Iceberg. Les fournisseurs peuvent constater des frais supplémentaires attribués au stockage default utilisé pour la matérialisation des données.

Lors du partage de tables étrangères en utilisant le flux de partage Databricks-to-Databricks, le filtrage est toujours effectué du côté du fournisseur et le destinataire paie le coût de compute du filtrage. Si vous utilisez le protocole de partage ouvert de Databricks, le filtrage est effectué du côté du fournisseur et celui-ci en prend le coût à sa charge.

L'attribution de la facturation est également interrogeable à l'aide de la référence de table système du billable usage et de la référence de table système de l'historique de matérialisation OpenSharing. Si le destinataire paie pour l'attribution, seul le destinataire peut consulter l'enregistrement associé dans la table système. Pour des exemples de queries, consultez Exemples de queries.

OpenSharing entraîne-t-il des coûts de sortie des données ?​

OpenSharing au sein d'une région n'entraîne aucun coût de sortie. Contrairement aux autres plateformes de Data Sharing, OpenSharing ne nécessite pas la réplication des données. Ce modèle présente de nombreux avantages, mais cela signifie que votre fournisseur de cloud peut facturer des frais de sortie de données lorsque vous partagez des données entre des clouds ou des régions. Databricks prend en charge le partage depuis Cloudflare R2, qui n'entraîne aucun frais de sortie, et fournit d'autres outils et recommandations pour surveiller et éviter les frais de sortie. Consultez Surveiller et gérer les coûts de sortie de données OpenSharing (pour les fournisseurs).

Les destinataires ont-ils un accès direct aux données sous-jacentes dans les vues partagées, les vues matérialisées et les tables de streaming ?​

Pour les vues partagées, les vues matérialisées et les tables de streaming, le destinataire des données a un accès direct si l'une des conditions suivantes est vraie :

  • Le destinataire utilise le compute serverless ou le compute classique non dédié sur le même compte Databricks.
  • Le destinataire utilise le compute serverless sur un autre compte Databricks.

Sinon, les données sont matérialisées et filtrées côté fournisseur.

La matérialisation des données est stockée sous l’emplacement de stockage parent de l’asset de données partagé.

Lors du partage d'assets matérialisés, le compute traite la requête en appliquant les filtres nécessaires et en créant une matérialisation temporaire mise en cache dans le stockage du fournisseur. Ces données filtrées sont distribuées aux destinataires à l'aide d'URL pré-signées de courte durée, garantissant un accès sécurisé tout en maintenant le contrôle d'accès du fournisseur au destinataire.

Les fournisseurs peuvent-ils révoquer l'accès des destinataires ?​

Oui, l'accès des destinataires peut être révoqué à la demande et à des niveaux de granularité spécifiés. Vous pouvez refuser l'accès des destinataires à des partages spécifiques et à des adresses IP spécifiques, filtrer les données tabulaires pour un destinataire, révoquer les jetons des destinataires et supprimer entièrement les destinataires. Consultez Révoquer l'accès d'un destinataire à un partage et Créer des destinataires de données pour OpenSharing (partage Databricks-à-Databricks).

N'est-il pas dangereux d'utiliser des URL pré-signées ?​

OpenSharing utilise des URL pré-signées pour fournir un accès temporaire à un fichier dans un stockage d'objets. Ils ne sont donnés qu'aux destinataires qui ont déjà accès aux données partagées. Ils sont sécurisés car ils sont de courte durée et n'étendent pas le niveau d'accès au-delà de ce qui a déjà été accordé aux destinataires.

Les jetons utilisés dans le protocole de partage Databricks-vers-Open sont-ils sécurisés ?​

Parce qu’OpenSharing permet le partage multiplateforme, contrairement aux autres plateformes de Data Sharing disponibles, le protocole de partage nécessite un jeton ouvert. Les fournisseurs peuvent garantir la sécurité des jetons en configurant la durée de vie du jeton, en définissant des contrôles réseau et en révoquant l’accès à la demande. De plus, le jeton n’étend pas le niveau d’accès au-delà de ce qui a déjà été accordé aux destinataires. Voir Considérations de sécurité pour les jetons.

Si vous préférez ne pas utiliser de tokens pour gérer l'accès aux partages de destinataires, vous devez utiliser le partage Databricks-to-Databricks ou contacter votre équipe de compte Databricks pour des alternatives.

Quelle est la différence entre Lakeflow Connect et OpenSharing ?​

OpenSharing vous permet de partager en toute sécurité des données actives entre plateformes, clouds et régions. Databricks recommande l'ingestion à l'aide de connecteurs gérés, car ils montent en charge pour s'adapter aux volumes de données élevés, aux requêtes à faible latence et aux limites des API tierces. Cependant, vous souhaiterez peut-être **query** vos données sans les déplacer.

Lorsque vous avez le choix entre les connecteurs gérés et OpenSharing, choisissez OpenSharing pour les scénarios suivants :

  • Limiter la duplication des données.
  • Interrogation des données les plus récentes possible.

Limitations​

Tenez compte des limitations suivantes lorsque vous utilisez OpenSharing pour partager des données et des assets d'IA.

Partage par invitation par e-mail​

Sharing by e-mail invitation is not supported in the following scenarios:

  • Fédération OIDC : les invitations par e-mail ne prennent pas en charge la fédération OIDC. Voir Activer la fédération Open ID Connect (OIDC) pour les destinataires OpenSharing.
  • Groupes et Service Principals : une invitation par e-mail doit être envoyée à l'adresse e-mail d'un utilisateur individuel, elle ne peut donc pas représenter un groupe ou un Service Principal.
  • Autre identité Databricks acceptante : pour le partage Databricks-to-Databricks, la personne qui accepte doit se connecter avec un compte Databricks dont l'e-mail correspond à l'adresse invitée.

OpenSharing par e-mail présente les limitations suivantes :

  • Une invitation par e-mail est liée à une seule adresse e-mail et ne peut pas être transférée. Le destinataire doit l'accepter en étant connecté en tant que cet utilisateur.
  • Chaque destinataire d’e-mail correspond à une seule adresse e-mail, et vous ne pouvez pas créer de second destinataire d’e-mail pour la même adresse.
  • Pour accepter une invitation Databricks-to-Databricks, le destinataire a besoin du privilège CREATE PROVIDER sur son métastore, ainsi que du privilège CREATE CATALOG pour monter les données partagées dans un catalogue.
  • Pour le partage Databricks-to-Databricks, une seule invitation par e-mail peut être acceptée par un maximum de 10 métastores.
  • Une invitation de partage ouverte utilise un seul fichier d'identifiants que le destinataire ne peut download qu'une seule fois.
  • Vous ne pouvez pas renvoyer d'invitation pour un partage que le destinataire possède déjà, mais l'octroi de l'accès à un nouveau partage envoie un nouvel e-mail. Consultez Gérer les destinataires de l'e-mail.
  • La commande CREATE RECIPIENT SQL et la CLI Databricks ne prennent pas en charge le partage par e-mail.

Format de table et prise en charge des fonctionnalités​

Exigences de format :

  • Les données tabulaires doivent être au format de table Delta ou Iceberg managé. Vous pouvez facilement convertir des tables Parquet en Delta, et inversement. See CONVERT TO DELTA.
  • OpenSharing ne peut lire que les tables avec lectures Iceberg activées en tant que tables Delta.

Tables non prises en charge :

  • Les fournisseurs ne peuvent pas partager les tables qui utilisent le clustering fluide avec le filtrage des partitions.
  • Les fournisseurs ne peuvent pas partager de tables R2 avec le point de contrôle V2.
  • Les fournisseurs ne peuvent pas partager de tables avec les classements activés.
  • Les fournisseurs ne peuvent pas partager de tables avec des filtres de ligne ou des masques de colonne.
  • Les fournisseurs ne peuvent pas partager les tables SHALLOW CLONE. Databricks ne prend pas en charge la pré-signature des URL pour les logs Delta qui référencent des chemins absolus.
  • Les contraintes de clé étrangère ne sont pas disponibles dans les tables partagées.

Partage Databricks-to-Databricks uniquement​

Les assets suivants peuvent être partagés uniquement à l'aide du flux de partage Databricks-to-Databricks :

Vues​

streaming​

  • OpenSharing ne prend pas en charge la modification de responseFormat lorsqu'une source de streaming est en cours d'exécution ou pendant les redémarrages de streaming.

Métadonnées du destinataire​

  • Les tables de information_schema provenant d’un catalogue partagé reflètent les métadonnées stockées dans Unity Catalog. Ces métadonnées sont mises à jour à partir du fournisseur uniquement lorsque vous interrogez la table partagée directement ou que vous exécutez une commande telle que DESCRIBE. D’ici là, information_schema peut sembler obsolète par rapport aux données du fournisseur.

Limites de ressources et techniques​

  • Il existe des limites sur le nombre de fichiers dans les métadonnées autorisés pour une table partagée. Pour en savoir plus, consultez les erreurs de dépassement de limite de Ressources.
  • Les schémas nommés information_schema ne peuvent pas être importés dans un metastore Unity Catalog, car ce nom de schéma est réservé dans Unity Catalog.

Voir aussi la matrice de prise en charge des fonctionnalités de Delta Lake.

Les suppressions en cascade contournent la protection des partages​

La suppression d'un objet parent, tel qu'un catalogue ou un schéma, Trigger une suppression en cascade de ses objets enfants, même si ces objets enfants sont inclus dans des partages actifs. Après une suppression en cascade d'un asset, vous ne pouvez pas rajouter un asset portant le même nom au partage.

Pour éviter ce problème, supprimez les actifs de tous les partages avant de supprimer leurs objets parents.

Quotas de ressources​

Databricks impose des quotas de ressources sur tous les objets sécurisables OpenSharing. Ces quotas sont listés dans les Limites de ressources. Si vous prévoyez de dépasser ces limites de ressources, contactez l'équipe de votre compte Databricks.

Vous pouvez surveiller votre utilisation des quotas à l'aide des API de quotas de ressources Unity Catalog. Consultez Surveiller votre utilisation des quotas de ressources Unity Catalog.

Ressources supplémentaires​

Sur cette page