Co je Azure Data Factory?

PLATÍ PRO: Azure Data Factory Azure Synapse Analytics

Ve světě velkých objemů dat jsou nezpracovaná, neuspořádaná data často uložená v relačních, nerelačních a jiných systémech úložiště. Nezpracovaná data sama o sobě ale nemají potřebný kontext ani význam, aby mohla analytikům, datovým vědcům nebo osobám rozhodujícím v rámci podniků poskytnout smysluplný přehled.

Velké objemy dat vyžadují službu, která může orchestrovat a zprovoznit procesy pro upřesnění těchto obrovských úložišť nezpracovaných dat do použitelných obchodních přehledů. Azure Data Factory je spravovaná cloudová služba vytvořená pro tyto komplexní projekty hybridní extrakce, transformace a načítání (ETL), extrakce, načítání a transformace (ELT) a integrace dat.

Scénáře použití

Představte si například herní společnost, která shromažďuje petabajty herních protokolů vytvářených hrami v cloudu. Společnost chce tyto protokoly analyzovat, aby získala informace o preferencích zákazníků, demografických ukazatelích a chování uživatelů. Zároveň chce identifikovat příležitosti křížového a následného prodeje, vyvíjet nové, zajímavé funkce, podpořit obchodní růst a zlepšovat zkušenosti zákazníků.

Aby společnost mohla tyto protokoly analyzovat, potřebuje použít referenční data, jako jsou informace o zákaznících, hrách a marketingových kampaních, které jsou uložené v místním úložišti dat. Společnost chce využít tato data z místního úložiště dat a zkombinovat je s dalšími daty protokolů, která má uložená v cloudovém úložišti dat.

Pokud chcete extrahovat přehledy, doufáme, že zpracuje propojená data pomocí clusteru Spark v cloudu (Azure HDInsight) a publikuje transformovaná data do cloudového datového skladu, jako je například Azure Synapse Analytics, aby bylo možné snadno vytvořit sestavu nad ní. Chce tento pracovní postup automatizovat a monitorovat a spravovat ho podle denního plánu. Chce ho také provádět, když se soubory dostanou do kontejneru úložiště objektů blob.

Právě v takových scénářích práce s daty nachází uplatnění platforma Azure Data Factory. Jedná se o cloudovou službu ETL a integraci dat, která umožňuje vytvářet pracovní postupy řízené daty pro orchestraci přesunu dat a transformaci dat ve velkém měřítku. Pomocí služby Azure Data Factory můžete vytvářet a plánovat pracovní postupy řízené daty (označované jako kanály), které dokáží ingestovat data z různorodých úložišť dat. Můžete vytvářet složité procesy ETL, které vizuálně transformují data pomocí toků dat nebo pomocí výpočetních služeb, jako jsou Azure HDInsight Hadoop, Azure Databricks a Azure SQL Database.

Kromě toho můžete transformovaná data publikovat do úložišť dat, jako jsou Azure Synapse Analytics pro aplikace business intelligence (BI), které se mají využívat. V neposlední řadě služba Azure Data Factory umožňuje uspořádání nezpracovaných dat do smysluplných úložišť dat a datových jezer, která pomáhají při obchodním rozhodování.

Jak to funguje?

Data Factory obsahuje řadu vzájemně propojených systémů, které poskytují kompletní platformu pro datové techniky.

Zobrazuje diagram architektury nejvyšší úrovně Azure Data Factory.

Tato vizuální příručka poskytuje podrobný přehled kompletní architektury služby Data Factory:

Podrobný vizuální průvodce kompletní architekturou systému pro Azure Data Factory, který je prezentován na jednom obrázku s vysokým rozlišením.

Pokud chcete zobrazit další podrobnosti, vyberte předchozí obrázek, který chcete přiblížit, nebo přejděte na obrázek s vysokým rozlišením.

Připojení a shromažďování

Podniky mají data různých typů, která jsou uložená v různorodých místních zdrojích nebo v cloudu, a data strukturovaná, nestrukturovaná i částečně strukturovaná, která přicházejí v různých intervalech a různou rychlostí.

