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.
Important
Cette fonctionnalité est en version bêta. Les administrateurs d’espace de travail peuvent contrôler l’accès à cette fonctionnalité à partir de la page Aperçus . Consultez les aperçus Manage Azure Databricks.
:::note Conformité
Le connecteur Google Drive prend en charge l’utilisation dans les espaces de travail avec les paramètres de sécurité et de conformité améliorés activés .
:::
Le connecteur Google Drive standard dans Lakeflow Connect vous permet d’utiliser les fonctions Spark et SQL d'Azure Databricks (read_files, spark.read, COPY INTO et Auto Loader) pour créer des DataFrames Spark, des vues matérialisées et des tables de streaming directement à partir de fichiers sur Google Drive.
Avec cette approche, vous pouvez créer des pipelines personnalisés pour les cas d’utilisation courants de l’ingestion de fichiers :
- Ingestion de fichiers de streaming (non structurée) : ingestion de nombreux fichiers sources (par exemple, PDF, Google Docs et Google Slides) dans une table cible unique en tant que données binaires, idéale pour les pipelines RAG.
- Ingestion de fichiers de streaming (structurée) : fusion de nombreux fichiers sources (par exemple, fichiers CSV et JSON) dans une table cible unique et structurée.
- Ingestion de fichiers batch : ingestion d’un fichier spécifique unique (tel qu’une feuille Google) ou d’un lot de fichiers dans une table cible.
Ces interfaces sont prises en charge :
- Paquets d'Automatisation déclarative
- API Databricks
- Kits SDK Databricks
- Interface CLI de Databricks
Limites
- Le connecteur est uniquement API et ne prend pas en charge la création de pipelines dans l’interface utilisateur Azure Databricks.
- Vous pouvez utiliser l’option
pathGlobFilterpour filtrer les fichiers par nom (par exemple,pathGlobFilter => '*.csv'). Les formats Google intégrés (par exemple, Google Docs ou Google Sheets) ne peuvent pas être filtrés à l’aide de cette option. Le filtrage des chemins d’accès aux dossiers n’est pas non plus pris en charge. - Les formats non pris en charge incluent Google Forms, Google Sites, Google Jams et Google Vids. Le processus d’ingestion ignore les formats non pris en charge.
- Le paramètre
recursiveFileLookup=falsen’est pas pris en charge pour les lectures de lots Spark. L’utilisationrecursiveFileLookup=falsese comporte de la même façon querecursiveFileLookup=true.
Spécifications
Avant de commencer, vérifiez que vous disposez des éléments suivants :
- Un espace de travail avec catalogue Unity.
-
CREATE CONNECTIONprivilèges pour créer une connexion Google Drive ou le privilège approprié pour utiliser un compte existant en fonction du mode d’accès de votre cluster :- Mode d’accès dédié :
MANAGE CONNECTION. - Mode d’accès standard :
USE CONNECTION.
- Mode d’accès dédié :
- Databricks Runtime 17.3 ou version ultérieure.
- La fonctionnalité bêta du format de fichier Excel activée, si vous souhaitez ingérer des fichiers Google Sheets ou Excel. Voir Read Excel files.
- Un compte Google disposant des autorisations nécessaires pour créer un projet Google Cloud.
Configurer OAuth 2.0
Configurer un projet Google Cloud et activer l’API Google Drive
- Accédez à la console Google Cloud.
- Créez un projet. Vous pouvez être invité à configurer l’authentification à deux facteurs.
- Accédez à la bibliothèque d’API &services>.
- Recherchez « API Google Drive ».
- Sélectionnez l’API Google Drive.
- Sélectionnez Activer.
Configurer l’écran de consentement OAuth pour votre projet
- Sur l’écran d’accueil de la console Google Cloud, accédez à l’écran de consentement OAuth des API et services>. Un message indiquant « Google Auth Platform n’est pas encore configuré ».
- Sélectionnez Démarrer.
- Renseignez la section Informations sur l’application . Entrez n’importe quel nom pour le nom de l’application (par exemple,
Databricks connection). L’e-mail de support peut être n’importe quel e-mail de votre organisation. - Cliquez sur Suivant.
- Dans la section Audience , sélectionnez Externe, puis Sélectionnez Suivant.
- Renseignez la section Informations de contact , puis sélectionnez Suivant.
- Passez en revue la stratégie de données utilisateur des services d’API Google, puis sélectionnez Créer.
- Revenez à Google Auth Platform > Data Access.
- Sélectionnez Ajouter ou supprimer des étendues.
- Ajoutez l’étendue suivante dans la section Ajouter manuellement des étendues , sélectionnez Ajouter à la table, puis sélectionnez Mettre à jour :
https://www.googleapis.com/auth/drive.readonly - Cliquez sur Enregistrer.
Créer des informations d’identification client OAuth 2.0
- Sur l’écran d’accueil de la console Google Cloud, accédez aux API et informations d’identification des services>.
- Sélectionnez Créer des informations d'identification>ID client OAuth.
- Choisissez Application web et définissez un nom personnalisé.
- Dans les URI de redirection autorisés, sélectionnez Ajouter un URI.
- Ajoutez un URI de redirection à
<databricks-instance-url>/login/oauth/google.html, en remplaçant<databricks-instance-url>par l’URL de votre instance de Azure Databricks. Par exemple :https://instance-name.databricks.com/login/oauth/google.html - Cliquez sur Créer. Une boîte de dialogue contenant vos informations d’identification s’affiche.
- Enregistrez les valeurs suivantes. Vous pouvez également télécharger le fichier JSON du client OAuth, qui contient ces informations :
- ID client (format :
0123******-********************************.apps.googleusercontent.com) - Clé secrète client (format :
ABCD**-****************************)
- ID client (format :
Ajouter des utilisateurs de test à votre projet
- Accédez à Google Auth Platform > Audience.
- Sous Utilisateurs de test, sélectionnez Ajouter des utilisateurs.
- Ajoutez l’adresse e-mail du compte Google que vous utiliserez pour créer la connexion.
Créer une connexion
Dans l’espace de travail Azure Databricks, sélectionnez Catalog > Emplacements externes > Connexions > Créer une connexion.
Dans la page Informations de base de connexion de l’assistant Configurer la connexion, spécifiez un Nom de connexion unique.
Dans le menu déroulant Type de connexion , recherchez et sélectionnez Google Drive.
(Facultatif) Ajoutez un commentaire.
Cliquez sur Suivant.
Dans la page Authentification , entrez les éléments suivants :
-
Étendue OAuth :
https://www.googleapis.com/auth/drive.readonly - Clé secrète client : la clé secrète client issue de la création des informations d’identification du client OAuth 2.0.
- ID client : ID client à partir de créer des informations d’identification client OAuth 2.0.
-
Étendue OAuth :
Sélectionnez Se connecter avec Google et connectez-vous avec le compte Google à partir d’Ajouter des utilisateurs de test à votre projet.
Sélectionnez Continuer, puis Continuez à nouveau.
Une fois que vous êtes redirigé vers l'espace de travail Azure Databricks, sélectionnez Créer la connexion.
Ingérer des fichiers à partir de Google Drive
Ingérer des fichiers à partir de Google Drive à l’aide du connecteur et read_files (Databricks SQL), du chargeur automatique (.readStream avec cloudFiles), COPY INTOet spark.read. Vous devez fournir les valeurs suivantes :
- URL google drive comme chemin d’accès.
- Connexion au catalogue Unity en utilisant l’option de source de données
databricks.connection. - URL de la ressource Google Drive à laquelle vous souhaitez accéder. L’URL peut faire référence à un fichier spécifique, à un dossier ou à un lecteur entier. Par exemple:
https://docs.google.com/spreadsheets/d/12345/edit?random_query_params_herehttps://drive.google.com/drive/u/0/folders/12345https://docs.google.com/document/d/12345/edithttps://drive.google.com/file/d/1kiXnHmU4Y8X66ijULky5EPDNCGtT14Ps/view?usp=drive_linkhttps://drive.google.com/drive/https://drive.google.com/drive/my-drivehttps://drive.google.com/
Diffuser en continu des fichiers Google Drive à l’aide du chargeur automatique
Le chargeur automatique est le moyen le plus efficace d’ingérer de manière incrémentielle des fichiers structurés à partir de Google Drive. Il détecte automatiquement les nouveaux fichiers et les traite à mesure qu’ils arrivent. Il peut également ingérer des fichiers structurés et semi-structurés tels que CSV et JSON avec l’inférence et l’évolution automatiques du schéma. Pour plus d’informations sur l’utilisation du chargeur automatique, consultez Modèles de chargement de données courants.
# Incrementally ingest new PDF files
df = (spark.readStream.format("cloudFiles")
.option("cloudFiles.format", "binaryFile")
.option("databricks.connection", "my_gdrive_conn")
.option("cloudFiles.schemaLocation", <path to a schema location>)
.option("pathGlobFilter", "*.pdf")
.load("https://drive.google.com/drive/folders/1a2b3c4d...")
.select("*", "_metadata")
)
# Incrementally ingest CSV files with automatic schema inference and evolution
df = (spark.readStream.format("cloudFiles")
.option("cloudFiles.format", "csv")
.option("databricks.connection", "my_gdrive_conn")
.option("pathGlobFilter", "*.csv")
.option("inferColumnTypes", True)
.option("header", True)
.load("https://drive.google.com/drive/folders/1a2b3c4d...")
)
Lire des fichiers Google Drive à l’aide de la lecture par lots Spark
L’exemple suivant montre comment ingérer des fichiers Google Drive dans Python à l’aide de la fonction spark.read. Pour obtenir la liste des formats de fichiers pris en charge et des options de lecteur Spark, consultez les options de source de fichiers génériques dans la documentation Apache Spark.
Le paramètre recursiveFileLookup=false n’est pas pris en charge pour les lectures de lots Spark. L’utilisation recursiveFileLookup=false se comporte de la même façon que recursiveFileLookup=true.
# Read unstructured data as binary files
df = (spark.read
.format("binaryFile")
.option("databricks.connection", "my_gdrive_conn")
.option("recursiveFileLookup", True)
.option("pathGlobFilter", "*.pdf")
.load("https://drive.google.com/drive/folders/1a2b3c4d..."))
# Read a batch of CSV files, infer the schema, and load the data into a DataFrame
df = (spark.read
.format("csv")
.option("databricks.connection", "my_gdrive_conn")
.option("pathGlobFilter", "*.csv")
.option("recursiveFileLookup", True)
.option("inferSchema", True)
.option("header", True)
.load("https://drive.google.com/drive/folders/1a2b3c4d..."))
Lire un seul fichier Google Drive structuré
L’exemple suivant lit un seul onglet d’une feuille Google et le charge dans un DataFrame. Il illustre quelques options d’analyse courantes.
Pour voir la liste complète des options d'analyse syntaxique prises en charge pour les fichiers Excel et Google Sheets, consultez Lire les fichiers Excel. Pour obtenir la liste complète de tous les autres formats de fichiers pris en charge et options de lecteur Spark, consultez les options de source de fichier générique dans la documentation Apache Spark.
df = (spark.read
.format("excel") # use 'excel' for Google Sheets
.option("databricks.connection", "my_gdrive_conn")
.option("headerRows", 1) # optional
.option("inferColumns", True) # optional
.option("dataAddress", "Sheet1!A1:Z10") # optional
.load("https://docs.google.com/spreadsheets/d/9k8j7i6f..."))
Lire des fichiers Google Drive à l’aide de Spark SQL
L'exemple suivant montre comment ingérer des fichiers depuis Google Drive dans SQL à l’aide de la fonction table-valorisée read_files. Pour plus d’informations sur read_files l’utilisation, consultez read_files la fonction valeur de table.
-- Read pdf files
CREATE TABLE my_table AS
SELECT * FROM read_files(
"https://drive.google.com/drive/folders/1a2b3c4d...",
`databricks.connection` => "my_gdrive_conn",
format => "binaryFile",
pathGlobFilter => "*.pdf", -- optional. Example: only ingest PDFs
schemaEvolutionMode => "none"
);
-- Read a Google Sheet and range
CREATE TABLE my_sheet_table AS
SELECT * FROM read_files(
"https://docs.google.com/spreadsheets/d/9k8j7i6f...",
`databricks.connection` => "my_gdrive_conn",
format => "excel",
headerRows => 1, -- optional
dataAddress => "Sheet1!A2:D10", -- optional
schemaEvolutionMode => "none"
);
Ingérer des fichiers Google Drive à l’aide de pipelines déclaratifs Spark Lakeflow
Note
Le connecteur Google Drive nécessite Databricks Runtime 17.3 ou version ultérieure. Pour utiliser le connecteur, définissez "CHANNEL" = "PREVIEW" dans les paramètres de votre pipeline. Pour plus d’informations sur les aperçus, consultez Référence des propriétés de pipeline.
Cet exemple montre comment lire des fichiers Google Drive à l’aide du chargeur automatique dans les pipelines déclaratifs Spark Lakeflow. Pour plus d’informations, consultez Pipelines déclaratifs Spark Lakeflow
SQL
-- Incrementally ingest new PDF files
CREATE OR REFRESH STREAMING TABLE gdrive_pdf_table
AS SELECT * FROM STREAM read_files(
"https://drive.google.com/drive/folders/1a2b3c4d...",
format => "binaryFile",
`databricks.connection` => "my_gdrive_conn",
pathGlobFilter => "*.pdf");
-- Incrementally ingest CSV files with automatic schema inference and evolution
CREATE OR REFRESH STREAMING TABLE gdrive_csv_table
AS SELECT * FROM STREAM read_files(
"https://drive.google.com/drive/folders/1a2b3c4d...",
format => "csv",
`databricks.connection` => "my_gdrive_conn",
pathGlobFilter => "*.csv",
"header", "true");
-- Read a specific Excel file from Google Drive in a materialized view
CREATE OR REFRESH MATERIALIZED VIEW gdrive_excel_table
AS SELECT * FROM read_files(
"https://docs.google.com/spreadsheets/d/9k8j7i6f...",
`databricks.connection` => "my_gdrive_conn",
format => "excel",
headerRows => 1, -- optional
dataAddress => "Sheet1!A2:D10", -- optional
`cloudFiles.schemaEvolutionMode` => "none"
);
Python
from pyspark import pipelines as dp
# Incrementally ingest new PDF files
@dp.table
def gdrive_pdf_table():
return (spark.readStream.format("cloudFiles")
.option("cloudFiles.format", "binaryFile")
.option("databricks.connection", "my_gdrive_conn")
.option("pathGlobFilter", "*.pdf")
.load("https://drive.google.com/drive/folders/1a2b3c4d...")
)
# Incrementally ingest CSV files with automatic schema inference and evolution
@dp.table
def gdrive_csv_table():
return (spark.readStream.format("cloudFiles")
.option("cloudFiles.format", "csv")
.option("databricks.connection", "my_gdrive_conn")
.option("pathGlobFilter", "*.csv")
.option("inferColumnTypes", True)
.option("header", True)
.load("https://drive.google.com/drive/folders/1a2b3c4d...")
)
# Read a specific Excel file from Google Drive in a materialized view
@dp.table
def gdrive_excel_table():
return (spark.read.format("excel")
.option("databricks.connection", "my_gdrive_conn")
.option("headerRows", 1) # optional
.option("inferColumnTypes", True) # optional
.option("dataAddress", "Sheet1!A1:M20") # optional
.load("https://docs.google.com/spreadsheets/d/9k8j7i6f..."))
Analyser des fichiers non structurés avec ai_parse_document
Lorsque vous ingérez des fichiers non structurés à partir de Google Drive (par exemple, des fichiers PDF, des documents Word ou des fichiers PowerPoint) à l’aide du connecteur Google Drive standard avec binaryFile format, le contenu du fichier est stocké sous forme de données binaires brutes. Pour préparer ces fichiers pour les charges de travail IA, telles que RAG, la recherche, la classification ou la compréhension des documents, vous pouvez analyser le contenu binaire en sortie structurée et interrogeable à l’aide ai_parse_documentde .
L’exemple suivant montre comment analyser des documents non structurés stockés dans une table Delta bronze nommée documents, en ajoutant une nouvelle colonne avec du contenu analysé :
CREATE TABLE documents AS
SELECT *, _metadata FROM read_files(
"https://drive.google.com/drive/folders/1a2b3c4d...",
`databricks.connection` => "my_gdrive_conn",
format => "binaryFile",
pathGlobFilter => "*.{pdf,jpeg}"
);
SELECT *, ai_parse_document(content) AS parsed_content
FROM documents;
La parsed_content colonne contient du texte extrait, des tables, des informations de disposition et des métadonnées qui peuvent être utilisées directement pour les pipelines IA en aval.
Analyse incrémentielle avec les pipelines déclaratifs de Lakeflow Spark
Vous pouvez également utiliser ai_parse_document dans les pipelines déclaratifs Spark Lakeflow pour activer l’analyse incrémentielle. À mesure que les nouveaux fichiers arrivent de Google Drive, ils sont automatiquement analysés lorsque votre flux de travaux se met à jour.
Par exemple, vous pouvez définir une vue matérialisée qui analyse en continu les documents nouvellement ingérés :
CREATE OR REFRESH STREAMING TABLE documents
AS SELECT *, "_metadata" FROM STREAM read_files(
"https://drive.google.com/drive/folders/1a2b3c4d...",
format => "binaryFile",
`databricks.connection` => "my_gdrive_conn",
pathGlobFilter => "*.{pdf,jpeg}");
CREATE OR REFRESH MATERIALIZED VIEW documents_parsed
AS
SELECT *, ai_parse_document(content) AS parsed_content
FROM documents;
Cette approche garantit que :
- Les fichiers Google Drive récemment ingérés sont analysés automatiquement chaque fois que l’affichage matérialisé est actualisé
- Les sorties analysées restent synchronisées avec les données entrantes
- Les pipelines IA en aval fonctionnent toujours sur des représentations de documents à jour
Pour connaître les formats pris en charge et les options avancées, consultez ai_parse_document la fonction.
Comment les formats Google intégrés sont gérés
Vous n’avez pas besoin d’exporter manuellement vos fichiers Google intégrés (Docs, Sheets). Le connecteur les exporte automatiquement dans un format ouvert pendant l’ingestion.
| Format Google | Exporté comme (valeur par défaut) |
|---|---|
| Google Docs |
application/vnd.openxmlformats-officedocument.wordprocessingml.document (DOCX) |
| Feuilles Google |
application/vnd.openxmlformats-officedocument.spreadsheetml.sheet (XLSX) |
| Google Slides |
application/vnd.openxmlformats-officedocument.presentationml.presentation (PPTX) |
| Dessins Google |
application/pdf (PDF) |
Configuration du format d’exportation Google Drive
Vous pouvez configurer la façon dont les fichiers natifs Google Drive sont exportés en définissant des configurations Spark à l’aide de spark.conf.set(). Ces configurations déterminent le type utilisé lors de l’exportation MIME de Google Docs, Feuilles, Diapositives et Dessins.
Clés de configuration :
-
fs.gdrive.format.document.export: Format d’exportation Google Docs. -
fs.gdrive.format.spreadsheet.export: Format d’exportation Google Sheets. -
fs.gdrive.format.presentation.export: Format d’exportation Google Slides. -
fs.gdrive.format.drawing.export: Format d’exportation des dessins Google.
Pour obtenir la liste complète des formats d’exportation pris en charge, consultez Exporter des types MIME pour les documents Google Workspace dans la documentation Google Workspace.
L’exemple suivant exporte un fichier Google Docs en tant que TXT.
spark.conf.set("fs.gdrive.format.document.export", "text/plain")
df = spark.read.text("https://docs.google.com/document/d/1a2b3c4d...")
L’exemple suivant exporte un fichier Google Sheets au format CSV.
spark.conf.set("fs.gdrive.format.spreadsheet.export", "text/csv")
df = spark.read.option("header", "true").csv("https://docs.google.com/spreadsheets/d/1a2b3c4d...")
Schemas
format de fichier binaire
Lorsque vous utilisez format => 'binaryFile', la table résultante a le schéma suivant :
-
path(chaîne) : URL complète du fichier. -
modificationTime(horodatage) : heure de la dernière modification du fichier. -
length(long) : taille du fichier en octets. -
content(binaire) : contenu binaire brut du fichier.
colonne _metadata
Vous pouvez obtenir des informations de métadonnées pour les fichiers d’entrée avec la _metadata colonne telle que file_name, , file_pathfile_size, et file_modification_time. La _metadata colonne est une colonne masquée et est disponible pour tous les formats de fichier d’entrée. Pour inclure la _metadata colonne dans le DataFrame retourné, vous devez la sélectionner explicitement dans la requête de lecture où vous spécifiez la source. Pour plus d’informations, consultez Colonne de métadonnées de fichier.
Pour les fichiers natifs Google Drive (tels que Google Docs, Google Sheets et Google Slides), le file_size champ fait référence à la taille du fichier stocké sur Google Drive, et non à la taille du fichier au format exporté (par exemple, DOCX, XLSX ou PPTX).
Exemple de sélection _metadata:
SELECT *, _metadata FROM read_files(
"https://drive.google.com/",
`databricks.connection` => "my_connection",
format => "binaryFile"
);
Colonne de métadonnées Google Drive
Important
Cette fonctionnalité est en préversion privée. Pour l’essayer, contactez votre Azure Databricks contact.
La _gdrive_metadata colonne est une colonne de métadonnées masquée qui permet d’accéder aux propriétés spécifiques à Google Drive des fichiers ingérés, provenant de la ressource Google Drivefiles. Il nécessite Databricks Runtime 18.1 ou version ultérieure et est disponible pour tous les formats de fichier lors de la lecture à partir de Google Drive. Pour inclure la _gdrive_metadata colonne dans le DataFrame retourné, vous devez la sélectionner explicitement dans la requête de lecture.
Si la source de données contient une colonne nommée _gdrive_metadata, la colonne de métadonnées Google Drive est renommée __gdrive_metadata en (avec un trait de soulignement de début supplémentaire) pour dédupliquer. Des traits de soulignement supplémentaires sont ajoutés jusqu’à ce que le nom soit unique.
Les métadonnées de fichier courantes telles que le chemin d’accès ou la taille du fichier peuvent être interrogées à l’aide de la _metadata colonne. Pour plus d’informations, consultez Colonne de métadonnées de fichier.
Schéma
La colonne _gdrive_metadata est une STRUCT contenant les champs suivants. Tous les champs sont nullables.
| Nom | Type | Description | Exemple | Version minimale de Databricks Runtime |
|---|---|---|---|---|
| id | STRING |
ID de fichier Google Drive. | 1pCzwOApmvUJCtXtav265-i4E7mYf2feF |
18.1 |
| drive_id | STRING |
ID du lecteur partagé qui contient le fichier.
null pour les fichiers dans le Mon Drive d’un utilisateur. |
0ABpL6n51HPGXUk9PVA |
18.1 |
| parent_id | STRING |
ID du dossier parent du fichier. Les fichiers Google Drive peuvent avoir plusieurs parents ; cela retourne le premier. | 1a2b3c4d5e6f7g8h9i0j |
18.1 |
| web_url | STRING |
URL du navigateur du fichier sur Google Drive. | https://drive.google.com/file/d/1pCzwOApmvUJCtXtav265-i4E7mYf2feF/view |
18.1 |
| mime_type | STRING |
Type MIME du fichier. Pour les fichiers Google Workspace, il s’agit du type Google natif (par exemple, application/vnd.google-apps.document), et non du type exporté. |
text/csv |
18.1 |
| md5_checksum | STRING |
Somme de contrôle MD5 du contenu du fichier. Indiqué uniquement pour les fichiers binaires ; null pour les fichiers Google Workspace. |
06ffb3e392fc5459e5322aad81b4f78b |
18.1 |
| version | STRING |
Numéro de version monotonique croissant pour le fichier. | 12 |
18.1 |
| horodatage_créé | TIMESTAMP |
Heure de création du fichier. | 2025-12-01 10:16:19 |
18.1 |
| modifié_en_dernière_par_courriel | STRING |
E-mail de l’utilisateur qui a modifié le fichier pour la dernière fois. | alice@example.com |
18.1 |
| dernière_modification_par_nom | STRING |
Nom complet de l’utilisateur qui a modifié le fichier pour la dernière fois. | Alice Example |
18.1 |
| partagé | BOOLEAN |
Indique si le fichier a été partagé avec des utilisateurs autres que le propriétaire. | true |
18.1 |
| propriétés | VARIANT |
Propriétés publiques personnalisées définies sur le fichier. Consultez Propriétés dans l’API Drive. | {"department":"finance"} |
18.1 |
| additional_metadata | VARIANT |
Tous les autres champs de ressource de fichier retournés par l’API Drive, mais non extraits ci-dessus. | {"capabilities":{"canEdit":true},...} |
18.1 |
Note
Les champs properties et additional_metadata sont retournés en tant que VARIANT. Voir VARIANT type.
Exemples
Les exemples suivants montrent comment inclure la _gdrive_metadata colonne dans une requête de lecture, sélectionner des champs spécifiques dans la colonne et extraire des valeurs à partir de VARIANT champs.
Python
df = (spark.read
.format("binaryFile")
.option("databricks.connection", "my_gdrive_conn")
.load("https://drive.google.com/drive/folders/1a2b3c4d...")
.select("*", "_metadata", "_gdrive_metadata"))
SQL
SELECT *, _gdrive_metadata
FROM read_files(
"https://drive.google.com/drive/folders/1a2b3c4d...",
`databricks.connection` => "my_gdrive_conn",
format => "binaryFile"
);
Sélectionnez des champs spécifiques dans le _gdrive_metadata struct :
df = (spark.read
.format("binaryFile")
.option("databricks.connection", "my_gdrive_conn")
.load("https://drive.google.com/drive/folders/1a2b3c4d...")
.select("_gdrive_metadata.id", "_gdrive_metadata.md5_checksum"))
Extrayez des valeurs des champs properties ou additional_metadataVARIANT à l’aide de l’opérateur de transtypage ::.
SELECT
*,
_gdrive_metadata.properties:department::STRING AS department
FROM read_files(
"https://drive.google.com/drive/folders/1a2b3c4d...",
`databricks.connection` => "my_gdrive_conn",
format => "binaryFile"
);
Questions fréquentes (FAQ)
J’ai un dossier de plusieurs fichiers structurés (par exemple, plusieurs Google Sheets). Comment charger chaque feuille ou fichier en tant que propre table Delta ?
Vous devez créer une requête d’ingestion pour chaque fichier à ingérer dans sa propre table Delta.
Mes fichiers nécessitent une analyse personnalisée. Comment fournir ces paramètres d’analyse pour vérifier que mes fichiers sont lus correctement ?
Le connecteur prend en charge toutes les options de format de fichier disponibles dans le chargeur automatique, COPY INTOet Spark. Pour plus d’informations, consultez les rubriques suivantes :
Les fichiers dans les sous-dossiers sont-ils ingérés de manière récursive ?
Lorsque vous utilisez les API du chargeur automatique (spark.readStream et read_files), tous les sous-dossiers sont détectés et ingérés de manière récursive. Cela est également vrai pour le traitement par lots spark.read, où les fichiers du chemin d’accès du dossier fourni sont toujours lus de manière récursive.
Ma feuille Google a de nombreuses irrégularités et nécessite une analyse et une extraction spécifiques de plages de cellules (par exemple, plusieurs tableaux par feuille). Le schéma ne peut pas être déduit automatiquement. Comment gérer cela ?
Vous pouvez utiliser les options d'analyse de format de fichier Excel pour analyser votre fichier de feuille Google au format souhaité. Voir Read Excel files.
Vous pouvez également désactiver l’inférence de schéma sur le chargeur automatique, PySpark ou read_files. La table résultante a des noms de colonnes par défaut, tous les types de données sont convertis en chaîne et la table peut être éparse. Vous pouvez ensuite effectuer toutes les transformations nécessaires en aval.
Étapes suivantes
- Explorer les modèles de chargement de données courants
- Vérifier
ai_parse_documentla fonction