Metodologie úspěšnosti implementace Synapse: Posouzení prostředí
Poznámka:
Tento článek je součástí úspěchu implementace Azure Synapse podle řady článků. Přehled série najdete v tématu Úspěšné implementace Azure Synapse podle návrhu.
Prvním krokem při implementaci služby Azure Synapse Analytics je provedení posouzení vašeho prostředí. Posouzení vám poskytne možnost shromáždit všechny dostupné informace o vašem stávajícím prostředí, požadavcích na životní prostředí, požadavcích projektu, omezeních, časových osách a bodech bolesti. Tyto informace tvoří základ pozdějších vyhodnocení a aktivit kontrolních bodů. Bude neocenitelný, pokud přijde čas ověřit a porovnat s projektovým řešením podle plánu, návrhu a vývoje. Doporučujeme vyhradit si dobrou dobu, abyste shromáždili všechny informace a měli jistotu, že máte potřebné diskuze s příslušnými skupinami. Mezi relevantní skupiny můžou patřit účastníci projektu, podnikoví uživatelé, návrháři řešení a odborníci na danou problematiku (MSP) stávajícího řešení a prostředí.
Posouzení se stane průvodcem, který vám pomůže vyhodnotit návrh řešení a provést informovaná technologická doporučení k implementaci Azure Synapse.
Posouzení úloh
Posouzení úloh se zabývá prostředím, analytickými rolemi úloh, ETL/ELT, sítěmi a zabezpečením, prostředím Azure a spotřebou dat.
Prostředí
Pro prostředí vyhodnoťte následující body.
- Popište stávající analytickou úlohu:
- Jaké jsou úlohy (například datový sklad nebo velké objemy dat)?
- Jak tato úloha pomáhá firmě? Jaké jsou scénáře použití?
- Jaký je obchodní faktor pro tuto analytickou platformu a potenciální migraci?
- Shromážděte podrobnosti o stávajících možnostech architektury, návrhu a implementace.
- Shromážděte podrobnosti o všech existujících nadřazených a podřízených závislých komponentách a konzumentech.
- Migrujete existující datový sklad (například Microsoft SQL Server, Microsoft Analytics Platform System (APS), Netezza, Snowflake nebo Teradata)?
- Migrujete platformu pro velké objemy dat (například Cloudera nebo Hortonworks)?
- Shromážděte diagramy architektury a toku dat pro aktuální analytické prostředí.
- Kde jsou zdroje dat pro plánované analytické úlohy umístěné (Azure, další poskytovatelé cloudu nebo místní)?
- Jaká je celková velikost existujících datových sad (historických a přírůstkových)? Jaká je aktuální míra růstu vašich datových sad? Jaká je předpokládané tempo růstu datových sad za příštích 2 až 5 let?
- Máte existující datové jezero? Shromážděte co nejvíce podrobností o typech souborů (například Parquet nebo CSV), velikostech souborů a konfiguraci zabezpečení.
- Máte částečně strukturovaná nebo nestrukturovaná data ke zpracování a analýze?
- Popište povahu zpracování dat (dávkové zpracování nebo zpracování v reálném čase).
- Potřebujete interaktivní zkoumání dat z relačních dat, data lake nebo jiných zdrojů?
- Potřebujete analýzu a zkoumání dat v reálném čase z provozních zdrojů dat?
- Jaké jsou body bolesti a omezení v aktuálním prostředí?
- Jaké nástroje správy zdrojového kódu a DevOps dnes používáte?
- Máte případ použití k vytvoření hybridního (cloudového a místního) analytického řešení, pouze cloudu nebo více cloudu?
- Shromážděte informace o stávajícím cloudovém prostředí. Jedná se o jednoho poskytovatele cloudu nebo poskytovatele s více cloudy?
- Shromážděte plány o budoucím cloudovém prostředí. Bude to jeden poskytovatel cloudu nebo poskytovatel s více cloudy?
- Jaké jsou požadavky RPO/RTO/HA/SLA v existujícím prostředí?
- Jaké jsou požadavky RPO/RTO/HA/SLA v plánovaném prostředí?
Analytické role úloh
U rolí analytických úloh vyhodnoťte následující body.
- Popište různé role (datový vědec, datový inženýr, datový analytik a další).
- Popište požadavek na řízení přístupu analytické platformy pro tyto role.
- Identifikujte vlastníka platformy, který zodpovídá za zřízení výpočetních prostředků a udělení přístupu.
- Popište, jak různé role dat aktuálně spolupracují.
- Spolupracuje na stejné analytické platformě více týmů? Pokud ano, jaké jsou požadavky na řízení přístupu a izolaci pro každý z těchto týmů?
- Jaké klientské nástroje používají koncoví uživatelé k interakci s analytickou platformou?
ETL/ELT, transformace a orchestrace
V případě ETL/ELT, transformace a orchestrace vyhodnoťte následující body.
- Jaké nástroje dnes používáte pro příjem dat (ETL nebo ELT)?
- Kde tyto nástroje existují v existujícím prostředí (v místním prostředí nebo v cloudu)?
- Jaké jsou aktuální požadavky na načtení a aktualizaci dat (v reálném čase, mikro dávce, hodinově, denně, týdně nebo měsíčně)?
- Popište požadavky na transformaci pro každou vrstvu (velké objemy dat, datové jezero, datový sklad).
- Jaký je aktuální programovací přístup k transformaci dat (bez kódu, nízkého kódu, programování, jako je SQL, Python, Scala, C# nebo jiný)?
- Jaký je upřednostňovaný plánovaný programovací přístup k transformaci dat (bez kódu, nízkého kódu, programování, jako je SQL, Python, Scala, C# nebo jiný)?
- Jaké nástroje se aktuálně používají k orchestraci dat k automatizaci procesu řízeného daty?
- Kde jsou zdroje dat pro vaše stávající ETL umístěné (Azure, jiný poskytovatel cloudu nebo místní)?
- Jaké jsou existující nástroje pro spotřebu dat (nástroje generování sestav, nástroje BI, opensourcové nástroje), které vyžadují integraci s analytickou platformou?
- Jaké jsou nástroje plánované spotřeby dat (nástroje pro vytváření sestav, nástroje BI, opensourcové nástroje), které budou vyžadovat integraci s analytickou platformou?
Sítě a zabezpečení
V případě sítí a zabezpečení vyhodnoťte následující body.
- Jaké zákonné požadavky máte pro svá data?
- Pokud vaše data obsahují obsah zákazníků, odvětví platebních karet (PCI) nebo zákon o odpovědnosti za přenositelnost a odpovědnost za zdravotní pojištění z roku 1996 (HIPAA), má vaše skupina zabezpečení pro tato data certifikaci Azure? Pokud ano, pro které služby Azure?
- Popište požadavky na autorizaci a ověřování uživatelů.
- Existují problémy se zabezpečením, které by mohly omezit přístup k datům během implementace?
- Jsou k dispozici testovací data, která se dají použít při vývoji a testování?
- Popište požadavky na zabezpečení sítě organizace v analytickém výpočetním prostředí a úložišti (privátní síť, veřejná síť nebo omezení brány firewall).
- Popište požadavky na zabezpečení sítě pro klientské nástroje pro přístup k analytickému výpočetnímu prostředí a úložišti (peered network, privátní koncový bod nebo jiný).
- Popište aktuální nastavení sítě mezi místním prostředím a Azure (Azure ExpressRoute, site-to-site nebo jiným).
Při posuzování využijte následující kontrolní seznamy možných požadavků.
- Ochrana dat:
- Šifrování přenášených dat
- Šifrování neaktivních uložených dat (výchozí klíče nebo klíče spravované zákazníkem)
- Zjišťování a klasifikace dat
- Řízení přístupu:
- Zabezpečení na úrovni objektů
- Zabezpečení na úrovni řádků
- Zabezpečení na úrovni sloupců
- Dynamické maskování dat
- Ověřování:
- Přihlášení SQL
- Microsoft Entra ID
- Vícefaktorové ověřování (MFA)
- Zabezpečení sítě:
- Virtuální sítě
- Brána firewall
- Azure ExpressRoute
- Ochrana před hrozbami:
- Detekce hrozeb
- Auditování
- Posouzení ohrožení zabezpečení
Další informace najdete v dokumentu white paper o zabezpečení služby Azure Synapse Analytics.
Prostředí Azure
Pro prostředí Azure vyhodnoťte následující body.
- Aktuálně používáte Azure? Používá se pro produkční úlohy?
- Pokud používáte Azure, které služby používáte? Které oblasti používáte?
- Používáte Azure ExpressRoute? Jaká je jeho šířka pásma?
- Máte schválení rozpočtu pro zřízení požadovaných služeb Azure?
- Jak aktuálně zřizujete a spravujete prostředky (Azure Resource Manager (ARM) nebo Terraform)?
- Znáte váš klíčový tým Synapse Analytics? Vyžaduje se nějaké trénování?
Spotřeba dat
Pro spotřebu dat vyhodnoťte následující body.
- Popište, jak a jaké nástroje aktuálně používáte k provádění aktivit, jako je ingestování, zkoumání, příprava a vizualizace dat.
- Určete, jaké nástroje plánujete použít k provádění aktivit, jako je ingestování, zkoumání, příprava a vizualizace dat.
- Jaké aplikace se plánují pro interakci s analytickou platformou (Microsoft Power BI, Microsoft Excel, Microsoft SQL Server Reporting Services, Tableau nebo jinými)?
- Identifikujte všechny příjemce dat.
- Identifikujte požadavky na export dat a sdílení dat.
Posouzení služeb Azure Synapse
Posouzení služeb Azure Synapse se zabývá službami v rámci Azure Synapse. Azure Synapse má následující komponenty pro výpočty a přesun dat:
- Synapse SQL: Distribuovaný dotazovací systém pro Transact-SQL (T-SQL), který umožňuje scénáře datových skladů a virtualizace dat. Rozšiřuje také T-SQL o scénáře streamování a strojového učení (ML). Synapse SQL nabízí bezserverové i vyhrazené modely prostředků.
- Bezserverový fond SQL: Distribuovaný systém zpracování dat vytvořený pro rozsáhlé datové a výpočetní funkce. Neexistuje žádná infrastruktura pro nastavení ani clustery, které by bylo potřeba udržovat. Tato služba je vhodná pro neplánované nebo nárazové úlohy. Mezi doporučené scénáře patří rychlé zkoumání dat u souborů přímo v datovém jezeře, logickém datovém skladu a transformaci nezpracovaných dat.
- Vyhrazený fond SQL: Představuje kolekci analytických prostředků, které jsou zřízené při použití Synapse SQL. Velikost vyhrazeného fondu SQL (dříve SQL DW) je určena jednotkami Skladování Dat (DWU). Tato služba je vhodná pro datový sklad s předvídatelnými a vysoce výkonnými průběžnými úlohami nad daty uloženými v tabulkách SQL.
- Fond Apache Spark: Hluboce a bezproblémově integruje Apache Spark, což je nejoblíbenější opensourcový modul pro velké objemy dat používaný pro přípravu dat, přípravu dat, ETL a ML.
- Kanály integrace dat: Azure Synapse obsahuje stejný modul pro integraci dat a prostředí jako Azure Data Factory (ADF). Umožňují vytvářet bohaté kanály ETL ve velkém měřítku bez opuštění Azure Synapse.
Pokud chcete pomoct určit nejlepší typ fondu SQL (vyhrazený nebo bezserverový), vyhodnoťte následující body.
- Chcete vytvořit tradiční relační datový sklad tím, že si rezervujete výpočetní výkon pro data uložená v tabulkách SQL?
- Vyžadují vaše případy použití předvídatelný výkon?
- Chcete vytvořit logický datový sklad nad datovým jezerem?
- Chcete se dotazovat na data přímo z datového jezera?
- Chcete prozkoumat data z datového jezera?
Následující tabulka porovnává dva typy fondů Synapse SQL.
Porovnání | Vyhrazený fond SQL | Bezserverový fond SQL |
---|---|---|
Nabídky hodnoty | Plně spravované funkce datového skladu Předvídatelný a vysoký výkon pro průběžné úlohy Optimalizované pro spravovaná (načtená) data. | Snadno se pusťte do práce a prozkoumejte data Data Lake. Lepší celkové náklady na vlastnictví (TCO) pro ad hoc a přerušované úlohy. Optimalizované pro dotazování dat v datovém jezeře. |
Úlohy | Ideální pro průběžné úlohy. Načítání zvyšuje výkon s větší složitostí. Nabíjení za DWU (pokud je velikost dobře) bude nákladově výhodné. | Ideální pro ad hoc nebo přerušované úlohy. Není potřeba načítat data, takže je jednodušší spustit a spustit. Účtování za využití bude nákladově výhodné. |
Výkon dotazů | Zajišťuje vysokou souběžnost a nízkou latenci. Podporuje bohaté možnosti ukládání do mezipaměti, včetně materializovaných zobrazení. Existuje možnost zvolit kompromisy se správou úloh (WLM). | Nehodí se pro dotazy řídicího panelu. Doba odezvy v milisekundách se neočekává. Funguje jenom u externích dat. |
Posouzení vyhrazeného fondu SQL
Pro posouzení vyhrazeného fondu SQL vyhodnoťte následující body platformy.
- Jaká je aktuální platforma datového skladu (Microsoft SQL Server, Netezza, Teradata, Greenplum nebo jiné)?
- U úlohy migrace určete, jak se zařízení a model používá pro každé prostředí. Uveďte podrobnosti o procesorech, grafických procesorech a paměti.
- Kdy byl hardware zakoupen pro migraci zařízení? Došlo k úplnému vyřazení zařízení? Pokud ne, kdy se odpisy ukončí? A kolik kapitálových výdajů zbývá?
- Existují nějaké diagramy architektury hardwaru a sítě?
- Kde se nacházejí zdroje dat pro váš plánovaný datový sklad (Azure, jiný poskytovatel cloudu nebo místní)?
- Jaké jsou platformy pro hostování dat pro váš datový sklad (Microsoft SQL Server, Azure SQL Database, DB2, Oracle, Azure Blob Storage, AWS, Hadoop nebo jiné)?
- Jsou některé ze zdrojů dat datové sklady? Pokud ano, které?
- Identifikujte všechny scénáře načítání dat ETL, ELT a dat (dávková okna, streamování, téměř v reálném čase). Identifikujte stávající smlouvy o úrovni služeb (SLA) pro každý scénář a zdokumentujte očekávané smlouvy SLA v novém prostředí.
- Jaká je aktuální velikost datového skladu?
- Jaká míra růstu datové sady se zaměřuje na vyhrazený fond SQL?
- Popište prostředí, která používáte dnes (vývoj, testování nebo produkční prostředí).
- Jaké nástroje se aktuálně používají pro přesun dat (ADF, Microsoft SQL Server Integration Services (SSIS), robocopy, Informatica, SFTP nebo jiné)?
- Plánujete načíst data v reálném čase nebo téměř v reálném čase?
Vyhodnoťte následující body databáze.
- Jaký je počet objektů v každém datovém skladu (schémata, tabulky, zobrazení, uložené procedury, funkce)?
- Jedná se o hvězdicové schéma, sněhové vločkové schéma nebo jiný návrh?
- Jaké jsou největší tabulky z hlediska velikosti a počtu záznamů?
- Jaké jsou nejširší tabulky z hlediska počtu sloupců?
- Je už pro váš datový sklad navržený datový model? Jedná se o návrh Kimballu, Inmona nebo hvězdicového schématu?
- Používají se pomalu se měnící dimenze (SCD)? Pokud ano, jaké typy?
- Bude sémantická vrstva implementována pomocí relačních datových mart nebo analysis Services (tabulkových nebo multidimenzionálních) nebo jiného produktu?
- Jaké jsou požadavky na ha/RPO/RTO/archivaci dat?
- Jaké jsou požadavky na replikaci oblastí?
Vyhodnoťte následující charakteristiky úloh.
- Jaký je odhadovaný počet souběžných uživatelů nebo úloh, které přistupují k datovému skladu během špičky?
- Jaký je odhadovaný počet souběžných uživatelů nebo úloh, které přistupují k datovému skladu mimo špičku?
- Existuje časové období, kdy nebudou žádní uživatelé nebo úlohy?
- Jaké jsou očekávání výkonu spouštění dotazů u interaktivních dotazů?
- Jaké jsou očekávání výkonu načítání dat pro denní, týdenní nebo měsíční načítání nebo aktualizace dat?
- Jaké jsou očekávání provádění dotazů pro generování sestav a analytické dotazy?
- Jak složité budou nejčastěji spouštěné dotazy?
- Jaké procento celkové velikosti datové sady je vaše aktivní datová sada?
- Přibližně jaké procento úlohy se očekává při načítání nebo aktualizaci, dávkovém zpracování nebo generování sestav, interaktivním dotazování a analytickém zpracování?
- Identifikace vzorů a platforem využívajících data:
- Aktuální a plánovaná metoda vytváření sestav a nástroje
- Které aplikace nebo analytické nástroje budou mít přístup k datovému skladu?
- Počet souběžných dotazů?
- Průměrný počet aktivníchdotazůch
- Jaká je povaha přístupu k datům (interaktivní, ad hoc, export nebo jiné)?
- Role dat a úplný popis jejich požadavků na data
- Maximální počet souběžných připojení
- Model sla výkonu dotazů podle:
- Uživatelé řídicího panelu
- Dávkové generování sestav.
- Uživatelé ML.
- Proces ETL.
- Jaké jsou požadavky na zabezpečení pro stávající prostředí a pro nové prostředí (zabezpečení na úrovni řádků, zabezpečení na úrovni sloupců, řízení přístupu, šifrování a další)?
- Máte požadavky na integraci bodování modelu ML s T-SQL?
Posouzení bezserverového fondu SQL
Bezserverový fond SQL Synapse podporuje tři hlavní případy použití.
- Základní zjišťování a zkoumání: Rychle zdůvodnění dat v různých formátech (Parquet, CSV, JSON) ve vašem datovém jezeře, abyste mohli naplánovat, jak z nich extrahovat přehledy.
- Logický datový sklad: Poskytuje relační abstrakci nad nezpracovaná nebo různorodá data bez přemístění a transformace dat, což umožňuje vždy aktuální zobrazení dat.
- Transformace dat: Jednoduchý, škálovatelný a výkonný způsob, jak transformovat data v jezeře pomocí T-SQL, aby je bylo možné řadit do BI a dalších nástrojů nebo je načíst do relačního úložiště dat (databáze Synapse SQL, Azure SQL Database nebo jiné).
Různé role dat můžou využívat bezserverový fond SQL:
- Datoví inženýři mohou prozkoumat datové jezero, transformovat a připravit data pomocí této služby a zjednodušit jejich kanály transformace dat.
- Datoví vědci můžou rychle zjistit obsah a strukturu dat v datovém jezeře díky funkcím, jako je OPENROWSET a automatické odvozování schématu.
- Datoví analytici můžou zkoumat data a externí tabulky Sparku vytvořené datovými vědci nebo datovými inženýry pomocí známých příkazů T-SQL nebo jejich oblíbených nástrojů pro dotazy.
- Odborníci na BI můžou rychle vytvářet sestavy Power BI nad daty v tabulkách Data Lake a Spark.
Poznámka:
Jazyk T-SQL se používá ve vyhrazeném fondu SQL i v bezserverovém fondu SQL, ale v sadě podporovaných funkcí existují určité rozdíly. Další informace o funkcích T-SQL podporovaných ve službě Synapse SQL (vyhrazené a bezserverové) najdete v tématu Funkce jazyka Transact-SQL podporované v Azure Synapse SQL.
Pro posouzení bezserverového fondu SQL vyhodnoťte následující body.
- Máte případy použití ke zjišťování a zkoumání dat z datového jezera pomocí relačních dotazů (T-SQL)?
- Máte případy použití k vytvoření logického datového skladu nad datovým jezerem?
- Určete, jestli existují případy použití k transformaci dat v datovém jezeře bez prvního přesunu dat z datového jezera.
- Jsou vaše data již ve službě Azure Data Lake Storage (ADLS) nebo Azure Blob Storage?
- Pokud už data jsou v ADLS, máte v datovém jezeře dobrou strategii oddílů?
- Máte provozní data ve službě Azure Cosmos DB? Máte případy použití pro analýzu v reálném čase ve službě Azure Cosmos DB, aniž by to mělo vliv na transakce?
- Identifikujte typy souborů v datovém jezeře.
- Identifikujte smlouvu SLA výkonu dotazů. Vyžaduje váš případ použití předvídatelný výkon a náklady?
- Máte neplánované nebo nárazové analytické úlohy SQL?
- Identifikace modelu a platforem využívajících data:
- Aktuální a plánovaná metoda vytváření sestav a nástroje
- Které aplikace nebo analytické nástroje budou mít přístup k bezserverovém fondu SQL?
- Průměrný počet aktivníchdotazůch
- Jaká je povaha přístupu k datům (interaktivní, ad hoc, export nebo jiné)?
- Role dat a úplný popis jejich požadavků na data
- Maximální počet souběžných připojení
- Složitost dotazů?
- Jaké jsou požadavky na zabezpečení (řízení přístupu, šifrování a další)?
- Jaké jsou požadované funkce T-SQL (uložené procedury nebo funkce)?
- Určete počet dotazů, které budou odeslány do bezserverového fondu SQL, a velikost sady výsledků každého dotazu.
Tip
Pokud s bezserverovými fondy SQL začínáte, doporučujeme projít si studijní program vytváření řešení pro analýzu dat pomocí bezserverových fondů SQL Azure Synapse.
Posouzení fondu Sparku
Fondy Sparku ve službě Azure Synapse umožňují následující klíčové scénáře.
- Příprava dat/ Příprava dat: Apache Spark obsahuje mnoho jazykových funkcí, které podporují přípravu a zpracování velkých objemů dat. Příprava a zpracování můžou být cennější a umožní jejich využívání jinými službami Azure Synapse. Je povolená prostřednictvím více jazyků (C#, Scala, PySpark, Spark SQL) a pomocí zadaných knihoven pro zpracování a připojení.
- Strojové učení: Apache Spark je součástí knihovny MLlib, což je knihovna ML založená na Sparku, kterou můžete použít z fondu Sparku. Fondy Sparku také zahrnují Anaconda, což je distribuce Pythonu, která se skládá z různých balíčků pro datové vědy, včetně ML. Apache Spark ve službě Synapse navíc poskytuje předem nainstalované knihovny pro Učení počítače Microsoftu, což je architektura RESTful ML odolná proti chybám, elastická a RESTful. V kombinaci s integrovanou podporou poznámkových bloků máte bohaté prostředí pro vytváření aplikací ML.
Poznámka:
Další informace najdete v tématu Apache Spark ve službě Azure Synapse Analytics.
Azure Synapse je také kompatibilní se službou Linux Foundation Delta Lake. Delta Lake je opensourcová vrstva úložiště, která přináší transakce ACID (atomicity, konzistence, izolace a stálosti) do úloh Apache Sparku a velkých objemů dat. Další informace najdete v tématu Co je Delta Lake.
Pro posouzení fondu Spark vyhodnoťte následující body.
- Identifikujte úlohy, které vyžadují přípravu dat nebo přípravu dat.
- Jasně definovat typy transformací.
- Určete, jestli máte nestrukturovaná data ke zpracování.
- Při migraci z existující úlohy Spark nebo Hadoop:
- Jaká je stávající platforma pro velké objemy dat (Cloudera, Hortonworks, cloudové služby nebo jiné)?
- Pokud se jedná o migraci z místního prostředí, vypršela platnost hardwaru nebo vypršela platnost licencí? Pokud ne, kdy dojde k odpisování nebo vypršení platnosti?
- Jaký je existující typ clusteru?
- Jaké jsou požadované knihovny a verze Sparku?
- Jedná se o migraci Hadoopu do Sparku?
- Jaké jsou aktuální nebo upřednostňované programovací jazyky?
- Jaký je typ úlohy (velké objemy dat, ML nebo jiné)?
- Jaké jsou stávající a plánované klientské nástroje a platformy pro vytváření sestav?
- Jaké jsou požadavky na zabezpečení?
- Existují nějaké aktuální bolesti a omezení?
- Plánujete používat nebo aktuálně používáte Delta Lake?
- Jak dnes spravujete balíčky?
- Identifikujte požadované typy výpočetních clusterů.
- Určete, jestli se vyžaduje přizpůsobení clusteru.
Tip
Pokud s fondy Sparku začínáte, doporučujeme projít si studijní program Provádějte přípravu dat pomocí fondů Azure Synapse Apache Spark.
Další kroky
V dalším článku o úspěchu Azure Synapse podle řady návrhů se dozvíte, jak vyhodnotit návrh pracovního prostoru Synapse a ověřit, že splňuje pokyny a požadavky.