Explorer le stockage et rechercher des fichiers de données

Cet article se concentre sur la découverte et l’exploration des répertoires et des fichiers de données gérés avec des volumes Unity Catalog, notamment des instructions basées sur l’interface utilisateur pour l’exploration des volumes avec l’Explorateur de catalogues. Cet article fournit également des exemples d’exploration programmatique des données dans le stockage d’objets cloud à l’aide de chemins d’accès de volume et d’URI cloud.

Databricks recommande d’utiliser des volumes pour gérer l’accès aux données dans le stockage d’objets cloud. Pour plus d’informations sur la connexion aux données dans le stockage d’objets cloud, consultez Connexion aux sources de données.

Pour obtenir une procédure pas à pas complète sur l’interaction avec les fichiers dans tous les emplacements, consultez Utilisation des fichiers sur Azure Databricks.

Important

Lorsque vous recherchez des fichiers dans l’interface utilisateur de l’espace de travail, vous pouvez découvrir les fichiers de données stockés en tant que fichiers d’espace de travail. Databricks recommande d’utiliser des fichiers d’espace de travail principalement pour du code (tels que des scripts et des bibliothèques), des scripts init ou des fichiers de configuration. Dans l’idéal, vous devez limiter les données stockées en tant que fichiers d’espace de travail à de petits jeux de données qui peuvent être utilisés pour des tâches telles que le test pendant le développement et l’assurance qualité. Consultez l’article Que sont les fichiers d’espace de travail ?.

Volumes et configurations d’objets cloud héritées

Lorsque vous utilisez des volumes pour gérer l’accès aux données dans le stockage d’objets cloud, vous pouvez uniquement utiliser le chemin des volumes pour accéder aux données, et ces chemins sont disponibles avec tous les calculs compatibles avec Unity Catalog. Vous ne pouvez pas inscrire de fichiers de données qui sauvegardent des tables Unity Catalog à l’aide de volumes. Databricks recommande d’utiliser des noms de tables au lieu de chemins d’accès de fichiers pour interagir avec les données structurées inscrites en tant que tables Unity Catalog. Consultez Comment fonctionnent les chemins pour les données gérées par Unity Catalog ?.

Si vous utilisez une méthode héritée pour configurer l’accès aux données dans le stockage d’objets cloud, Azure Databricks rétablit les autorisations des listes de contrôle d’accès de table héritées. Les utilisateurs souhaitant accéder aux données à l’aide d’URI cloud à partir d’entrepôts SQL ou de calcul configurés avec le mode d’accès partagé doivent disposer de l’autorisation ANY FILE. Consultez Contrôle d’accès aux tables du metastore Hive (hérité).

Azure Databricks fournit plusieurs API pour répertorier les fichiers dans le stockage d’objets cloud. La plupart des exemples de cet article se concentrent sur l’utilisation de volumes. Pour obtenir des exemples d’interaction avec des données sur le stockage d’objets configuré sans volumes, consultez Répertorier les fichiers avec des URI.

Explorer les volumes

Vous pouvez utiliser l’Explorateur de catalogues pour explorer les données dans les volumes et passer en revue les détails d’un volume. Vous ne pouvez voir que les volumes que vous êtes autorisé à accéder en lecture. Vous pouvez donc interroger toutes les données découvertes de cette façon.

Vous pouvez utiliser SQL pour explorer les volumes et leurs métadonnées. Pour répertorier les fichiers dans des volumes, vous pouvez utiliser SQL, la commande %fs magic ou les utilitaires Databricks. Lorsque vous interagissez avec des données dans des volumes, vous utilisez le chemin d’accès fourni par Unity Catalog, qui a toujours le format suivant :

/Volumes/catalog_name/schema_name/volume_name/path/to/data

Afficher des volumes

SQL

Exécutez la commande suivante pour afficher la liste des volumes dans un schéma donné.

SHOW VOLUMES IN catalog_name.schema_name;

Consultez SHOW VOLUMES.

Explorateur de catalogues

Pour afficher des volumes dans un schéma donné avec l’Explorateur de catalogues, procédez comme suit :

  1. Sélectionnez l’icône icône CatalogueCatalogue.
  2. Sélectionnez un catalogue.
  3. Sélectionnez un schéma.
  4. Cliquez sur Volumes pour développer tous les volumes dans le schéma.

Remarque

Si aucun volume n’est inscrit dans un schéma, l’option Volumes n’est pas affichée. Au lieu de cela, vous voyez une liste des tables disponibles.

Consulter les détails du volume

SQL

Exécutez la commande suivante pour décrire un volume.

DESCRIBE VOLUME volume_name

Consultez DESCRIBE VOLUME.

Explorateur de catalogues

Cliquez sur le nom du volume et sélectionnez l’onglet Détails pour passer en revue les détails du volume.

Afficher les fichiers dans les volumes

SQL

Exécutez la commande suivante pour répertorier les fichiers d’un volume.

LIST '/Volumes/catalog_name/schema_name/volume_name/'

Explorateur de catalogues

Cliquez sur le nom du volume et sélectionnez l’onglet Détails pour passer en revue les détails du volume.

%fs

Exécutez la commande suivante pour répertorier les fichiers d’un volume.

%fs ls /Volumes/catalog_name/schema_name/volume_name/

Utilitaires Databricks

Exécutez la commande suivante pour répertorier les fichiers d’un volume.

dbutils.fs.ls("/Volumes/catalog_name/schema_name/volume_name/")

Répertorier les fichiers avec des URI

Vous pouvez interroger le stockage d’objets cloud configuré avec des méthodes autres que des volumes à l’aide d’URI. Vous devez être connecté au calcul avec des privilèges d’accès à l’emplacement cloud. L’autorisation ANY FILE est requise sur les entrepôts SQL et le calcul configurés avec le mode d’accès partagé.

Remarque

L’accès URI au stockage d’objets configuré avec des volumes n’est pas pris en charge. Vous ne pouvez pas utiliser l’Explorateur de catalogues pour passer en revue le contenu du stockage d’objets non configuré avec des volumes.

Les exemples suivants incluent des exemples d’URI pour les données stockées avec Azure Data Lake Storage Gen2, S3 et GCS.

SQL

Exécutez la commande suivante pour répertorier les fichiers dans le stockage d’objets cloud.

-- ADLS 2
LIST 'abfss://container-name@storage-account-name.dfs.core.windows.net/path/to/data'

-- S3
LIST 's3://bucket-name/path/to/data'

-- GCS
LIST 'gs://bucket-name/path/to/data'

%fs

Exécutez la commande suivante pour répertorier les fichiers dans le stockage d’objets cloud.

# ADLS 2
%fs ls abfss://container-name@storage-account-name.dfs.core.windows.net/path/to/data

# S3
%fs ls s3://bucket-name/path/to/data

# GCS
%fs ls gs://bucket-name/path/to/data

Utilitaires Databricks

Exécutez la commande suivante pour répertorier les fichiers dans le stockage d’objets cloud.


# ADLS 2
dbutils.fs.ls("abfss://container-name@storage-account-name.dfs.core.windows.net/path/to/data")

# S3
dbutils.fs.ls("s3://bucket-name/path/to/data")

# GCS
dbutils.fs.ls("bucket-name/path/to/data")