Prvním krokem při sestavování systému vytváření informací je připojení ke všem požadovaným zdrojům dat a zpracování, jako jsou například služby typu software jako služba (SaaS), databáze, sdílené složky a webové služby FTP. Dalším krokem je přesun dat podle potřeby do centralizovaného umístění pro následné zpracování.

Bez služby Data Factory musí podniky sestavovat vlastní komponenty pro přesun dat nebo vyvíjet vlastní služby pro integraci a zpracování těchto zdrojů dat. Integrace a údržba takových systémů je nákladná a složitá. Kromě toho často postrádají monitorování a upozorňování na podnikové úrovni a ovládací prvky, které může nabídnout plně spravovaná služba.

Se službou Data Factory můžete pomocí aktivity kopírování v datovém kanálu přesouvat data z místních i cloudových úložišť dat do centralizovaného úložiště v cloudu pro účely další analýzy. Můžete například shromažďovat data v Azure Data Lake Storage a později je transformovat pomocí výpočetní služby Azure Data Lake Analytics. Data můžete shromažďovat i ve službě Azure Blob Storage a později je transformovat pomocí clusteru Azure HDInsight Hadoop.

Transformace a rozšíření

Jakmile se data nacházejí v centralizovaném úložišti dat v cloudu, zpracujte nebo transformujte shromážděná data pomocí toků dat mapování ADF. Toky dat umožňují datovým inženýrům vytvářet a udržovat grafy transformace dat, které se spouštějí ve Sparku, aniž by museli rozumět clusterům Spark nebo programování Sparku.

Pokud dáváte přednost transformacím kódu ručně, ADF podporuje externí aktivity pro provádění transformací na výpočetních službách, jako je HDInsight Hadoop, Spark, Data Lake Analytics a Machine Learning.

CI/CD a publikování

Data Factory nabízí úplnou podporu CI/CD datových kanálů pomocí Azure DevOps a GitHubu. To vám umožní postupně vyvíjet a dodávat procesy ETL před publikováním hotového produktu. Po upřesnění nezpracovaných dat do spotřebního formuláře připraveného pro firmy načtěte data do Azure Data Warehouse, Azure SQL Databáze, Azure Cosmos DB nebo na jakýkoli analytický modul, na který můžou vaši podnikoví uživatelé odkazovat ze svých nástrojů business intelligence.

Monitor

Jakmile úspěšně sestavíte a nasadíte kanál integrace dat, který ze zpracovaných dat získává obchodní hodnotu, můžete monitorovat naplánované aktivity a kanály a jejich míru úspěšnosti a chyb. Azure Data Factory má integrovanou podporu monitorování kanálů prostřednictvím služby Azure Monitor, rozhraní API, PowerShellu, protokolů Azure Monitoru a panelů stavu na Azure Portal.

Koncepty nejvyšší úrovně

Předplatné Azure může obsahovat jednu nebo více instancí služby Azure Data Factory (neboli datových továren). Azure Data Factory se skládá z následujících klíčových komponent.

  • Pipelines
  • Aktivity
  • Datové sady
  • Propojené služby
  • Toky dat
  • Moduly runtime integrace

Tyto součásti společně poskytují platformu, na které můžete vytvářet pracovní postupy řízené daty s kroky pro přesun a transformaci dat.

Kanál

Datová továrna může mít jeden nebo víc kanálů. Kanál je logické seskupení aktivit, které provádějí pracovní jednotku. Aktivity v kanálu společně provádějí úlohu. Kanál může například obsahovat skupinu aktivit, které ingestují data z objektu blob Azure a pak na clusteru HDInsight spustí dotaz Hivu pro rozdělení dat.

Výhodou tohoto přístupu je, že vám kanál umožňuje spravovat aktivity jako sadu, a ne každou jednotlivě. Aktivity v kanálu je možné zřetězit, aby probíhaly postupně, nebo můžou probíhat souběžně a nezávisle na sobě.

Toky dat mapování

Vytvářejte a spravujte grafy logiky transformace dat, pomocí které můžete transformovat libovolná data. Z kanálů ADF můžete vytvořit opakovaně použitelnou knihovnu rutin transformace dat a spouštět tyto procesy škálovaným způsobem. Data Factory spustí vaši logiku v clusteru Spark, který se v případě potřeby roztáčí a roztáčí. Nikdy nebudete muset spravovat ani udržovat clustery.

