Anteckning
Åtkomst till den här sidan kräver auktorisering. Du kan prova att logga in eller ändra kataloger.
Åtkomst till den här sidan kräver auktorisering. Du kan prova att ändra kataloger.
Automatisk inläsning bearbetar inkrementellt och effektivt nya datafiler när de tas emot i molnlagring utan ytterligare installation.
Hur fungerar automatisk inläsning?
Automatisk inläsning bearbetar inkrementellt och effektivt nya datafiler när de tas emot i molnlagringen. Den innehåller en structured streaming-källa med namnet cloudFiles. Med tanke på en sökväg till indatakatalogen i molnfillagringen cloudFiles bearbetar källan automatiskt nya filer när de tas emot, med möjlighet att även bearbeta befintliga filer i katalogen. Auto Loader har stöd för både Python och SQL i LakeFlow-deklarativa pipelines.
Du kan använda Auto Loader för att bearbeta miljarder filer för att migrera eller fylla i en tabell. Automatisk inläsning skalar för att stödja inmatning i nära realtid av miljontals filer per timme.
Källor för automatisk inläsning som stöds
Automatisk inläsning kan läsa in datafiler från följande källor:
Amazon S3 (
s3://)Azure Data Lake Storage (ADLS,
abfss://)Google Cloud Storage (GCS,
gs://)Azure Blob Storage (
wasbs://)Note
Den äldre Windows Azure Storage Blob-drivrutinen (WASB) har föråldrats. ABFS har många fördelar jämfört med WASB. Se Azure-dokumentationen på ABFS. Dokumentation om hur du arbetar med den äldre WASB-drivrutinen finns i Ansluta till Azure Blob Storage med WASB (äldre).
Databricks File System (DBFS,
dbfs:/).
Automatisk inläsning kan mata in JSON, CSV, XML, PARQUET, AVRO, ORC, TEXToch BINARYFILE filformat.
Hur spårar automatisk inläsning förlopp?
När filer identifieras sparas deras metadata i ett skalbart nyckelvärdeslager (RocksDB) på kontrollpunktsplatsen för din autoinläsningspipeline. Det här nyckelvärdeslagret säkerställer att data bearbetas exakt en gång.
Vid fel kan autoinläsaren återuppta från den plats där den slutade med information som lagras på kontrollpunktsplatsen och fortsätta att ge garantier exakt en gång när du skriver data till Delta Lake. Du behöver inte underhålla eller hantera något tillstånd själv för att uppnå feltolerans eller exakt-en-gång-semantik.
Inkrementell inmatning med Auto Loader och Lakeflow Deklarativa Pipelines
Databricks rekommenderar Auto Loader i Lakeflow deklarativa pipelines för inkrementell datainmatning. Deklarativa pipelines för Lakeflow utökar funktionerna i Apache Spark Structured Streaming och gör att du bara kan skriva några rader deklarativ Python eller SQL för att distribuera en datapipeline av produktionskvalitet med:
- Beräkningsinfrastruktur för automatisk skalning för kostnadsbesparingar
- Datakvalitetskontroller med förväntningar
- Automatisk schemautvecklingshantering
- Övervakning via mått i händelseloggen
Du behöver inte ange någon schema- eller kontrollpunktsplats eftersom Lakeflow Deklarativa pipelines automatiskt hanterar dessa inställningar för dina pipelines. Se Läsa in data med deklarativa Lakeflow-pipelines.
Databricks rekommenderar också automatisk inläsning när du använder Apache Spark Structured Streaming för att mata in data från molnobjektlagring. API:er är tillgängliga i Python och Scala.
Kom igång med Databricks Auto Loader
Se följande artiklar för att komma igång med att konfigurera inkrementell dataingestion med Auto Loader med Lakeflow Deklarativa Pipelines.
- Självstudie: Skapa en ETL-pipeline med Lakeflow Deklarativa Pipelines
- Importera data från Azure Data Lake Storage
Exempel: Vanliga mönster för automatisk inläsning
Exempel på vanliga mönster för automatisk inläsning finns i Vanliga datainläsningsmönster.
Konfigurera alternativ för automatisk inläsning
Du kan justera automatisk inläsning baserat på datavolym, variation och hastighet.
- Konfigurera schemainferens och utveckling i Auto Loader
- Konfigurera automatisk inläsning för produktionsarbetsbelastningar
En fullständig lista över alternativ för Auto Loader finns i:
Om du får oväntade prestanda kan du läsa vanliga frågor och svar.
Konfigurera filidentifieringslägen för automatisk inläsning
Automatisk inläsning stöder två lägen för filidentifiering. See:
- Auto Loader-strömmar med kataloglistningsläge
- Konfigurera autoladdningsströmmar i filnotifieringsläge
Fördelar med automatisk inläsning jämfört med att använda strukturerad direktuppspelning på filer
I Apache Spark kan du läsa filer stegvis med hjälp av spark.readStream.format(fileFormat).load(directory). Automatisk inläsning ger följande fördelar jämfört med filkällan:
- Skalbarhet: Automatisk inläsare kan identifiera miljarder filer effektivt. Återfyllnad kan utföras asynkront för att undvika slöseri med beräkningsresurser.
- Prestanda: Kostnaden för att identifiera filer med automatisk inläsning skalar med antalet filer som matas in i stället för antalet kataloger som filerna kan landa i. Se Automatiska inläsningsströmmar med kataloglistningsläge.
- Stöd för schemainferens och utveckling: Auto Loader kan identifiera schemaavvikelser, meddela dig när schemaändringar inträffar och rädda data som annars skulle ha ignorerats eller förlorats. Se Hur fungerar schemainferens för Auto Loader?.
- Kostnad: Automatisk inläsning använder interna moln-API:er för att hämta listor över filer som finns i lagringen. Dessutom kan Auto Loaders filaviseringläge bidra till att minska molnkostnaderna ytterligare genom att helt undvika kataloglistning. Auto Loader kan automatiskt konfigurera filaviseringstjänster på lagringsutrymme för att avsevärt minska kostnaderna för filidentifiering.