Poznámka:
Přístup k této stránce vyžaduje autorizaci. Můžete se zkusit přihlásit nebo změnit adresáře.
Přístup k této stránce vyžaduje autorizaci. Můžete zkusit změnit adresáře.
Delta Lake je optimalizovaná vrstva úložiště, která poskytuje základ pro tabulky v lakehouse na platformě Databricks. Delta Lake je open-sourceový software, který rozšiřuje datové soubory Parquet o souborový transakční protokol pro ACID transakce a škálovatelné zpracování metadat. Delta Lake je plně kompatibilní s rozhraními Apache Spark API a byl vyvinut pro úzkou integraci se strukturovaným streamováním, takže můžete snadno použít jednu kopii dat pro dávkové i streamovací operace a poskytovat přírůstkové zpracování ve velkém měřítku.
Delta Lake je výchozí formát pro všechny operace v Azure Databricks. Pokud není uvedeno jinak, všechny tabulky v Azure Databricks jsou tabulky Delta Lake. Databricks původně vyvinul protokol Delta Lake a nadále aktivně přispívá do opensourcového projektu. Mnoho optimalizací a produktů na platformě Databricks vychází ze záruk poskytovaných Apache Sparkem a Delta Lake. Informace o optimalizacích v Azure Databricks najdete v doporučeních pro optimalizaci v Azure Databricks.
Referenční informace o příkazech Delta Lake SQL najdete v tématu Příkazy Delta Lake.
Transakční protokol Delta Lake má dobře definovaný otevřený protokol, který může jakýkoli systém použít ke čtení protokolu. Viz protokol transakčního protokolu Delta.
Začínáme s Delta Lake
Všechny tabulky na Azure Databricks jsou ve výchozím nastavení tabulky Delta Lake. Bez ohledu na to, jestli používáte datové rámce Apache Spark nebo SQL, získáte všechny výhody Delta Lake tím, že data uložíte do jezera s výchozím nastavením.
Příklady základních operací Delta Lake, jako jsou vytváření tabulek, čtení, zápis a aktualizace dat, najdete v tématu Kurz: Vytváření a správa tabulek Delta Lake.
Doporučení a osvědčené postupy pro používání Služby Delta Lake pro Databricks najdete v tématu Osvědčené postupy: Delta Lake.
Převod a zpracování dat na Delta Lake
Azure Databricks nabízí řadu funkcí, které urychlují a zjednodušují načítání dat do vašeho lakehouse.
| Method | Description |
|---|---|
| Kurz: Sestavení kanálu ETL pomocí deklarativních kanálů Sparku Lakeflow | Vytvořte ucelený kanál ETL pomocí deklarativních kanálů Sparku Lakeflow. |
| Nastavení přírůstkového příjmu dat ze služby Azure Data Lake Storage | Nastavte inkrementální ingesti dat z cloudového úložiště pomocí Auto Loaderu a Lakeflow Spark Declarative Pipelines. |
| tabulky streamování | Použijte streamovací tabulky pro příjem dat pouze přidáváním a streamování s nízkou latencí v Lakeflow Spark Declarative Pipelines. |
| Začínáme používat COPY INTO k načtení dat | Načtěte data přírůstkově a idempotentně z cloudového úložiště pomocí SQL. |
| Co je Auto Loader? | Načítání souborů z cloudového úložiště postupně podle toho, jak přicházejí. |
| Vytvoření nebo úprava tabulky pomocí nahrání souboru | Nahrajte soubory a vytvořte tabulky z uživatelského rozhraní Azure Databricks. |
| Inkrementálně klonovat tabulky Parquet a Apache Iceberg do Delta Lake | Inkrementálně klonujte tabulky Parquet nebo Apache Iceberg do Delta Lake. |
| Převést na Delta Lake | Jednorázový převod tabulek Parquet nebo Apache Iceberg do formátu Delta Lake. |
| Technologickí partneři | Připojte partnery a nástroje třetích stran k Azure Databricks lakehouse. |
Úplný seznam možností příjmu dat najdete v tématu Standardní konektory v Lakeflow Connect.
Aktualizace a úpravy tabulek Delta Lake
Atomické transakce s Delta Lake umožňují použít mnoho možností pro aktualizaci dat a metadat. Aby se zabránilo poškození tabulek, databricks doporučuje vyhnout se přímé interakci se soubory dat a transakčních protokolů v adresářích souborů Delta Lake.
| Operation | Description |
|---|---|
| Přenesení do tabulky Delta Lake pomocí sloučení | Přenesení dat do tabulky Delta Lake pomocí operace sloučení |
| Selektivní přepsání dat pomocí Delta Lake | Přepište podmnožiny dat na základě filtrů a partitionů. |
| Aktualizace schémat tabulek s využitím vývoje schématu | Ručně nebo automaticky aktualizujte schéma tabulky bez přepsání dat. |
| Přejmenujte a vyřaďte sloupce pomocí mapování sloupců Delta Lake | Přejmenujte nebo odstraňte sloupce bez přepsání dat. |
Přírůstkové a streamované úlohy v Delta Lake
Delta Lake je optimalizovaná pro strukturované streamování v Azure Databricks. Deklarativní kanály Sparku Lakeflow rozšiřují integrované funkce se zjednodušeným nasazením infrastruktury, vylepšeným škálováním a závislostmi spravovaných dat.
| Feature | Description |
|---|---|
| Streamované čtení a zápisy tabulek Delta Lake | Tabulky Delta Lake použijte jako zdroje a jímky pro strukturované streamování s readStream a writeStream. |
| Použití zdroje změn dat v Azure Databricks | Sledování změn na úrovni řádků mezi verzemi tabulky Delta Lake nebo Apache Iceberg v3 |
Provádění dotazů na předchozí verze tabulky
Každý zápis do tabulky Delta Lake vytvoří novou verzi tabulky. Pomocí transakčního protokolu můžete zkontrolovat úpravy tabulky a dotazovat se na předchozí verze tabulek. Viz Práce s historií tabulek.
Vylepšení schématu Delta Lake
Delta Lake ověřuje schéma při zápisu a zajišťuje, aby všechna data zapsaná do tabulky odpovídala požadavkům, které jste nastavili.
| Feature | Description |
|---|---|
| vynucování schématu | Ověřte kvalitu dat vynucením schématu při zápisu. |
| Omezení v Azure Databricks | Použijte vynucená omezení integrity a informativní omezení primárního klíče, cizího klíče a jedinečnosti. |
| sloupce generované službou Delta Lake | Automaticky generovat hodnoty sloupců pomocí uživatelem zadaných funkcí. |
| Obohacení tabulek vlastními metadaty | Přidáním komentářů a vlastních metadat do tabulek a sloupců můžete rozšířit zjišťování dat. |
Správa souborů a indexování dat pomocí Delta Lake
Azure Databricks nastavuje mnoho výchozích parametrů pro Delta Lake, které mají vliv na velikost datových souborů a počet verzí tabulek, které se uchovávají v historii. Delta Lake používá kombinaci analýzy metadat a rozložení fyzických dat ke snížení počtu naskenovaných souborů pro splnění jakéhokoli dotazu.
| Feature | Description |
|---|---|
| Použijte kapalinové shlukování pro tabulky | Zjednodušte rozložení dat a optimalizujte výkon dotazů bez dělení pomocí clusteringu liquid. |
| Přeskočení dat | Přeskakujte nerelevantní soubory během zpracování dotazu pomocí statistik sloupců, řazení Z-order a optimalizovaného rozložení dat. |
| Optimalizace rozložení datového souboru | Komprimovat malé datové soubory za účelem zlepšení výkonu dotazů |
| Odeberte nepoužívané datové soubory pomocí vacuum | Odebrání zastaralých datových souborů za účelem snížení nákladů na úložiště |
| Automatické odstraňování řádků s automatickou dobou životnosti | Automaticky odstranit řádky ze spravovaných tabulek po konfigurovatelném časovém období |
| Řízení velikosti datového souboru | Velikost cílového souboru můžete řídit ručně nebo povolit automatické ladění velikosti souboru. |
Konfigurace a kontrola nastavení Delta Lake
Azure Databricks ukládá všechna data a metadata pro tabulky Delta Lake v cloudovém úložišti objektů. Mnoho konfigurací je možné nastavit na úrovni tabulky nebo v rámci relace Sparku. Podrobnosti tabulky Delta Lake si můžete projít a zjistit, jaké možnosti jsou nakonfigurované.
| Feature | Description |
|---|---|
| Zkontrolujte podrobnosti tabulky pomocí příkazu describe detail | Pomocí příkazu DESCRIBE DETAIL můžete zobrazit konfigurace tabulek a metadata. |
| Referenční informace k vlastnostem tabulky | Referenční seznam vlastností tabulek dostupných pro tabulky Delta Lake |
Datové kanály využívající deklarativní kanály Delta Lake a Lakeflow Spark
Azure Databricks podporuje uživatele k využití architektury medallion ke zpracování dat prostřednictvím řady tabulek v rámci čištění a obohacování. Deklarativní kanály Sparku Lakeflow zjednodušuje úlohy ETL prostřednictvím optimalizovaného spouštění a automatizovaného nasazení a škálování infrastruktury.
Kompatibilita funkcí Delta Lake
Ne všechny funkce Delta Lake jsou ve všech verzích Databricks Runtime. Informace o správě verzí Delta Lake najdete v tématu Kompatibilita a protokoly funkcí Delta Lake.
Dokumentace k rozhraní Delta Lake API
U většiny operací čtení a zápisu v tabulkách Delta Lake můžete použít rozhraní API Spark SQL nebo Apache Spark DataFrame .
Příkazy SQL specifické pro Delta Lake najdete v tématu Příkazy Delta Lake.
Azure Databricks zajišťuje binární kompatibilitu s rozhraními Delta Lake API v Databricks Runtime. Pokud chcete zobrazit verzi rozhraní Delta Lake API zabalenou v každé verzi databricks Runtime, přečtěte si část Systémové prostředí v příslušném článku v poznámkách k verzi databricks Runtime. Dokumentaci k rozhraním Delta Lake API pro Python, Scala a Javu najdete v dokumentaci k OSS Delta Lake.