Notes
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.
Auto Loader traite de façon incrémentielle et efficace les nouveaux fichiers de données à mesure qu’ils arrivent dans le stockage cloud, sans aucune configuration supplémentaire.
Comment Auto Loader fonctionne-t-il ?
Auto Loader traite de façon incrémentielle et efficace les nouveaux fichiers de données à mesure qu’ils arrivent dans le stockage cloud. Il fournit une source de flux structuré appelée cloudFiles
. À partir du chemin d’accès du répertoire d’entrée sur le stockage de fichiers dans le cloud, la source cloudFiles
traite automatiquement les nouveaux fichiers à mesure qu’ils arrivent, avec la possibilité de traiter également les fichiers existants dans ce répertoire. Auto Loader prend en charge à la fois Python et SQL dans les pipelines déclaratifs Lakeflow.
Vous pouvez utiliser Auto Loader pour traiter des milliards de fichiers afin de migrer ou de renvoyer une table. Auto Loader effectue une mise à l’échelle pour prendre en charge l’ingestion en quasi-temps réel de millions de fichiers par heure.
Sources de chargeur automatique prises en charge
Le chargeur automatique peut charger des fichiers de données à partir des sources suivantes :
Amazon S3 (
s3://
)Azure Data Lake Storage (ADLS,
abfss://
)Google Cloud Storage (GCS,
gs://
)Stockage Blob Azure (
wasbs://
)Remarque
Le pilote Windows Azure Storage Blob (WASB) hérité est déconseillé. ABFS présente de nombreux avantages par rapport à WASB. Consultez la documentation Azure sur ABFS. Pour accéder à de la documentation sur l’utilisation du pilote WASB hérité, consultez Se connecter à Stockage Blob Azure avec WASB (hérité).
Système de fichiers Databricks (DBFS,
dbfs:/
).
Auto Loader peut ingérer les formats de fichiers JSON
, CSV
, XML
, PARQUET
, AVRO
, ORC
, TEXT
et BINARYFILE
.
Comment le chargeur automatique effectue-t-il le suivi de l’ingestion ?
À mesure que les fichiers sont découverts, leurs métadonnées sont conservées dans un magasin évolutif de paires clé-valeur (RocksDB) à l’emplacement du point de contrôle de votre pipeline Auto Loader. Ce magasin de paires clé-valeur garantit que les données sont traitées une seule fois.
En cas d’échec, Auto Loader peut reprendre là où il s’est arrêté grâce aux informations stockées dans l’emplacement du point de contrôle et continuer à fournir des garanties « une seule fois » lors de l’écriture des données dans Delta Lake. Vous n’avez pas besoin de maintenir ou de gérer un état vous-même pour obtenir la tolérance de panne ou la sémantique exactement une fois.
Ingestion incrémentielle à l'aide d'Auto Loader avec Lakeflow Declarative Pipelines
Databricks recommande le chargeur automatique dans Lakeflow Declarative Pipelines pour l’ingestion de données incrémentielles. Les pipelines déclaratifs Lakeflow étendent les fonctionnalités d’Apache Spark Structured Streaming et vous permettent d’écrire quelques lignes de Python déclaratif ou SQL pour déployer un pipeline de données de qualité de production avec :
- Mise à l’échelle automatique de l’infrastructure de calcul pour la réduction des coûts
- Contrôles de la qualité des données avec les attentes
- Gestion automatique de l’évolution du schéma
- Monitoring via des métriques dans le journal des événements
Vous n’avez pas besoin de fournir un emplacement de schéma ou de point de contrôle, car les pipelines déclaratifs Lakeflow gèrent automatiquement ces paramètres pour vos pipelines. Consultez Charger des données avec des pipelines Lakeflow déclaratifs.
Databricks recommande également Auto Loader chaque fois que vous utilisez Apache Spark Structured Streaming pour ingérer des données à partir du stockage d’objets cloud. Les API sont disponibles dans Python et Scala.
Bien démarrer avec Databricks Auto Loader
Consultez les articles suivants pour commencer à configurer l’ingestion de données incrémentielles à l’aide du chargeur automatique avec des pipelines déclaratifs Lakeflow :
- Tutoriel : Créer un pipeline ETL avec des pipelines déclaratifs Lakeflow
- Intégrer des données à partir d’Azure Data Lake Storage
Exemples : Modèles courants d’Auto Loader
Pour obtenir des exemples de modèles courants d’Auto Loader, consultez modèles courants de chargement de données.
Configurer les options d’Auto Loader
Vous pouvez régler Auto Loader en fonction du volume, de la variété et de la vélocité des données.
- Configuration de l’inférence et de l’évolution de schéma dans Auto Loader
- Configurer Auto Loader pour les charges de travail de production
Pour obtenir la liste complète des options Auto Loader, consultez :
Si vous rencontrez des performances inattendues, consultez la FAQ.
Configurer les modes de détection de fichiers de chargeur automatique
Le chargeur automatique prend en charge deux modes de détection de fichiers. Consultez l'article :
- Auto Loader flux en mode de listage de répertoires
- Configurer des flux de chargeur automatique en mode de notification de fichier
Avantages de Auto Loader sur l’utilisation de Structured Streaming directement sur des fichiers
Dans Apache Spark, vous pouvez lire des fichiers de manière incrémentielle en utilisant spark.readStream.format(fileFormat).load(directory)
. Auto Loader offre les avantages suivants par rapport à la source du fichier :
- Scalabilité : Auto Loader peut découvrir des milliards de fichiers de manière efficace. Les renvois peuvent être effectués de manière asynchrone pour éviter de gaspiller des ressources de calcul.
- Performances : le coût de la détection de fichiers avec Auto Loader se met à l’échelle du nombre de fichiers ingérés plutôt que du nombre de répertoires dans lesquels les fichiers peuvent atterrir. Consultez les flux Auto Loader avec le mode de liste de répertoires.
- Prise en charge de l’inférence et de l’évolution de schéma : Auto Loader peut détecter les dérives de schéma, vous avertir lorsque des modifications de schéma se produisent et récupérer les données qui auraient autrement été ignorées ou perdues. Consultez Comment fonctionne l’inférence de schéma Auto Loader ?.
- Coût : Auto Loader utilise des API cloud natives pour obtenir les listes des fichiers qui existent dans le stockage. En outre, le mode de notification de fichier du chargeur automatique peut aider à réduire les coûts de votre cloud en évitant complètement la liste des répertoires. Auto Loader peut configurer automatiquement des services de notification de fichiers sur le stockage pour rendre la détection de fichiers beaucoup moins chère.