Remarque
L’accès à cette page requiert une autorisation. Vous pouvez essayer de vous connecter ou de modifier des répertoires.
L’accès à cette page requiert une autorisation. Vous pouvez essayer de modifier des répertoires.
En tant que destinataire Azure Databricks, vous pouvez importer un fichier d’informations d’identification à partir d’un fournisseur ouvert et lire les ressources de données partagées. Vous pouvez interroger les données partagées dans l’Explorateur de catalogues ou utiliser un bloc-notes Python.
Note
Si des données ont été partagées avec vous à l’aide de Databricks-to-Databricks OpenSharing, vous n’avez pas besoin d’un fichier d’informations d’identification pour accéder aux données, et cette page ne s’applique pas à vous. Au lieu de cela, consultez Lire les données partagées à l’aide de Databricks à Databricks OpenSharing (pour les destinataires).
Spécifications
Un membre de votre équipe doit télécharger le fichier d’informations d’identification que le fournisseur de données partage et utiliser un canal sécurisé pour partager ce fichier ou cet emplacement de fichier avec vous. Voir Accéder au modèle Open-to-Databricks.
Note
Les fonctionnalités de compartiment de stockage et d’informations d’identification (étendue, expiration, lecture/écriture) sont déterminées par le fournisseur. Si le fournisseur est un fournisseur Azure Databricks, le montage d’un partage ouvert dans un espace de travail SEG (Secure Egress Gateway) ajoute automatiquement le bucket du fournisseur à la liste d’autorisation pour les accès sortants. Pour les fournisseurs ouverts autres que Databricks, le bucket n’est pas automatiquement ajouté à la liste des autorisations. Vérifiez le fournisseur avant le montage.
Vérifiez que lorsqu’un fournisseur ouvert partage des tables à l’aide de la distribution d’informations d’identification (accès basé sur l’annuaire), ces tables sont sauvegardées par le stockage cloud qui utilise l’un des schémas pris en charge suivants : s3, , s3a, s3nabfss, wasbs, gs, ou r2. Les tables reposant sur un stockage utilisant un schéma non pris en charge (par exemple, le schéma wasb non chiffré) ne peuvent pas être lues au moyen de la distribution d’informations d’identification.
Importer un fournisseur et interroger des données partagées
Cette section explique comment importer un fournisseur et comment interroger les données partagées dans l’Explorateur de catalogues ou dans un bloc-notes Python :
Si votre espace de travail Azure Databricks est activé pour Unity Catalog, utilisez l’interface utilisateur du fournisseur d’importation dans l’Explorateur de catalogues. Vous pouvez effectuer les opérations suivantes sans avoir à stocker ou spécifier un fichier d’informations d’identification :
- Créez des catalogues à partir de partages en cliquant sur un bouton.
- Utilisez les contrôles d’accès du catalogue Unity pour accorder l’accès aux tables partagées.
- Interroger des données partagées à l’aide de la syntaxe standard du catalogue Unity.
- Appliquez des informations d’identification renouvelées à l’objet fournisseur existant sans recréer le catalogue. Consultez Réinitialiser les informations d’identification pour les destinataires actifs.
Si votre espace de travail Azure Databricks n’est pas activé pour le catalogue Unity, suivez les instructions Python notebook à la place.
Explorateur de catalogues
Autorisations requises : un administrateur du metastore ou un utilisateur disposant du privilège CREATE PROVIDER pour votre metastore Unity Catalog. Pour créer des catalogues à partir de ce partage, vous devez disposer du privilège CREATE CATALOG.
Dans votre espace de travail Azure Databricks, cliquez sur
Catalogue pour ouvrir l’Explorateur de catalogues.
En haut du volet Catalogue , cliquez sur
puis sélectionnez OpenSharing. Sinon, dans le coin supérieur droit, cliquez sur Partager openSharing>.
Sous l’onglet Partagé avec moi , cliquez sur Installer le partage.
Entrez le nom du fournisseur. Le nom ne peut pas inclure d’espaces.
Chargez le fichier d’informations d’identification que le fournisseur a partagé avec vous. De nombreux fournisseurs ont leurs propres réseaux OpenSharing à partir duquel vous pouvez recevoir des partages. Pour plus d’informations, consultez configurations spécifiques au fournisseur.
(Facultatif) Entrez un commentaire.
Cliquez sur Importer.
Sous l’onglet Partages , cliquez sur Créer un catalogue sur la ligne de partage pour créer des catalogues à partir de données partagées.
Pour plus d’informations sur l’utilisation de SQL ou de l’interface CLI Databricks pour créer un catalogue à partir d’un partage, consultez Créer un catalogue à partir d’un partage.
Accordez l’accès aux catalogues. Découvrez comment rendre les données partagées disponibles pour mon équipe etgérer les autorisations pour les schémas, les tables et les volumes dans un catalogue OpenSharing.
Lisez les objets de données partagés comme vous le feriez pour n’importe quel objet de données inscrit dans le catalogue Unity.
Pour plus d’informations et d’exemples, consultez Les données Access dans une table ou un volume partagé.
Python
Lisez les données partagées à l’aide d’un bloc-notes dans votre espace de travail Azure Databricks si votre espace de travail n’est pas activé pour le catalogue Unity. Stockez le fichier d’informations d’identification dans Azure Databricks, puis utilisez-le pour vous authentifier auprès du fournisseur de données et lire les données partagées.
Note
Ces instructions supposent que votre espace de travail Azure Databricks n’est pas activé pour Unity Catalog. Si vous utilisez Unity Catalog, vous n’avez pas besoin de pointer vers le fichier des informations d’identification lorsque vous lisez à partir du partage. Vous pouvez lire à partir de tables partagées comme vous le faites à partir de n’importe quelle table inscrite dans le catalogue Unity. Databricks vous recommande d’utiliser l’interface utilisateur du fournisseur d’importation dans l’Explorateur de catalogues au lieu des instructions fournies ici.
Tout d’abord, stockez le fichier d’informations d’identification en tant que fichier d’espace de travail Azure Databricks afin que les utilisateurs de votre équipe puissent accéder aux données partagées.
- Pour importer le fichier d’informations d’identification dans votre espace de travail Azure Databricks, consultez Importer un fichier.
- Vous pouvez accorder à d’autres utilisateurs l’autorisation d’accéder au fichier en cliquant sur
en regard du fichier, puis partager (autorisations). Entrez les identités Azure Databricks qui doivent avoir accès au fichier. Pour plus d’informations sur les autorisations de fichier, consultez listes de contrôle d’accès de fichier.
Maintenant que le fichier d’informations d’identification est stocké, créez un bloc-notes pour répertorier et lire les tables partagées.
Dans votre espace de travail Azure Databricks, cliquez sur New > Notebook. Pour plus d’informations sur les blocs-notes Azure Databricks, consultez Databricks notebooks.
Installez le
delta-sharingconnecteur et utilisez Python,pandasou Apache Spark pour répertorier et lire les tables partagées. Utilisez le chemin d’accès de l’espace de travail à votre fichier d’informations d’identification (par exemple)/Workspace/Users/user.name@email.com/config.sharecomme chemin d’accès au profil. Pour obtenir des exemples de code, consultez Pandas : Lire des données partagées et Apache Spark : Lire des données partagées.Outre les commandes Python et Apache Spark, vous pouvez interroger des données partagées à l’aide de SQL. Créez une table locale dans l’espace de travail à partir de la table partagée, puis interrogez la table locale. Les données partagées ne sont pas stockées ou mises en cache dans la table locale. Chaque fois que vous interrogez la table locale, vous voyez l’état actuel des données partagées.
Remplacez les variables comme suit :
-
<local-table-name>: nom de la table locale. -
<profile-path>: emplacement du fichier d’informations d’identification. -
<share-name>: valeur deshare=pour la table. -
<schema-name>: valeur deschema=pour la table. -
<table-name>: valeur dename=pour la table.
%sql DROP TABLE IF EXISTS <local-table-name>; CREATE TABLE <local-table-name> USING deltaSharing LOCATION "<profile-path>#<share-name>.<schema-name>.<table-name>"; SELECT * FROM <local-table-name> LIMIT 10;-
Lorsque vous exécutez la commande, les données partagées sont interrogées directement. En guise de test, la table est interrogée et les dix premiers résultats sont retournés.
Si la sortie est vide ou ne contient pas les données attendues, contactez le fournisseur de données.
Les limitations du connecteur openSharing Python s’appliquent. Consultez les limitations du connecteur OpenSharing Python.
Limitations
Le partage Open-to-Databricks est basé sur le protocole OpenSharing. La prise en charge suivante s’applique lorsque vous importez un fournisseur ouvert dans Azure Databricks :
- Seules les tables Delta qui prennent en charge le protocole Delta Sharing. Les tables uniquement Iceberg ne sont pas prises en charge.
- L’URL présignée et l’accès par jeton cloud (basé sur un répertoire) sont pris en charge. Azure Databricks préfère l’accès aux jetons cloud lorsque le fournisseur le rend disponible.
- Seuls les schémas de stockage de jetons cloud suivants sont pris en charge :
s3, ,s3as3n,abfss,wasbs, ,gsetr2.
Pour lire des données non delta telles que Iceberg, CSV, Parquet ou JSON à partir d’une source externe, utilisez la fédération Lakehouse à la place. Consultez Se connecter aux bases de données externes et aux catalogues.