Wat is Automatisch laden?

Automatische laadprogramma's verwerken nieuwe gegevensbestanden stapsgewijs en efficiënt wanneer ze in de cloudopslag aankomen zonder extra instellingen.

Hoe werkt het automatisch laden?

Auto Loader verwerkt stapsgewijs en efficiënt nieuwe gegevensbestanden wanneer ze binnenkomen in de cloudopslag. Auto Loader kan gegevensbestanden laden uit AWS S3 (s3://), Azure Data Lake Storage Gen2 (ADLS Gen2, abfss://Google Cloud Storage (GCS, gs://Azure Blob Storage),wasbs:// ADLS Gen1 (adl://) en Databricks File System (DBFS, dbfs:/). Automatische laadprogramma's kunnen bestandsindelingen opnemenJSON, , XMLCSV, PARQUET, AVRO, ORC, en TEXTBINARYFILE bestandsindelingen.

Notitie

Auto Loader biedt een Structured Streaming-bron met de naam cloudFiles. Gezien een pad naar de invoermap in de opslag van cloudbestanden, verwerkt de cloudFiles bron automatisch nieuwe bestanden wanneer ze binnenkomen, met de optie om ook bestaande bestanden in die map te verwerken. Auto Loader biedt ondersteuning voor zowel Python als SQL in Delta Live Tables.

U kunt automatisch laden gebruiken om miljarden bestanden te verwerken om een tabel te migreren of te vullen. Automatische laadprogramma's worden geschaald ter ondersteuning van bijna realtime opname van miljoenen bestanden per uur.

Hoe wordt de opnamevoortgang van het autolader bijgehouden?

Wanneer bestanden worden gedetecteerd, worden de metagegevens bewaard in een schaalbaar sleutel-waardearchief (RocksDB) op de controlepuntlocatie van uw Auto Loader-pijplijn. Dit sleutel-waardearchief zorgt ervoor dat gegevens precies één keer worden verwerkt.

In het geval van storingen kan automatisch laadprogramma worden hervat vanaf waar het is gebleven door informatie die is opgeslagen op de controlepuntlocatie en exact eenmaal garanties blijven bieden bij het schrijven van gegevens in Delta Lake. U hoeft zelf geen status te onderhouden of te beheren om fouttolerantie of exact eenmaal semantiek te bereiken.

Incrementele opname met behulp van automatisch laden met Delta Live Tables

Databricks raadt Automatisch laden aan in Delta Live Tables voor incrementele gegevensopname. Delta Live Tables breidt de functionaliteit uit in Apache Spark Structured Streaming en stelt u in staat om slechts een paar regels declaratieve Python of SQL te schrijven om een gegevenspijplijn van productiekwaliteit te implementeren met:

U hoeft geen schema- of controlepuntlocatie op te geven, omdat deze instellingen automatisch worden beheerd voor uw pijplijnen. Zie Gegevens laden met Delta Live Tables.

Databricks raadt ook automatisch laden aan wanneer u Apache Spark Structured Streaming gebruikt om gegevens op te nemen uit de opslag van cloudobjecten. API's zijn beschikbaar in Python en Scala.

Aan de slag met Databricks Auto Loader

Zie de volgende artikelen om aan de slag te gaan met het configureren van incrementele gegevensopname met behulp van automatisch laden met Delta Live Tables:

Voorbeelden: Veelvoorkomende patronen voor automatisch laden

Zie Algemene patronen voor het laden van gegevens voor voorbeelden van veelvoorkomende patronen voor automatisch laden.

Opties voor automatisch laden configureren

U kunt autolaadprogramma's afstemmen op basis van gegevensvolume, variatie en snelheid.

Zie voor een volledige lijst met opties voor automatisch laden:

Als u onverwachte prestaties ondervindt, raadpleegt u de veelgestelde vragen.

Detectiemodi voor automatisch laden van bestanden configureren

Auto Loader ondersteunt twee bestandsdetectiemodi. Zie:

Voordelen van automatisch laden met behulp van Gestructureerd streamen rechtstreeks op bestanden

In Apache Spark kunt u bestanden stapsgewijs lezen met behulp van spark.readStream.format(fileFormat).load(directory). Auto Loader biedt de volgende voordelen ten opzichte van de bestandsbron:

  • Schaalbaarheid: Auto Loader kan miljarden bestanden efficiënt detecteren. Backfills kunnen asynchroon worden uitgevoerd om te voorkomen dat rekenresources worden verspild.
  • Prestaties: de kosten voor het detecteren van bestanden met automatische laadprogramma's worden geschaald met het aantal bestanden dat wordt opgenomen in plaats van het aantal mappen waarin de bestanden kunnen terechtkomen. Zie Wat is de lijstmodus voor automatisch laden?.
  • Ondersteuning voor schemadeductie en evolutie: Auto Loader kan schemadriften detecteren, u op de hoogte stellen wanneer schemawijzigingen plaatsvinden en gegevens redden die anders zouden zijn genegeerd of verloren zijn gegaan. Zie Hoe werkt de deductie van het autolaadprogramma?.
  • Kosten: Auto Loader maakt gebruik van systeemeigen cloud-API's om lijsten op te halen met bestanden die in de opslag aanwezig zijn. Bovendien kan de bestandsmeldingsmodus van het Automatisch laadprogramma helpen uw cloudkosten verder te verlagen door mapvermeldingen helemaal te voorkomen. Automatisch laden kan automatisch bestandsmeldingsservices in de opslag instellen om bestandsdetectie veel goedkoper te maken.