Remarque
L’accès à cette page nécessite une autorisation. Vous pouvez essayer de vous connecter ou de modifier des répertoires.
L’accès à cette page nécessite une autorisation. Vous pouvez essayer de modifier des répertoires.
Cet article explique comment utiliser la COPY INTO commande pour charger des données à partir d’un conteneur Azure Data Lake Storage (ADLS) dans votre compte Azure dans une table dans Databricks SQL.
Les étapes décrites dans cet article supposent que votre administrateur a configuré un entrepôt SQL pour utiliser un principal de service Azure Databricks afin que vous puissiez accéder à vos fichiers sources dans ADLS. Si votre administrateur a configuré un emplacement externe Unity Catalog avec des informations d’identification de stockage, consultez Charger des données à l’aide de COPY INTO avec des volumes Unity Catalog ou des emplacements externes à la place. Si votre administrateur vous a donné des informations d’identification temporaires (jeton SAS d’objet blob), suivez les étapes de Charger des données à l'aide de COPY INTO avec des informations d’identification temporaires à la place.
Databricks recommande d’utiliser la commande COPY INTO pour le chargement de données, qu'il soit incrémentiel ou en bloc, avec Databricks SQL.
Note
COPY INTO fonctionne bien pour les sources de données qui contiennent des milliers de fichiers. Databricks vous recommande d’utiliser Auto Loader pour charger des millions de fichiers, ce qui n’est pas pris en charge dans Databricks SQL.
Requirements
Avant de charger des données dans Azure Databricks, vérifiez que vous disposez des éléments suivants :
- Accès aux données dans ADLS. Votre administrateur doit d’abord effectuer les étapes décrites dans Configurer l’accès aux données pour l’ingestion afin que votre entrepôt Databricks SQL puisse lire vos fichiers sources.
- Entrepôt Databricks SQL.
- L’autorisation Peut administrer sur l’entrepôt SQL.
- Chemin d’accès à vos données dans un conteneur ADLS.
- Bonne connaissance de l’interface utilisateur de Databricks SQL.
Étape 1 : Confirmer l’accès aux données dans le stockage cloud
Procédez comme suit pour vérifier que vous avez accès aux données justes dans le stockage d’objets cloud :
Dans la barre latérale, cliquez sur Créer > Requête.
Dans la barre de menus de l’éditeur SQL, sélectionnez un entrepôt SQL.
Dans l’éditeur SQL, collez le code suivant :
select * from csv.<path>Remplacez
<path>par le chemin d’accès du conteneur ADLS que vous avez reçu de votre administrateur. Par exemple,abfss://<container>@<storage-account>.dfs.core.windows.net/<folder>.Cliquez sur Exécuter.
Étape 2 : Créer une table
Cette étape explique comment créer une table dans votre espace de travail Azure Databricks pour contenir les données entrantes.
Dans l’éditeur SQL, collez le code suivant :
CREATE TABLE <catalog_name>.<schema_name>.<table_name> ( tpep_pickup_datetime TIMESTAMP, tpep_dropoff_datetime TIMESTAMP, trip_distance DOUBLE, fare_amount DOUBLE, pickup_zip INT, dropoff_zip INT );Cliquez sur Exécuter.
Étape 3 : Charger des données dans la table à partir du stockage cloud
Cette étape explique comment charger des données à partir d’un conteneur ADLS dans la table de votre espace de travail Azure Databricks.
Dans la barre latérale, cliquez sur Créer une requête >.
Dans la barre de menus de l’éditeur SQL, sélectionnez un entrepôt SQL et vérifiez que l’entrepôt SQL est en cours d’exécution.
Dans l’éditeur SQL, collez le code suivant. Dans ce code, remplacez :
-
<container>avec le nom de votre conteneur ADLS dans votre compte de stockage. -
<storage-account>avec le nom de votre compte de stockage ADLS. - Remplacez
<folder>par le nom du dossier qui contient vos données. -
<blob-sas-token>avec la valeur du jeton SAS Blob que vous avez reçu de votre administrateur.
COPY INTO <catalog-name>.<schema-name>.<table-name> FROM 'abfss://<container>@<storage-account>.dfs.core.windows.net/<folder>' FILEFORMAT = CSV FORMAT_OPTIONS ( 'header' = 'true', 'inferSchema' = 'true' ); SELECT * FROM <catalog-name>.<schema-name>.<table-name>;Note
FORMAT_OPTIONSprésente un écart deFILEFORMAT. Dans ce cas, l’optionheaderindique à Azure Databricks de traiter la première ligne du fichier CSV en tant qu’en-tête, et l’optioninferSchemaindique à Azure Databricks de déterminer automatiquement le type de données de chaque champ dans le fichier CSV.-
Cliquez sur Exécuter.
Note
Si vous cliquez à nouveau sur Run, aucune nouvelle donnée n’est chargée dans la table. Cela est dû au fait que la commande
COPY INTOtraite uniquement ce qu’elle considère comme de nouvelles données.
Nettoyer
Vous pouvez nettoyer les ressources associées de votre espace de travail si vous ne souhaitez plus les conserver.
Supprimer les tables
Dans la barre latérale, cliquez sur Créer > Requête.
Sélectionnez un entrepôt SQL et vérifiez que l’entrepôt SQL est en cours d’exécution.
Collez le code suivant :
DROP TABLE <catalog-name>.<schema-name>.<table-name>;Cliquez sur Exécuter.
Survolez l’onglet de cette requête, puis cliquez sur l’icône X.
Supprimer les requêtes dans l’éditeur SQL
- Dans la barre latérale, cliquez sur Éditeur SQL.
- Dans la barre de menus de l’éditeur SQL, pointez sur l’onglet de chaque requête que vous avez créée pour ce didacticiel, puis cliquez sur l’icône X .
Ressources supplémentaires
- L’article COPY INTO de référence