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.
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 Structured Streaming 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. Le chargeur automatique prend en charge les pipelines déclaratifs Python et SQL dans Lakeflow Spark.
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://)Note
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 ni de gérer vous-même un état quelconque pour obtenir la tolérance aux pannes ou la sémantique « une seule fois ».
Ingestion incrémentielle à l’aide du chargeur automatique avec des pipelines déclaratifs Spark Lakeflow
Databricks recommande l'utilisation d'Auto Loader pour les pipelines déclaratifs Spark Lakeflow pour l’ingestion de données incrémentielles. Lakeflow Spark Declarative Pipelines étend les fonctionnalités d’Apache Spark Structured Streaming et vous permet 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 réduire les 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 schéma ou un emplacement de point de contrôle, car les pipelines déclaratifs Spark Lakeflow gèrent automatiquement ces paramètres pour vos pipelines. Consultez Charger des données dans des pipelines.
Databricks recommande également le chargeur automatique 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 le chargeur automatique de Databricks
Consultez les articles suivants pour commencer à configurer l’ingestion de données incrémentielles à l’aide du chargeur automatique avec des pipelines déclaratifs Spark Lakeflow :
- Tutoriel : Créer un pipeline ETL avec des pipelines déclaratifs Spark Lakeflow
- Intégrer des données à partir d’Azure Data Lake Storage
Exemples : Modèles courants de chargeur automatique
Pour obtenir des exemples de modèles courants du chargeur automatique, 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 le chargeur automatique
- Configurer le chargeur automatique 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. See:
- Flux du chargeur automatique 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.