ETL (Extract, Transform and Load) folyamat az adattárházban
Mi az ETL?
ETL egy olyan folyamat, amely a különböző forrásrendszerekből kivonja az adatokat, majd átalakítja az adatokat (például számításokat, összefűzéseket stb.), végül betölti az adatokat az Adattárház rendszerbe. Az ETL teljes formája a kivonás, átalakítás és betöltés.
Csábító azt gondolni, hogy egy adattárház létrehozása egyszerűen több forrásból nyeri ki az adatokat, és betölti az adattárház adatbázisába. Ez távol áll az igazságtól, és összetett ETL-folyamatot igényel. Az ETL folyamat különböző érdekelt felektől, köztük fejlesztőktől, elemzőktől, tesztelőktől, felsővezetőktől aktív közreműködést igényel, és technikailag nagy kihívást jelent.
Annak érdekében, hogy megőrizze értékét a döntéshozók eszközeként, az adattárház rendszernek az üzleti változásokkal együtt kell változnia. Az ETL egy adattárház rendszer (napi, heti, havi) ismétlődő tevékenysége, amelynek agilisnak, automatizáltnak és jól dokumentáltnak kell lennie.
Miért van szükséged ETL-re?
Számos oka van az ETL bevezetésének a szervezetben:
- Segíti a vállalatokat üzleti adataik elemzésében a kritikus üzleti döntések meghozatalához.
- A tranzakciós adatbázisok nem tudnak válaszolni olyan összetett üzleti kérdésekre, amelyekre ETL-példán keresztül lehet válaszolni.
- Az adattárház közös adattárat biztosít
- Az ETL módszert biztosít az adatok különböző forrásokból egy adattárházba való áthelyezésére.
- Az adatforrások változásával az Adattárház automatikusan frissül.
- A jól megtervezett és dokumentált ETL rendszer szinte elengedhetetlen egy Data Warehouse projekt sikeréhez.
- Az adatátalakítási, összesítési és számítási szabályok ellenőrzésének engedélyezése.
- Az ETL folyamat lehetővé teszi a mintaadatok összehasonlítását a forrás és a célrendszer között.
- Az ETL folyamat összetett átalakításokat tud végrehajtani, és extra területet igényel az adatok tárolására.
- Az ETL segít az adatok adattárházba való migrálásában. Konvertálja a különböző formátumokra és típusokra, hogy egy egységes rendszerhez csatlakozzon.
- Az ETL egy előre meghatározott folyamat a forrásadatoknak a céladatbázisba történő elérésére és manipulálására.
- Az adattárházban lévő ETL mély történelmi kontextust kínál az üzlet számára.
- Hozzájárul a termelékenység javításához, mivel technikai ismeretek nélkül kódol és újrafelhasznál.
ETL folyamat az adattárházakban
Az ETL egy 3 lépésből álló folyamat
1. lépés) Kivonás
Az ETL architektúrának ebben a lépésében az adatok a forrásrendszerből az állomásozási területre kerülnek kinyerésre. Az átalakítások, ha vannak ilyenek, az átmeneti területen történnek, hogy a forrásrendszer teljesítménye ne csökkenjen. Ezenkívül, ha a sérült adatokat közvetlenül a forrásból az adattárház-adatbázisba másolják, a visszaállítás kihívást jelent. Az átmeneti terület lehetőséget ad a kivont adatok érvényesítésére, mielőtt azok az adattárházba kerülnének.
Az adattárháznak integrálnia kell a különböző rendszereket
DBMS, hardver, Operarendszerek és kommunikációs protokollok. A források lehetnek örökölt alkalmazások, például nagyszámítógépek, testreszabott alkalmazások, kapcsolattartó eszközök, például ATM, híváskapcsolók, szöveges fájlok, táblázatok, ERP, szállítóktól, partnerektől származó adatok, többek között.
Ezért az adatok fizikai kinyerése és betöltése előtt logikai adattérképre van szükség. Ez az adattérkép a források és a céladatok közötti kapcsolatot írja le.
Három adatkinyerési módszer:
- Teljes kivonás
- Részleges kivonás - frissítési értesítés nélkül.
- Részleges kivonás – frissítési értesítéssel
Az alkalmazott módszertől függetlenül a kivonás nem befolyásolhatja a forrásrendszerek teljesítményét és válaszidejét. Ezek a forrásrendszerek élő termelési adatbázisok. Bármilyen lassítás vagy zárolás hatással lehet a vállalat eredményére.
Néhány érvényesítés a kivonás során történik:
- Hangolja össze a rekordokat a forrásadatokkal
- Győződjön meg arról, hogy nincs spam/nem kívánt adat betöltve
- Adattípus ellenőrzés
- Távolítson el minden típusú ismétlődő/töredezett adatot
- Ellenőrizze, hogy minden kulcs a helyén van-e vagy sem
2. lépés) Átalakítás
A forrásszerverről kinyert adatok nyersek, és nem használhatók eredeti formájában. Ezért meg kell tisztítani, feltérképezni és átalakítani. Valójában ez a kulcsfontosságú lépés, ahol az ETL-folyamat értéket ad és megváltoztatja az adatokat úgy, hogy értelmes BI-jelentések készíthetők.
Ez az egyik fontos ETL-fogalom, ahol függvénykészletet alkalmaz a kivont adatokon. Az átalakítást nem igénylő adatokat ún közvetlen mozgás or átmenni az adatokon.
Az átalakítási lépésben testreszabott műveleteket hajthat végre az adatokon. Például, ha a felhasználó olyan árbevétel-összeget szeretne, amely nem szerepel az adatbázisban. Vagy ha egy táblázatban a keresztnév és a vezetéknév különböző oszlopokban van. Lehetőség van a betöltés előtt összefűzni őket.
Az alábbiakban az adatok találhatók Integrity Feladatok:
- Ugyanannak a személynek különböző írásmódja, mint például Jon, John stb.
- Számos módja van a cégnév jelölésének, például a Google, Google Inc.
- Különböző nevek használata, például Cleaveland, Cleveland.
- Előfordulhat, hogy ugyanazon ügyfél számára különböző alkalmazások különböző számlaszámokat generálnak.
- Egyes adatoknál a szükséges fájlok üresek maradnak
- A POS-ban kézi bevitelként begyűjtött érvénytelen termék hibákhoz vezethet.
Az ellenőrzések ebben a szakaszban történnek
- Szűrés – Csak bizonyos oszlopokat válasszon betöltésre
- Szabályok és keresőtáblák használata az adatok szabványosításához
- Karakterkészlet átalakítás és kódolás kezelése
- Mértékegységek átváltása, például a dátum és idő átváltása, a pénznemek átváltása, a számszerű átváltás stb.
- Adatküszöb érvényesítési ellenőrzés. Például az életkor nem lehet több két számjegynél.
- Adatfolyam érvényesítése az állomásozási területről a köztes táblákhoz.
- A kötelező mezőket nem szabad üresen hagyni.
- Tisztítás (például a NULL leképezése 0-ra vagy a Nem férfi „M” és a nő „F”-re stb.)
- Egy oszlop felosztása többszörösekre, és több oszlop összevonása egyetlen oszlopba.
- sorok és oszlopok transzponálása,
- Használjon kereséseket az adatok egyesítéséhez
- Bármilyen összetett adatellenőrzés használata (pl. ha egy sor első két oszlopa üres, akkor a sor automatikusan elutasítja a feldolgozást)
3. lépés) Betöltés
Az adatok betöltése a céladattárház adatbázisba az ETL folyamat utolsó lépése. Egy tipikus adattárházban hatalmas mennyiségű adatot kell betölteni viszonylag rövid idő alatt (éjszakák). Ezért a betöltési folyamatot a teljesítmény szempontjából optimalizálni kell.
Betöltési hiba esetén a helyreállítási mechanizmusokat úgy kell konfigurálni, hogy az adatintegritás elvesztése nélkül induljanak újra a meghibásodás helyétől. A Data Warehouse adminisztrátorainak figyelniük kell, folytatniuk és meg kell szakítaniuk a betöltéseket a szerver aktuális teljesítményének megfelelően.
A töltés típusai:
- Kezdeti terhelés — az összes Data Warehouse tábla feltöltése
- Növekményes terhelés – szükség szerint rendszeresen alkalmazza a folyamatos változtatásokat.
- Teljes frissítés -egy vagy több tábla tartalmának törlése és friss adatokkal való újratöltés.
Ellenőrzés betöltése
- Győződjön meg arról, hogy a kulcsmező adatai sem hiányzóak, sem nullak.
- Tesztelje a modellezési nézeteket a céltáblázatok alapján.
- Ellenőrizze a kombinált értékeket és a számított mértékeket.
- Adatellenőrzések a dimenziótáblában és az előzménytáblázatban.
- Ellenőrizze a BI-jelentéseket a betöltött tény- és dimenziótáblázaton.
ETL eszközök
Sok ETL eszközök kaphatók a piacon. Íme néhány legjelentősebb:
1. MarkLogic:
A MarkLogic egy adattárház-megoldás, amely egyszerűbbé és gyorsabbá teszi az adatok integrációját számos vállalati funkció segítségével. Lekérdezhet különféle típusú adatokat, például dokumentumokat, kapcsolatokat és metaadatokat.
https://www.marklogic.com/product/getting-started/
2. Oracle:
Oracle az iparág vezető adatbázisa. A Data Warehouse megoldások széles választékát kínálja helyszíni és felhőben egyaránt. A működési hatékonyság növelésével segíti az ügyfelek élményének optimalizálását.
https://www.oracle.com/index.html
3. Amazon PirosShift:
Amazon A Redshift az adattárház eszköz. Ez egy egyszerű és költséghatékony eszköz minden típusú adat szabványos elemzésére SQL és a meglévő BI-eszközök. Lehetővé teszi összetett lekérdezések futtatását petabájtnyi strukturált adattal szemben.
https://aws.amazon.com/redshift/?nc2=h_m1
Itt van a hasznosak teljes listája Adattárház eszközök.
Az ETL folyamat legjobb gyakorlatai
Az alábbiakban bemutatjuk az ETL folyamat lépéseinek bevált gyakorlatait:
Soha ne próbálja meg törölni az összes adatot:
Minden szervezet szeretné, ha minden adat tiszta lenne, de a legtöbbjük nem hajlandó fizetni a várakozásért, vagy nem hajlandó várni. Az egész tisztítása egyszerűen túl sokáig tartana, ezért jobb, ha nem próbálja meg az összes adatot.
Soha ne tisztítson semmit:
Mindig tervezzen megtisztítani valamit, mert az Adattárház felépítésének legfőbb oka az, hogy tisztább és megbízhatóbb adatokat kínáljunk.
Határozza meg az adatok tisztításának költségét:
Az összes szennyezett adat megtisztítása előtt fontos, hogy meghatározza minden szennyezett adatelem tisztítási költségét.
A lekérdezések feldolgozásának felgyorsításához használjon segédnézeteket és indexeket:
A tárolási költségek csökkentése érdekében tárolja az összesített adatokat lemezszalagokon. Ezenkívül kompromisszumra van szükség a tárolandó adatok mennyisége és részletes felhasználása között. Kompromisszumok az adatok részletességének szintjén a tárolási költségek csökkentése érdekében.
Összegzésként
- Az ETL az Extract, Transform and Load rövidítése.
- Az ETL módszert biztosít az adatok különböző forrásokból történő áthelyezésére a adattárház.
- A kinyerés első lépésében az adatok kinyerésre kerülnek a forrásrendszerből az átmeneti területre.
- Az átalakítási lépésben a forrásból kinyert adatokat megtisztítják és átalakítják.
- Az adatok betöltése a cél adattárházba az ETL folyamat utolsó lépése.