Partager via


Recommandations pour les fichiers dans les volumes et les fichiers d’espace de travail

Lorsque vous chargez ou enregistrez des données ou des fichiers dans Azure Databricks, vous pouvez choisir de stocker ces fichiers à l’aide de volumes Unity Catalog ou de fichiers d’espace de travail. Cet article contient des recommandations et des exigences relatives à l’utilisation de ces emplacements. Pour plus d’informations sur les volumes et les fichiers d’espace de travail, consultez les articles Que sont les volumes Unity Catalog ? et Qu’est-ce que les fichiers d’espace de travail ?.

Databricks recommande d’utiliser des volumes Unity Catalog pour stocker des données, des bibliothèques et des artefacts de génération. Stockez des notebooks, des requêtes SQL et des fichiers de code en tant que fichiers d’espace de travail. Vous pouvez configurer des répertoires de fichiers d’espace de travail en tant que dossiers Git à synchroniser avec des référentiels Git distants. Consultez Intégration de Git aux dossiers Git Databricks. Les petits fichiers de données utilisés pour les scénarios de test peuvent également être stockés en tant que fichiers d’espace de travail.

Les tableaux ci-dessous fournissent des recommandations spécifiques pour les fichiers, en fonction de votre type de fichier ou de vos besoins en fonctionnalités.

Important

Le système de fichiers Databricks (DBFS) est également disponible pour le stockage de fichiers, mais cela n’est pas recommandé, car tous les utilisateurs de l’espace de travail ont accès aux fichiers dans DBFS. Voir DBFS.

Types de fichier

Le tableau suivant fournit des recommandations de stockage pour les types de fichiers. Databricks prend en charge de nombreux formats de fichiers au-delà des exemples fournis dans ce tableau.

Type de fichier Recommandation
Objets Databricks, tels que des notebooks et des requêtes Stocker en tant que fichiers d’espace de travail
Fichiers de données structurés, tels que les fichiers Parquet et ORC Stocker dans des volumes Unity Catalog
Fichiers de données semi-structurés, tels que des fichiers texte (.csv, .txt) et des fichiers JSON (.json) Stocker dans des volumes Unity Catalog
Fichiers de données non structurés, tels que des fichiers image (.png, .svg), des fichiers audio (.mp3) et des fichiers de documents (.pdf, .docx) Stocker dans des volumes Unity Catalog
Fichiers de données brutes utilisés pour l’exploration de données adhoc ou précoce Stocker dans des volumes Unity Catalog
Données opérationnelles, telles que les fichiers journaux Stocker dans des volumes Unity Catalog
Fichiers d’archive volumineux, tels que les fichiers ZIP (.zip) Stocker dans des volumes Unity Catalog
Fichiers de code source, tels que les fichiers Python (.py), les fichiers Java (.java) et les fichiers Scala (.scala) Stocker en tant que fichiers d’espace de travail, le cas échéant, avec d’autres objets connexes, tels que des notebooks et des requêtes.

Databricks recommande de gérer ces fichiers dans un dossier Git pour le contrôle de version et le suivi des modifications de ces fichiers.
Bibliothèques et artefacts de build, tels que des roues Python (.whl) et des fichiers JAR (.jar) Stocker dans des volumes Unity Catalog
Fichiers de configuration Stocker les fichiers de configuration nécessaires dans les espaces de travail dans les volumes Unity Catalog, mais en tant que fichiers d’espace de travail s’ils sont des fichiers projet dans un dossier Git.

Comparaison des fonctionnalités

Le tableau suivant compare les offres de fonctionnalités des fichiers d’espace de travail et des volumes Unity Catalog.

Fonctionnalité Fichiers d’espace de travail Des volumes Unity Catalog
Accès aux fichiers Les fichiers d’espace de travail sont accessibles entre eux uniquement dans le même espace de travail. Les fichiers sont globalement accessibles dans les espaces de travail.
Accès programmatique Les fichiers sont accessibles à l’aide de :

* L’API Spark
* FUSE
* dbutils
* REST API
* SDK Databricks
* Interface CLI Databricks
Les fichiers sont accessibles à l’aide de :

* L’API Spark
* FUSE
* dbutils
* REST API
* SDK Databricks
* Connecteur SQL Databricks
* Interface CLI Databricks
* Le fournisseur Terraform Databricks
Packs de ressources Databricks Par défaut, tous les fichiers d’un bundle, qui incluent des bibliothèques et des objets Databricks tels que des notebooks et des requêtes, sont déployés en toute sécurité en tant que fichiers d’espace de travail. Les autorisations sont définies dans la configuration du bundle. Les bundles peuvent être personnalisés pour inclure des bibliothèques déjà dans des volumes lorsque les bibliothèques dépassent la limite de taille des fichiers d’espace de travail. Consultez Dépendances de bibliothèque de packs de ressources Databricks.
Niveau d’autorisation de fichier Les autorisations sont au niveau du dossier Git si le fichier se trouve dans un dossier Git, sinon les autorisations sont définies au niveau du fichier. Les autorisations sont au niveau du volume.
Gestion des autorisations Les autorisations sont gérées par les listes de contrôle d’accès (ACL) de l’espace de travail et sont limitées à l’espace de travail conteneur. Les métadonnées et les autorisations sont gérées par Unity Catalog. Ces autorisations s’appliquent à tous les espaces de travail qui ont accès au catalogue.
Montage de stockage externe Ne prend pas en charge le montage du stockage externe Fournit l’option permettant de pointer vers des jeux de données préexistants sur le stockage externe en créant un volume externe. Consultez Présentation des volumes Unity Catalog.
Prise en charge des fonctions UDF Non pris en charge L’écriture à partir de fonctions définies par l’utilisateur (UDF) est prise en charge à l’aide de volumes FUSE
Taille du fichier Stockez des fichiers plus petits inférieurs à 500 Mo, tels que les fichiers de code source (.py, .md, .yml) nécessaires au même endroit que les notebooks. Stockez des fichiers de données très volumineux aux limites déterminées par les fournisseurs de services cloud.
Chargement et téléchargement Prise en charge du chargement et du téléchargement jusqu’à 10 Mo. Prise en charge du chargement et du téléchargement jusqu’à 5 Go.
Prise en charge de la création de tables Les tables ne peuvent pas être créées avec des fichiers d’espace de travail comme l’emplacement. Les tables peuvent être créées à partir de fichiers d’un volume en exécutant COPY INTO, le chargeur automatique ou d’autres options décrites dans Réception de données dans un lac de données Databricks.
Structure de répertoires et chemins d’accès aux fichiers Les fichiers sont organisés dans des répertoires imbriqués, chacun avec son propre modèle d’autorisation :

* Répertoires de base utilisateur, un pour chaque utilisateur et principal de service dans l’espace de travail
* Dossiers Git
Partagé*
Les fichiers sont organisés dans des répertoires imbriqués à l’intérieur d’un volume

Voir Comment accéder aux données dans Unity Catalog ?.
Historique des fichiers Utilisez le dossier Git dans les espaces de travail pour suivre les modifications de fichier. Les journaux d’audit sont disponibles.