Co je to ETL?
ETL je proces, který extrahuje data z různých zdrojových systémů, poté je transformuje (jako je použití výpočtů, zřetězení atd.) A nakonec načte data do systému Data Warehouse. Plnou formou ETL je Extrahovat, Transformovat a Načíst.
Je lákavé si myslet, že vytvoření datového skladu je jednoduše extrakce dat z více zdrojů a načtení do databáze datového skladu. To je daleko od pravdy a vyžaduje složitý proces ETL. Proces ETL vyžaduje aktivní vstupy od různých zúčastněných stran včetně vývojářů, analytiků, testerů, vrcholových manažerů a je technicky náročný.
Aby si systém datového skladu udržel svoji hodnotu jako nástroj pro osoby s rozhodovací pravomocí, musí se měnit s obchodními změnami. ETL je opakující se aktivita (denní, týdenní, měsíční) systému datového skladu a musí být agilní, automatizovaná a dobře zdokumentovaná.
V tomto výukovém programu ETL se naučíte-
- Co je to ETL?
- Proč potřebujete ETL?
- Proces ETL v datových skladech
- Krok 1) Extrakce
- Krok 2) Transformace
- Krok 3) Načítání
- Nástroje ETL
- Osvědčené postupy procesu ETL
Proč potřebujete ETL?
Existuje mnoho důvodů pro přijetí ETL v organizaci:
- Pomáhá společnostem analyzovat jejich obchodní data pro přijímání důležitých obchodních rozhodnutí.
- Transakční databáze nemohou odpovídat na složité obchodní otázky, na které lze odpovědět příkladem ETL.
- Datový sklad poskytuje společné úložiště dat
- ETL poskytuje metodu přesunu dat z různých zdrojů do datového skladu.
- Jak se zdroje dat mění, datový sklad se automaticky aktualizuje.
- Dobře navržený a zdokumentovaný systém ETL je téměř nezbytný pro úspěch projektu Data Warehouse.
- Povolit ověření pravidel pro transformaci, agregaci a výpočty dat.
- Proces ETL umožňuje srovnání ukázkových dat mezi zdrojovým a cílovým systémem.
- Proces ETL může provádět složité transformace a vyžaduje další oblast pro ukládání dat.
- ETL pomáhá migrovat data do datového skladu. Převeďte na různé formáty a typy a dodržujte jeden konzistentní systém.
- ETL je předdefinovaný proces pro přístup a manipulaci se zdrojovými daty do cílové databáze.
- ETL v datovém skladu nabízí hluboký historický kontext pro podnikání.
- Pomáhá zvyšovat produktivitu, protože kodifikuje a znovu používá bez nutnosti technických dovedností.
Proces ETL v datových skladech
ETL je 3krokový proces
Krok 1) Extrakce
V tomto kroku architektury ETL jsou data extrahována ze zdrojového systému do pracovní oblasti. Transformace, pokud existují, se provádějí v pracovní oblasti, aby nedošlo ke snížení výkonu zdrojového systému. Pokud se poškozená data zkopírují přímo ze zdroje do databáze datového skladu, bude vrácení zpět výzvou. Pracovní plocha poskytuje příležitost ověřit extrahovaná data před přesunem do datového skladu.
Datový sklad musí integrovat různé systémy
DBMS, hardware, operační systémy a komunikační protokoly. Zdroje mohou zahrnovat starší aplikace, jako jsou Mainframes, přizpůsobené aplikace, zařízení Point of contact, jako je ATM, přepínače volání, textové soubory, tabulky, ERP, data od prodejců, partneři a další.
Proto je potřeba logická datová mapa, než budou data extrahována a fyzicky načtena. Tato datová mapa popisuje vztah mezi zdroji a cílovými daty.
Tři metody extrakce dat:
- Plná extrakce
- Částečná extrakce - bez oznámení o aktualizaci.
- Částečná extrakce - s oznámením o aktualizaci
Bez ohledu na použitou metodu by extrakce neměla ovlivnit výkon a dobu odezvy zdrojových systémů. Tyto zdrojové systémy jsou živé produkční databáze. Jakékoli zpomalení nebo zablokování by mohlo ovlivnit hospodářský výsledek společnosti.
Některá ověření se provádějí během extrakce:
- Sladit záznamy se zdrojovými daty
- Ujistěte se, že nejsou načteny žádné nevyžádané zprávy nebo nevyžádaná data
- Kontrola datového typu
- Odstraňte všechny typy duplicitních / fragmentovaných dat
- Zkontrolujte, zda jsou všechny klíče na svém místě nebo ne
Krok 2) Transformace
Data extrahovaná ze zdrojového serveru jsou nezpracovaná a nelze je použít v původní podobě. Proto je třeba jej očistit, zmapovat a transformovat. Ve skutečnosti se jedná o klíčový krok, kdy proces ETL přidává hodnotu a mění data tak, aby bylo možné generovat přehledné sestavy BI.
Je to jeden z důležitých konceptů ETL, kde na extrahovaná data aplikujete sadu funkcí. Data, která nevyžadují žádnou transformaci, se nazývají přímý pohyb nebo předávání dat .
V kroku transformace můžete provádět přizpůsobené operace s daty. Například pokud uživatel chce tržby z prodeje, které nejsou v databázi. Nebo pokud je křestní jméno a příjmení v tabulce v různých sloupcích. Před načtením je možné je zřetězit.
Následují problémy s integritou dat:
- Různé pravopisy stejné osoby jako Jon, John atd.
- Existuje několik způsobů, jak označit název společnosti, jako je Google, Google Inc.
- Používání různých jmen jako Cleaveland, Cleveland.
- Může se stát, že různá čísla účtů budou generována různými aplikacemi pro stejného zákazníka.
- V některých datech zůstávají požadované soubory prázdné
- Neplatný produkt shromážděný na POS jako ruční zadání může vést k chybám.
Ověření se provádí během této fáze
- Filtrování - vyberte pouze určité sloupce, které chcete načíst
- Používání pravidel a vyhledávací tabulky pro standardizaci dat
- Převod znakové sady a zpracování kódování
- Převod měrných jednotek, jako je převod data a času, převody měn, číselné převody atd.
- Kontrola validace datového prahu. Například věk nesmí být větší než dvě číslice.
- Ověření toku dat z pracovní oblasti do mezilehlých tabulek.
- Povinná pole by neměla zůstat prázdná.
- Čištění (například mapování NULL na 0 nebo Pohlaví Muž na „M“ a Žena na „F“ atd.)
- Rozdělte sloupec na více a sloučte více sloupců do jednoho sloupce.
- Transpozice řádků a sloupců,
- Ke sloučení dat použijte vyhledávání
- Pomocí jakékoli složité validace dat (např. Pokud jsou první dva sloupce v řádku prázdné, pak automaticky odmítne zpracování řádku)
Krok 3) Načítání
Načítání dat do cílové databáze datových skladů je posledním krokem procesu ETL. V typickém datovém skladu je třeba načíst obrovský objem dat za relativně krátkou dobu (noci). Proces načítání by proto měl být optimalizován pro výkon.
V případě selhání načítání by měly být mechanismy obnovy nakonfigurovány tak, aby se restartovaly od bodu selhání bez ztráty integrity dat. Správci Data Warehouse potřebují sledovat, pokračovat, zrušit načtení podle převažujícího výkonu serveru.
Druhy nakládky:
- Počáteční načtení - naplnění všech tabulek Data Warehouse
- Inkrementální zatížení - periodické aplikace průběžných změn podle potřeby.
- Full Refresh - vymazání obsahu jedné nebo více tabulek a opětovné načtení s novými daty.
Ověření načtení
- Ujistěte se, že data pole klíče chybí ani nejsou null.
- Testujte pohledy modelování na základě cílových tabulek.
- Zkontrolujte kombinované hodnoty a vypočítané míry.
- Kontroly dat v tabulce dimenzí i v tabulce historie.
- Zkontrolujte zprávy BI na načtené tabulce faktů a dimenzí.
Nástroje ETL
Na trhu existuje mnoho nástrojů pro datové sklady. Zde jsou některé z nejvýznamnějších:
1. MarkLogic:
MarkLogic je řešení pro datové sklady, které usnadňuje a zrychluje integraci dat pomocí řady podnikových funkcí. Může se dotazovat na různé typy dat, jako jsou dokumenty, vztahy a metadata.
https://www.marklogic.com/product/getting-started/
2. Oracle:
Oracle je přední průmyslová databáze. Nabízí širokou škálu možností řešení Data Warehouse pro místní i cloudové služby. Pomáhá optimalizovat zkušenosti zákazníků zvyšováním provozní efektivity.
https://www.oracle.com/index.html
3. Amazon RedShift:
Amazon Redshift je nástroj Datawarehouse. Jedná se o jednoduchý a nákladově efektivní nástroj pro analýzu všech typů dat pomocí standardních nástrojů SQL a existujících nástrojů BI. Umožňuje také spouštět složité dotazy proti petabajtům strukturovaných dat.
https://aws.amazon.com/redshift/?nc2=h_m1
Zde je kompletní seznam užitečných nástrojů datového skladu.
Osvědčené postupy procesu ETL
Níže jsou uvedeny osvědčené postupy pro kroky procesu ETL:
Nikdy se nepokoušejte vyčistit všechna data:
Každá organizace by chtěla mít všechna data čistá, ale většina z nich není připravena platit za čekání nebo není připravena čekat. Vyčistit to všechno by prostě trvalo příliš dlouho, takže je lepší se nepokoušet očistit všechna data.
Nikdy nic nečistěte:
Vždy plánujte něco vyčistit, protože největším důvodem pro vybudování Data Warehouse je nabídnout čistší a spolehlivější data.
Určete náklady na čištění dat:
Před vyčištěním všech špinavých dat je důležité určit náklady na čištění pro každý špinavý datový prvek.
Chcete-li urychlit zpracování dotazů, použijte pomocná zobrazení a indexy:
Chcete-li snížit náklady na úložiště, ukládejte souhrnná data na diskové pásky. Rovněž je nutný kompromis mezi objemem dat, která mají být uložena, a jejich podrobným využitím. Kompromis na úrovni podrobnosti dat ke snížení nákladů na úložiště.
Souhrn:
- ETL znamená Extrahovat, Transformovat a Načíst.
- ETL poskytuje metodu přesunu dat z různých zdrojů do datového skladu.
- V prvním kroku extrakce jsou data extrahována ze zdrojového systému do pracovní oblasti.
- V transformačním kroku jsou data extrahovaná ze zdroje očištěna a transformována.
- Načítání dat do cílového datového skladu je posledním krokem procesu ETL.