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.
Architektura medallion lakehouse, která se běžně označuje jako architektura medallionu, je vzor návrhu, který se používá k uspořádání dat v jezeře. Jedná se o doporučený návrhový přístup pro Fabric. Vzhledem k tomu, že OneLake je datové jezero pro Fabric, implementuje se architektura medailonu vytvořením jezer v OneLake.
Použijte tento článek poté, co zvolíte architekturu Medallion k plánování její implementace, včetně návrhu vrstev, modelů nasazení, formátů úložišť, pohledů na materializovaná jezera a optimalizace Delta tabulek. Pro porovnání architektury medailonu s jinými vzory OneLake a pochopení, jak vzory spolu fungují, viz vzory OneLake a základní schopnosti.
Architektura medallionu se skládá ze tří různých vrstev. Tři vrstvy medailonu jsou: bronzová (nezpracovaná data), stříbro (obohacená data) a zlato (kurátorovaná data). Každá vrstva označuje kvalitu dat uložených v jezeře s vyšší úrovní představující vyšší kvalitu.
Architektura Medallion pomáhá vašim datům zůstat přesná a spolehlivá podle principů atomicity, konzistence, izolace a odolnosti (ACID). Vaše data začínají v nezpracované podobě a původní kopie se zachovají jako zdroj pravdy, zatímco kanály ověření a transformace připraví data na analýzu.
Další informace najdete v tématu Co je architektura medailonového datového jezera?.
Obecenstvo
Tento článek představuje architekturu Medallion Lake a popisuje, jak můžete tento návrhový vzor implementovat ve Fabric. Cílí na více cílových skupin:
- Datoví inženýři: Technický personál, který navrhuje, vytváří a udržuje infrastrukturu a systémy, které jejich organizaci umožňují shromažďovat, ukládat, zpracovávat a analyzovat velké objemy dat.
- Týmy Center of Excellence, IT a BI: Týmy, které zodpovídají za dohled nad analýzou v celé organizaci.
- Správci prostředků infrastruktury: Správci, kteří jsou zodpovědní za dohled nad prostředky infrastruktury v organizaci.
Co je architektura medailonu?
Cílem architektury medallionu je přírůstkově zlepšit strukturu a kvalitu dat. Architekturu medailonu si můžete představit jako třífázové čištění a organizování vašich dat. Každá vrstva usnadňuje používání vašich dat.
- Bronz (Raw): Ukládejte všechno přesně tak, jak dorazí. Nejsou povoleny žádné změny.
- Silver (Enriched): Opravte chyby, standardizujte formáty a odeberte duplicity.
- Gold (kurátorované): Uspořádejte si sestavy a řídicí panely.
Udržujte každou vrstvu oddělenou ve vlastním lakehouse nebo datovém skladu v OneLake, přičemž se data mezi vrstvami přesouvají při jejich transformaci a zpřesňování.
V typické implementaci architektury medailonu v Fabric ukládá bronzová vrstva data ve stejném formátu jako zdroj dat. Pokud je zdrojem dat relační databáze, jsou tabulky Delta dobrou volbou. Stříbrné a zlaté vrstvy by měly obsahovat tabulky Delta.
Návod
Pokud se chcete naučit, jak vytvořit lakehouse, projděte si tutoriál kompletního scénáře Lakehouse.
Příklad z reálného světa
Podívejte se na následující příklad e-commerce společnosti, která používá medallion architecture na svá data:
Bronzová vrstva:
- Ukládání nezpracovaných prodejních dat z webu (JSON)
- Ukládání nezpracovaných dat inventáře ze skladu (CSV)
- Ukládání nezpracovaných zákaznických dat z CRM (export SQL)
Stříbrná vrstva:
- Standardizace formátů kalendářních dat ve všech zdrojích
- Převést všechny měny na USD
- Odebrání testovacích transakcí
- Porovnávání záznamů zákazníků napříč systémy
Zlatá vrstva:
- Vytvořte tabulku přehledů denních prodejů
- Vytvoření tabulky hodnot životnosti zákazníka
- Generování tabulky pro prognózování inventáře
Architektura Medallion v OneLake
Základem moderního datového skladu je datové jezero. OneLake je jedno jednotné logické datové jezero pro celou organizaci. Zřizuje se automaticky pro každého zákazníka platformy Fabric a je to jediné místo pro všechna vaše analytická data.
Pokud chcete ukládat data ve službě OneLake, vytvoříte datový dům ve Fabric. Lakehouse je platforma architektury dat pro ukládání, správu a analýzu strukturovaných a nestrukturovaných dat v jednom umístění. Může se škálovat na velké objemy dat všech typů a velikostí souborů a protože jsou data uložená v jednom umístění, můžou se sdílet a opakovaně používat v celé organizaci.
Další informace naleznete v tématu Co je jezero v Fabric?.
Tabulky a soubory
Když v OneLake vytvoříte lakehouse, automaticky se zřídí dvě umístění fyzického úložiště:
- Tabulky ukládají tabulky všech formátů v Apache Sparku (CSV, Parquet nebo Delta).
- Soubory ukládají data v libovolném formátu souboru. Pokud chcete vytvořit tabulku založenou na datech ve složce souborů, můžete vytvořit zástupce který odkazuje na složku obsahující soubory tabulky.
V bronzové vrstvě ukládáte data v původním formátu, což můžou být tabulky nebo soubory. Pokud zdrojová data pocházejí z OneLake, Azure Data Lake Store Gen2 (ADLS Gen2), Amazon S3 nebo Google, vytvořte zástupce v bronzové vrstvě místo kopírování dat napříč.
V stříbrných a zlatých vrstvách obvykle ukládáte data do tabulek Delta. Můžete ale také ukládat data do souborů Parquet nebo CSV. Pokud to uděláte, musíte explicitně vytvořit zástupce nebo externí tabulku s umístěním, které ukazuje na nespravovanou složku, jež obsahuje soubory Delta Lake v Apache Spark.
V Fabric poskytuje průzkumník Lakehouse sjednocenou grafickou reprezentaci celého jezera, aby uživatelé mohli procházet, přistupovat k nim a aktualizovat jejich data.
Delta Lake úložiště
Delta Lake je optimalizovaná vrstva úložiště, která poskytuje základ pro ukládání dat a tabulek. Podporuje transakce ACID pro úlohy s velkými objemy dat a z tohoto důvodu je výchozím formátem úložiště v úložišti Fabric Lakehouse.
Delta Lake zajišťuje spolehlivost, zabezpečení a výkon v rámci lakehouse pro streamované i dávkové operace. Interně ukládá data ve formátu souborů Parquet, ale také udržuje transakční protokoly a statistiky, které poskytují funkce a zlepšení výkonu oproti standardnímu formátu Parquet.
Formát Delta Lake přináší v porovnání s obecnými formáty souborů následující výhody:
- Podpora vlastností ACID, zejména stálost, aby se zabránilo poškození dat.
- Rychlejší čtení dotazů.
- Zvýšená aktuálnost dat
- Podpora dávkových i streamovaných úloh
- Podpora pro vrácení dat zpět pomocí Delta Lake přechodu času.
- Vylepšené dodržování právních předpisů a audit pomocí historie tabulek Delta Lake.
Fabric standardizuje formát úložného souboru s pomocí Delta Lake. Ve výchozím nastavení každý výpočetní modul ve Fabric vytváří tabulky Delta, když zapisujete data do nové tabulky. Další informace najdete v tabulkách Lakehouse a Delta Lake.
Model nasazení
Pro implementaci medailonové architektury v rámci Fabric můžete použít buď lakehousy (jeden pro každou vrstvu), datový sklad nebo kombinaci obou. Vaše rozhodnutí by mělo vycházet z vašich preferencí a odborných znalostí vašeho týmu. S Fabric můžete použít různé analytické moduly, které pracují na jedné kopii dat v OneLake.
Tady jsou dva vzory, které je potřeba vzít v úvahu:
- Vzor 1: Vytvořte každou vrstvu jako jezero. V tomto případě podnikoví uživatelé přistupují k datům pomocí koncového bodu analýzy SQL.
- Vzor 2: Vytvořte bronzovou a stříbrnou vrstvu jako datová jezera a zlatou vrstvu jako datový sklad. V tomto případě podnikoví uživatelé přistupují k datům pomocí koncového bodu datového skladu.
I když můžete vytvořit všechny lakehousy v jednom pracovním prostoru Fabric, doporučujeme, abyste vytvořili každý z nich ve vlastním samostatném pracovním prostoru. Tento přístup poskytuje větší kontrolu a lepší zásady správného řízení na úrovni vrstvy.
Pro bronzovou vrstvu doporučujeme uložit data v původním formátu nebo použít Parquet nebo Delta Lake. Pokud je to možné, udržujte data v původním formátu. Pokud zdrojová data pocházejí z OneLake, Azure Data Lake Store Gen2 (ADLS Gen2), Amazon S3 nebo Google, vytvořte zástupce v bronzové vrstvě místo kopírování dat napříč.
Pro stříbrnou a zlatou vrstvu doporučujeme používat tabulky Delta kvůli dalším funkcím a vylepšením výkonu, které poskytují. Fabric standardizuje formát Delta Lake a ve výchozím nastavení každý engine v Fabric zapisuje data v tomto formátu. Tyto moduly navíc používají optimalizaci doby zápisu V-order do formátu souboru Parquet. Tato optimalizace umožňuje rychlé čtení výpočetními moduly Fabric, jako jsou Power BI, SQL, Apache Spark a další. Další informace najdete v tématu Optimalizace tabulek Delta Lake a pořadí V.
A konečně, dnes mnoho organizací čelí masivnímu růstu objemů dat, spolu s rostoucí potřebou uspořádat a spravovat tato data logickým způsobem a zároveň usnadnit cílenější a efektivnější použití a zásady správného řízení. To může vést k vytvoření a správě decentralizované nebo federované organizace dat pomocí zásad správného řízení. Pokud chcete tento cíl splnit, zvažte implementaci architektury datových sítí. Datová síť je model architektury, který se zaměřuje na vytváření datových domén, které nabízejí data jako produkt.
Architekturu datové sítě pro vaše datové prostředí ve Fabric můžete vytvořit pomocí vytvoření datových domén. Můžete vytvořit domény, které se mapují na vaše obchodní domény, například marketing, prodej, inventář, lidské zdroje a další. Architekturu medailonu pak můžete implementovat nastavením datových vrstev v rámci každé z vašich domén. Další informace o doménách najdete v tématu Domény.
Použití materializovaných zobrazení jezera pro architekturu medailiónu
Materializovaná zobrazení jezera v Fabric vám pomohou implementovat architekturu medailonu ve vašem jezeře. Místo vytváření složitých kanálů pro transformaci dat mezi bronzovou, stříbrnou a zlatou vrstvou můžete definovat materializovaná zobrazení jezera, která automaticky spravují transformace.
Mezi klíčové výhody použití materializovaných zobrazení jezera pro architekturu medailionu patří:
- Deklarativní kanály: Definujte transformace dat pomocí příkazů SQL místo vytváření ručních kanálů mezi vrstvami.
- Automatická správa závislostí: Fabric automaticky určuje správné pořadí provádění podle závislostí ve zobrazení.
- Pravidla kvality dat: Integrovaná podpora pro definování a vynucování omezení kvality dat při procházení mezi vrstvami
- Optimální aktualizace: Systém automaticky určuje, jestli se má provést přírůstková, úplná nebo žádná aktualizace pro každé zobrazení.
- Vizualizace a monitorování: Umožňuje zobrazit rodokmen napříč všemi vrstvami a sledovat průběh provádění.
Můžete například vytvořit zobrazení stříbrné vrstvy, které vyčistí a spojí data z bronzových tabulek, a pak vytvořit zobrazení zlaté vrstvy, které agreguje data stříbrné vrstvy pro účely sestavování. Systém automaticky zpracovává orchestraci aktualizací.
Další informace naleznete v tématu Implementace architektury medallion s materializovanými zobrazeními jezera.
Principy úložiště dat tabulek Delta
Tato část popisuje další pokyny související s implementací architektury jezera medallion v Fabric.
Velikost souboru
Obecně platí, že platforma pro velké objemy dat funguje lépe, když má několik velkých souborů, a ne mnoho malých souborů. Ke snížení výkonu dochází, když má výpočetní modul mnoho operací metadat a souborů, které se mají spravovat. Pro lepší výkon dotazů cílte na velikosti souborů mezi 128 MB a 1 GB, v závislosti na velikosti tabulky a vzorci spotřeby vrstvy.
Různé vrstvy architektury Medallion mají různé požadavky na velikost souboru v závislosti na použitém spotřebním enginu. V bronzové vrstvě můžete použít menší soubory kvůli surové povaze dat, pokud se zaměříte na úpravu a přípravu dat ve Sparku. Ve stříbrné vrstvě používejte střední velikosti souborů pro vyvážení výkonu zápisu a čtení. Ve zlaté vrstvě optimalizujte s ohledem na větší velikosti souborů a větší skupiny řádků, abyste zlepšili výkon dotazů pro nástroje pro využití dat. Další informace o optimalizaci velikostí souborů pro různé vrstvy najdete v tématu Údržba a optimalizace tabulek napříč úlohami.
Historické uchovávání
Delta Lake ve výchozím nastavení udržuje historii všech provedených změn, takže velikost historických metadat v průběhu času roste. Na základě vašich obchodních požadavků udržujte historická data jenom po určitou dobu, abyste snížili náklady na úložiště. Zvažte uchovávání historických dat pouze za poslední měsíc nebo jiné vhodné časové období.
Starší historická data můžete z tabulky Delta odebrat pomocí příkazu VACUUM. Ve výchozím nastavení ale nemůžete odstranit historická data za posledních 7 dnů. Toto omezení zachovává konzistenci dat. Nakonfigurujte výchozí počet dní pomocí vlastnosti delta.deletedFileRetentionDuration = "interval <interval>" tabulky. Tato vlastnost určuje dobu, po kterou musí být soubor odstraněn dříve, než jej lze považovat za kandidáta na operaci vakua.
Oddíly tabulek a clusterování
Když ukládáte data do každé vrstvy, používejte rozdělenou složkovou strukturu, kde je to možné. Tato technika zlepšuje možnosti správy dat a výkon dotazů. Obecně platí, že rozdělená data ve struktuře složek vedou k rychlejšímu vyhledávání konkrétních datových položek díky ořezávání nebo eliminaci oddílů. V bronzové vrstvě je dělení přípustné, ale u nových implementací se nedoporučuje. Pro stříbrné a zlaté vrstvy použijte místo dělení Liquid Clustering pro optimalizaci výkonu dotazů. Další informace o optimalizaci pro různé vrstvy najdete v tématu Údržba a optimalizace tabulek napříč úlohami.
Při příchodu nových dat obvykle připojíte data k cílové tabulce. V některých případech ale můžete sloučit data, protože potřebujete aktualizovat stávající data současně. V takovém případě můžete provést operaci upsert pomocí příkazu MERGE. Pokud je cílová tabulka rozdělená na oddíly, nezapomeňte k urychlení operace použít filtr oddílů. Tímto způsobem může modul eliminovat oddíly, které nevyžadují aktualizaci.
Přístup k datům
Měli byste naplánovat a řídit, kdo potřebuje přístup k určitým datům v jezeře. Měli byste také porozumět různým vzorům transakcí, které budou používat při přístupu k datům pro každou vrstvu.
Návod
Každá vrstva medallionu má různé požadavky na optimalizaci. Komplexní pokyny ke strategiím údržby tabulek pro bronzovou, stříbrnou a zlatou vrstvu, včetně toho, kdy povolit pořadí V a optimální velikosti souborů, najdete v tématu Údržba a optimalizace tabulek napříč úlohami.
Související obsah
Další informace o implementaci architektury medallion lakehouse najdete v následujících zdrojích informací.
- Údržba a optimalizace tabulek napříč úlohami
- Optimalizace tabulek Delta Lake a V-Order
- Kurz: Kompletní scénář Lakehouse
- Kurz: Implementace architektury medallionu s materializovanými zobrazeními jezera
- Tabulky Lakehouse a Delta Lake
- Fabric průvodce rozhodováním: Volba úložiště dat
- Potřeba optimalizace zápisu v Apache Sparku
- Otázky? Zkuste se zeptat komunity Fabric.
- Návrhy? Přispějte nápady na vylepšení Fabric.