Aktivita

Aktivity představují krok zpracování v rámci kanálu. Například můžete použít aktivitu kopírování ke kopírování dat z jednoho úložiště dat do jiného. Podobně můžete použít aktivitu Hivu, která spustí dotaz Hivu na clusteru Azure HDInsight, aby transformoval a analyzoval vaše data. Data Factory podporuje tři typy aktivit: aktivity přesunu dat, aktivity transformace dat a aktivity řízení.

Datové sady

Datové sady představují datové struktury v rámci úložišť dat, které jednoduše odkazují na data, která chcete ve svých aktivitách použít jako vstupy nebo výstupy.

Propojené služby

Propojené služby jsou velmi podobné připojovacím řetězcům, které definují informace o připojení, které služba Data Factory potřebuje pro připojení k externím prostředkům. Můžete si to představit tak, že propojená služba definuje připojení ke zdroji dat a datová sada představuje strukturu těchto dat. Například propojená služba Azure Storage určuje připojovací řetězec pro připojení k účtu služby Azure Storage. Datová sada objektu blob Azure navíc určuje kontejner objektů blob a složku obsahující data.

Propojené služby slouží ve službě Data Factory ke dvěma účelům:

  • Chcete-li reprezentovat úložiště dat, které zahrnuje, ale není omezeno na databázi SQL Server, databázi Oracle, sdílenou složku nebo účet úložiště objektů blob v Azure. Seznam podporovaných úložišť dat najdete v článku Aktivita kopírování.

  • Představují výpočetní prostředek, který může hostovat provádění aktivity. Například aktivita HDInsightHive se spouští na clusteru HDInsight Hadoop. Seznam aktivit transformace a podporovaných výpočetních prostředí najdete v článku o transformaci dat.

Integration Runtime

Aktivita ve službě Data Factory určuje akci, která se má provést. Propojená služba určuje cílové úložiště dat nebo výpočetní službu. Prostředí Integration Runtime představuje spojení mezi aktivitou a propojenými službami. Odkazuje na ni propojená služba nebo aktivita a poskytuje výpočetní prostředí, ve kterém se aktivita spouští nebo odesílá. Tímto způsobem se dá aktivita co nejefektivněji provést v oblasti, která je nejblíž cílovému úložišti dat nebo výpočetní službě, a zároveň vyhovět potřebám zabezpečení a dodržování předpisů.

Aktivační události

Aktivační události jsou jednotkou zpracování, která určuje, kdy se má zahájit provádění kanálu. Pro různé typy událostí existují různé typy aktivačních událostí.

Spuštění kanálu

Spuštění kanálu je instance provádění kanálu. Instance spuštění kanálu se obvykle vytvářejí předáváním argumentů do parametrů definovaných v kanálech. Argumenty je možné předat ručně nebo v rámci definice aktivační události.

Parametry

Parametry jsou dvojice klíčů a hodnot v rámci konfigurace jen pro čtení.  Parametry jsou definované v kanálu. Argumenty definovaných parametrů se předávají během provádění z kontextu spuštění vytvořeného aktivační událostí nebo ručně spuštěným kanálem. Aktivity v rámci kanálu využívají hodnoty parametrů.

Datová sada je parametr silného typu a opakovaně použitelná/odkazovatelná entita. Aktivita může odkazovat na datové sady a může využívat vlastnosti definované v definici datové sady.

Propojená služba je také parametr silného typu, který obsahuje informace o připojení k úložišti dat nebo výpočetnímu prostředí. Je to také opakovaně použitelná/odkazovatelná entita.

Tok řízení

Tok řízení představuje orchestraci aktivit kanálu, která zahrnuje zřetězení aktivit v sekvenci, větvení, definování parametrů na úrovni kanálu, a předávání argumentů při volání kanálu na vyžádání nebo z aktivační události. Zahrnuje také předávání vlastního stavu a kontejnery smyček, tedy iterátory For-each.

Proměnné

Proměnné lze použít uvnitř kanálů k ukládání dočasných hodnot a lze je použít také ve spojení s parametry, které umožňují předávání hodnot mezi kanály, toky dat a dalšími aktivitami.

Další kroky

Tady jsou důležité další kroky k prozkoumání: