Amikor Sber mérleged van. Ab Initio használata Hive-vel és GreenPlum-mal

Nemrég szembesültünk azzal a kérdéssel, hogy válasszunk ETL-eszközt a Big Data kezeléséhez. A korábban használt Informatica BDM megoldás a korlátozott funkcionalitás miatt nem felelt meg nekünk. Használata a spark-submit parancsok indítására szolgáló keretrendszerre csökkent. Nem sok analóg volt a piacon, amely elvileg képes lett volna dolgozni azzal az adatmennyiséggel, amellyel nap mint nap foglalkozunk. Végül az Ab Initio-t választottuk. A kísérleti bemutatók során a termék nagyon nagy adatfeldolgozási sebességet mutatott. Az Ab Initio-ról oroszul szinte semmilyen információ nem található, ezért úgy döntöttünk, hogy a Habrén beszélünk tapasztalatainkról.

Az Ab Initio számos klasszikus és szokatlan átalakítást tartalmaz, amelyek kódja saját PDL nyelvével bővíthető. Egy kisvállalkozás számára egy ilyen hatékony eszköz valószínűleg túlzásba esik, és a legtöbb képessége drága és kihasználatlan lehet. De ha az Ön skálája közel áll Sberovéhez, akkor az Ab Initio érdekes lehet az Ön számára.

Segíti a vállalkozásokat a globális tudásgyűjtésben és az ökoszisztéma fejlesztésében, a fejlesztőt pedig az ETL-ben szerzett ismeretei fejlesztésében, a shellben szerzett ismereteinek fejlesztésében, lehetőséget ad a PDL nyelv elsajátítására, vizuális képet ad a betöltési folyamatokról, és leegyszerűsíti a fejlesztést. a funkcionális komponensek bősége miatt.

Ebben a bejegyzésben az Ab Initio képességeiről fogok beszélni, és összehasonlítom a Hive-vel és a GreenPlum-mal végzett munkáját.

  • Az MDW keretrendszer leírása és a testreszabása a GreenPlum számára
  • Ab Initio teljesítmény összehasonlítása a Hive és a GreenPlum között
  • Ab Initio munka a GreenPlum-mal közel valós idejű módban


Ennek a terméknek a funkcionalitása nagyon széles, és sok időt igényel a tanulmányozása. A megfelelő munkakészségekkel és a megfelelő teljesítménybeállításokkal azonban az adatfeldolgozás eredménye nagyon lenyűgöző. Az Ab Initio használata egy fejlesztő számára érdekes élményt nyújthat. Ez az ETL fejlesztés új megközelítése, a vizuális környezet és a letöltési fejlesztés hibridje egy szkriptszerű nyelven.

A vállalkozások fejlesztik ökoszisztémáikat, és ez az eszköz hasznosabb, mint valaha. Az Ab Initio segítségével tudást halmozhat fel jelenlegi vállalkozásáról, és felhasználhatja ezt a tudást a régi és új vállalkozások bővítésére. Az Ab Initio alternatívái közé tartoznak az Informatica BDM vizuális fejlesztői környezetek és az Apache Spark nem vizuális fejlesztői környezetek.

Az Ab Initio leírása

Az Ab Initio, más ETL-eszközökhöz hasonlóan, termékek gyűjteménye.

Amikor Sber mérleged van. Ab Initio használata Hive-vel és GreenPlum-mal

Az Ab Initio GDE (Graphical Development Environment) egy olyan környezet a fejlesztő számára, amelyben adatátalakításokat konfigurál, és nyilak formájában összekapcsolja az adatfolyamokkal. Ebben az esetben az ilyen transzformációk halmazát gráfnak nevezzük:

Amikor Sber mérleged van. Ab Initio használata Hive-vel és GreenPlum-mal

A funkcionális komponensek bemeneti és kimeneti kapcsolatai portok és transzformációkban számított mezőket tartalmaznak. Számos grafikont, amelyeket végrehajtásuk sorrendjében nyilak formájában áramlások kötnek össze, tervnek nevezzük.

Több száz funkcionális alkatrész van, ami nagyon sok. Sok közülük nagyon specializálódott. Az Ab Initio klasszikus átalakításainak lehetőségei szélesebbek, mint más ETL-eszközökben. Például a Join több kimenettel rendelkezik. Az adatkészletek összekapcsolásának eredménye mellett olyan bemeneti adatkészletek kimeneti rekordjait is megkaphatja, amelyek kulcsait nem lehetett csatlakoztatni. Elutasításokat, hibákat és az átalakítási művelet naplóját is megkaphatja, amely ugyanabban az oszlopban olvasható, mint egy szöveges fájl, és más transzformációkkal is feldolgozható:

Amikor Sber mérleged van. Ab Initio használata Hive-vel és GreenPlum-mal

Vagy például materializálhat egy adatvevőt táblázat formájában, és ugyanabban az oszlopban olvashat ki belőle adatokat.

Eredeti átalakítások vannak. Például a Scan transzformáció az analitikai függvényekhez hasonló funkciókkal rendelkezik. Vannak magától értetődő elnevezésű átalakítások: Adatok létrehozása, Excel olvasása, Normalizálás, Csoporton belüli rendezés, Program futtatása, SQL futtatása, Csatlakozás DB-vel stb. A grafikonok futásidejű paramétereket használhatnak, beleértve a paraméterek átadásának lehetőségét is. az operációs rendszert. Azokat a fájlokat, amelyek kész paraméterkészlettel rendelkeznek a gráfnak, paraméterkészleteknek (pset) nevezzük.

Ahogy az várható volt, az Ab Initio GDE saját adattárral rendelkezik EME (Enterprise Meta Environment) néven. A fejlesztőknek lehetőségük van a kód helyi verzióival dolgozni, és beolvasni fejlesztéseiket a központi adattárba.

Lehetőség van a végrehajtás során vagy a grafikon végrehajtása után a transzformációt összekötő bármely folyamra kattintani, és megnézni az átalakítások között áthaladó adatokat:

Amikor Sber mérleged van. Ab Initio használata Hive-vel és GreenPlum-mal

Lehetőség van arra is, hogy bármelyik folyamra kattintsunk, és megtekintsük a nyomkövetési részleteket – hány párhuzamosban működött a transzformáció, hány sort és bájtot töltöttünk be, melyik párhuzamosba:

Amikor Sber mérleged van. Ab Initio használata Hive-vel és GreenPlum-mal

Lehetőség van a gráf végrehajtását fázisokra bontani és megjelölni, hogy néhány transzformációt először (nulla fázisban), a következőket az első fázisban, a következőket a második fázisban kell végrehajtani stb.

Minden transzformációhoz kiválasztható az úgynevezett layout (ahol a végrehajtásra kerül): párhuzamosság nélkül vagy párhuzamos szálakban, amelyek száma megadható. Ugyanakkor az Ab Initio által az átalakítások futtatásakor létrehozott ideiglenes fájlok a szerver fájlrendszerében és a HDFS-ben is elhelyezhetők.

Minden egyes átalakításnál az alapértelmezett sablon alapján létrehozhatunk saját szkriptet PDL-ben, ami kicsit olyan, mint egy shell.

A PDL segítségével kiterjesztheti az átalakítások funkcionalitását, és különösen dinamikusan (futás közben) tetszőleges kódrészleteket generálhat a futásidejű paraméterektől függően.

Az Ab Initio jól fejlett integrációval rendelkezik az operációs rendszerrel shell-en keresztül. Konkrétan a Sberbank linux ksh-t használ. Változókat cserélhet a shell-el, és használhatja őket gráfparaméterként. Meghívhatja az Ab Initio gráfok végrehajtását a héjból, és felügyelheti az Ab Initio-t.

Az Ab Initio GDE mellett sok más terméket is tartalmaz a szállítás. Létezik saját együttműködési rendszere, amely azt állítja, hogy operációs rendszernek nevezik. Van egy Vezérlőközpont, ahol ütemezheti és figyelemmel kísérheti a letöltési folyamatokat. Vannak olyan termékek, amelyek primitívebb szintű fejlesztést tesznek lehetővé, mint az Ab Initio GDE lehetővé teszi.

Az MDW keretrendszer leírása és a testreszabása a GreenPlum számára

A szállító termékei mellett az MDW (Metadata Driven Warehouse) terméket is szállítja, amely egy olyan grafikonkonfigurátor, amely az adattárházak vagy adattárolók feltöltésének tipikus feladatait segíti.

Egyedi (projekt-specifikus) metaadat-elemzőket és kész kódgenerátorokat tartalmaz.

Amikor Sber mérleged van. Ab Initio használata Hive-vel és GreenPlum-mal
Bemenetként az MDW egy adatmodellt, egy konfigurációs fájlt kap az adatbázishoz (Oracle, Teradata vagy Hive) való kapcsolat beállításához és néhány egyéb beállítást. A projektspecifikus rész például a modellt adatbázisba helyezi. A termék gyári része grafikonokat és konfigurációs fájlokat generál hozzájuk úgy, hogy az adatokat modelltáblázatokba tölti be. Ebben az esetben grafikonok (és psetek) jönnek létre az inicializálás és az entitások frissítésével kapcsolatos növekményes munkához.

A Hive és az RDBMS esetében különböző grafikonok jönnek létre az inicializáláshoz és a növekményes adatfrissítésekhez.

Hive esetén a bejövő delta adatok az Ab Initio Join-on keresztül kapcsolódnak össze a frissítés előtti táblázatban szereplő adatokkal. Az MDW adatbetöltői (mind a Hive-ben, mind az RDBMS-ben) nemcsak új adatokat szúrnak be a deltából, hanem lezárják azoknak az adatoknak a releváns időszakait is, amelyek elsődleges kulcsai a deltát kapták. Ezen kívül át kell írni az adatok változatlan részét. De ezt meg kell tenni, mert a Hive nem rendelkezik törlési vagy frissítési műveletekkel.

Amikor Sber mérleged van. Ab Initio használata Hive-vel és GreenPlum-mal

Az RDBMS esetében a növekményes adatfrissítés grafikonjai optimálisabbnak tűnnek, mivel az RDBMS valódi frissítési képességekkel rendelkezik.

Amikor Sber mérleged van. Ab Initio használata Hive-vel és GreenPlum-mal

A kapott delta betöltődik az adatbázisban egy köztes táblába. Ezt követően a delta a frissítés előtt a táblázatban szereplő adatokhoz kapcsolódik. És ez SQL használatával történik, generált SQL lekérdezés segítségével. Ezután a delete+insert SQL parancsok használatával a delta új adatai bekerülnek a céltáblába, és lezárják azoknak az adatoknak a relevanciáját, amelyek elsődleges kulcsai a deltát kapták.
Nincs szükség a változatlan adatok átírására.

Így arra a következtetésre jutottunk, hogy a Hive esetében az MDW-nek át kell írnia a teljes táblát, mert a Hive-nek nincs frissítési funkciója. És semmi sem jobb, mint az adatok teljes átírása, amikor a frissítést kitalálták. Az RDBMS esetében éppen ellenkezőleg, a termék készítői szükségesnek tartották a táblák összekapcsolását és frissítését az SQL használatára bízni.

A Sberbank egyik projektjéhez létrehoztuk a GreenPlum adatbázis-betöltő új, újrafelhasználható megvalósítását. Ez az MDW által a Teradata számára generált verzió alapján történt. Ehhez nem az Oracle, hanem a Teradata állt a legközelebb és a legjobban, mert... szintén MPP rendszer. A Teradata és a GreenPlum munkamódszerei és szintaxisa hasonlónak bizonyult.

Példák a különböző RDBMS-ek közötti MDW-kritikus különbségekre a következők. A GreenPlumban a Teradata-val ellentétben a táblák létrehozásakor záradékot kell írni

distributed by

Teradata ezt írja:

delete <table> all

, a GreenPlumban pedig azt írják

delete from <table>

Oracle-ben optimalizálás céljából írják

delete from t where rowid in (<соединение t с дельтой>)

, valamint a Teradata és a GreenPlum írja

delete from t where exists (select * from delta where delta.pk=t.pk)

Azt is megjegyezzük, hogy ahhoz, hogy az Ab Initio működjön együtt a GreenPlum-mal, telepíteni kellett a GreenPlum klienst az Ab Initio fürt összes csomópontjára. Ennek az az oka, hogy a fürt összes csomópontjáról egyidejűleg csatlakoztunk a GreenPlumhoz. És ahhoz, hogy a GreenPlum olvasása párhuzamos legyen, és minden párhuzamos Ab Initio szál olvassa a saját adatrészét a GreenPlumból, el kellett helyeznünk az Ab Initio által megértett konstrukciót az SQL lekérdezések „hol” részében.

where ABLOCAL()

és határozza meg ennek a konstrukciónak az értékét a transzformációs adatbázisból való paraméterolvasás megadásával

ablocal_expr=«string_concat("mod(t.", string_filter_out("{$TABLE_KEY}","{}"), ",", (decimal(3))(number_of_partitions()),")=", (decimal(3))(this_partition()))»

, ami olyasmire fordít

mod(sk,10)=3

, azaz minden partícióhoz explicit szűrővel kell jeleznie a GreenPlumot. Más adatbázisok (Teradata, Oracle) esetében az Ab Initio ezt a párhuzamosítást automatikusan végrehajtja.

Ab Initio teljesítmény összehasonlítása a Hive és a GreenPlum között

A Sberbank kísérletet végzett az MDW által generált grafikonok teljesítményének összehasonlítására a Hive és a GreenPlum vonatkozásában. A kísérlet részeként a Hive esetében 5 csomópont volt ugyanabban a klaszterben, mint az Ab Initio, a GreenPlum esetében pedig 4 csomópont volt egy külön klaszteren. Azok. A Hive-nek volt némi hardveres előnye a GreenPlum-mal szemben.

Két grafikonpárt vettünk figyelembe, amelyek ugyanazt az adatfrissítési feladatot látják el a Hive-ban és a GreenPlumban. Ezzel egy időben elindultak az MDW konfigurátor által generált grafikonok is:

  • kezdeti terhelés + véletlenszerűen generált adatok növekményes betöltése egy Hive táblába
  • kezdeti terhelés + véletlenszerűen generált adatok növekményes betöltése ugyanabba a GreenPlum táblába

Mindkét esetben (a Hive és a GreenPlum) 10 párhuzamos szálra futtattak feltöltést ugyanabban az Ab Initio-fürtben. Az Ab Initio közbenső adatokat mentett el a HDFS-ben történő számításokhoz (az Ab Initio szempontjából HDFS-t használó MFS-elrendezést használtak). A véletlenszerűen generált adatok egy sora mindkét esetben 200 bájtot foglalt el.

Az eredmény a következő volt:

Kaptár:

Kezdeti betöltés Kaptárban

Sorok beszúrva
+6 000 000 XNUMX
+60 000 000 XNUMX
+600 000 000 XNUMX

Inicializálás időtartama
letöltés másodpercek alatt
41
203
1 601

Növekményes terhelés a Hive-ban

A rendelkezésre álló sorok száma
céltáblázatot a kísérlet elején
+6 000 000 XNUMX
+60 000 000 XNUMX
+600 000 000 XNUMX

Alkalmazott delta vonalak száma
céltáblázatot a kísérlet során
+6 000 000 XNUMX
+6 000 000 XNUMX
+6 000 000 XNUMX

A növekmény időtartama
letöltés másodpercek alatt
88
299
2 541

GreenPlum:

Kezdeti betöltés GreenPlumban

Sorok beszúrva
+6 000 000 XNUMX
+60 000 000 XNUMX
+600 000 000 XNUMX

Inicializálás időtartama
letöltés másodpercek alatt
72
360
3 631

Növekményes betöltés a GreenPlumban

A rendelkezésre álló sorok száma
céltáblázatot a kísérlet elején
+6 000 000 XNUMX
+60 000 000 XNUMX
+600 000 000 XNUMX

Alkalmazott delta vonalak száma
céltáblázatot a kísérlet során
+6 000 000 XNUMX
+6 000 000 XNUMX
+6 000 000 XNUMX

A növekmény időtartama
letöltés másodpercek alatt
159
199
321

Látjuk, hogy a kezdeti betöltés sebessége mind a Hive-ben, mind a GreenPlumban lineárisan függ az adatmennyiségtől, és a jobb hardver okán a Hive esetében valamivel gyorsabb, mint a GreenPlum esetében.

A növekményes betöltés a Hive-ben szintén lineárisan függ a céltáblázatban elérhető, korábban betöltött adatok mennyiségétől, és meglehetősen lassan halad a mennyiség növekedésével. Ezt a céltábla teljes átírásának szükségessége okozza. Ez azt jelenti, hogy kis változtatások alkalmazása a hatalmas táblákon nem megfelelő eset a Hive számára.

A GreenPlum növekményes betöltése gyengén függ a céltáblázatban elérhető, korábban betöltött adatok mennyiségétől, és meglehetősen gyorsan halad. Ez az SQL Joins-nek és a GreenPlum architektúrának köszönhetően történt, amely lehetővé teszi a törlési műveletet.

Tehát a GreenPlum hozzáadja a deltát a delete+beszúrás metódussal, de a Hive nem rendelkezik törlési vagy frissítési műveletekkel, így a növekményes frissítés során a teljes adattömböt teljesen át kellett írni. A félkövérrel kiemelt cellák összehasonlítása a leginkább árulkodó, mivel ez felel meg az erőforrás-igényes letöltések leggyakoribb alkalmazási lehetőségének. Látjuk, hogy a GreenPlum ebben a tesztben 8-szor verte a Hive-t.

Ab Initio munka a GreenPlum-mal közel valós idejű módban

Ebben a kísérletben azt teszteljük, hogy az Ab Initio képes-e frissíteni a GreenPlum táblát véletlenszerűen generált adatdarabokkal, közel valós időben. Tekintsük a dev42_1_db_usl.TESTING_SUBJ_org_finval GreenPlum táblát, amellyel dolgozni fogunk.

Három Ab Initio grafikont fogunk használni a munkához:

1) Graph Create_test_data.mp – HDFS-ben hoz létre adatfájlokat 10 6 000 sorral, 000 párhuzamos szálban. Az adatok véletlenszerűek, struktúrájuk a táblázatunkba való beillesztésre rendszerezett

Amikor Sber mérleged van. Ab Initio használata Hive-vel és GreenPlum-mal

Amikor Sber mérleged van. Ab Initio használata Hive-vel és GreenPlum-mal

2) Graph mdw_load.day_one.current.dev42_1_db_usl_testing_subj_org_finval.pset – MDW által generált gráf a táblázatunkba történő adatbeillesztés inicializálásával 10 párhuzamos szálban (az (1) grafikon által generált tesztadatokat használjuk)

Amikor Sber mérleged van. Ab Initio használata Hive-vel és GreenPlum-mal

3) Graph mdw_load.regular.current.dev42_1_db_usl_testing_subj_org_finval.pset – az MDW által generált grafikon a táblázatunk növekményes frissítéséhez 10 párhuzamos szálban, a frissen kapott adatok (delta) grafikon által generált részletének felhasználásával (1)

Amikor Sber mérleged van. Ab Initio használata Hive-vel és GreenPlum-mal

Futtassa az alábbi szkriptet NRT módban:

  • 6 000 000 tesztsort generál
  • hajtson végre egy kezdeti terhelést, szúrjon be 6 000 000 tesztsort egy üres táblába
  • ismételje meg a növekményes letöltést 5 alkalommal
    • 6 000 000 tesztsort generál
    • hajtson végre 6 000 000 tesztsor növekményes beszúrását a táblázatba (ebben az esetben a valid_to_ts lejárati ideje a régi adatokra lesz beállítva, és újabb, azonos elsődleges kulccsal rendelkező adatok kerülnek beillesztésre)

Ez a forgatókönyv egy bizonyos üzleti rendszer valós működési módját emulálja - az új adatok meglehetősen nagy része valós időben jelenik meg, és azonnal bekerül a GreenPlumba.

Most nézzük a szkript naplóját:

A Create_test_data.input.pset indítása 2020-06-04 11:49:11
A Create_test_data.input.pset befejezése ekkor: 2020-06-04 11:49:37
Az mdw_load.day_one.current.dev42_1_db_usl_testing_subj_org_finval.pset indítása 2020-06-04 11:49:37
Az mdw_load.day_one.current.dev42_1_db_usl_testing_subj_org_finval.pset befejezése 2020-06-04 11:50:42-kor
A Create_test_data.input.pset indítása 2020-06-04 11:50:42
A Create_test_data.input.pset befejezése ekkor: 2020-06-04 11:51:06
Az mdw_load.regular.current.dev42_1_db_usl_testing_subj_org_finval.pset indítása 2020-06-04 11:51:06
Az mdw_load.regular.current.dev42_1_db_usl_testing_subj_org_finval.pset befejezése: 2020-06-04 11:53:41
A Create_test_data.input.pset indítása 2020-06-04 11:53:41
A Create_test_data.input.pset befejezése ekkor: 2020-06-04 11:54:04
Az mdw_load.regular.current.dev42_1_db_usl_testing_subj_org_finval.pset indítása 2020-06-04 11:54:04
Az mdw_load.regular.current.dev42_1_db_usl_testing_subj_org_finval.pset befejezése: 2020-06-04 11:56:51
A Create_test_data.input.pset indítása 2020-06-04 11:56:51
A Create_test_data.input.pset befejezése ekkor: 2020-06-04 11:57:14
Az mdw_load.regular.current.dev42_1_db_usl_testing_subj_org_finval.pset indítása 2020-06-04 11:57:14
Az mdw_load.regular.current.dev42_1_db_usl_testing_subj_org_finval.pset befejezése: 2020-06-04 11:59:55
A Create_test_data.input.pset indítása 2020-06-04 11:59:55
A Create_test_data.input.pset befejezése ekkor: 2020-06-04 12:00:23
Az mdw_load.regular.current.dev42_1_db_usl_testing_subj_org_finval.pset indítása 2020-06-04 12:00:23
Az mdw_load.regular.current.dev42_1_db_usl_testing_subj_org_finval.pset befejezése: 2020-06-04 12:03:23
A Create_test_data.input.pset indítása 2020-06-04 12:03:23
A Create_test_data.input.pset befejezése ekkor: 2020-06-04 12:03:49
Az mdw_load.regular.current.dev42_1_db_usl_testing_subj_org_finval.pset indítása 2020-06-04 12:03:49
Az mdw_load.regular.current.dev42_1_db_usl_testing_subj_org_finval.pset befejezése: 2020-06-04 12:06:46

Kiderült ez a kép:

Grafikon
Kezdés ideje
Befejezési idő
Hossz

Create_test_data.input.pset
04.06.2020 11: 49: 11
04.06.2020 11: 49: 37
00:00:26

mdw_load.day_one.current.
dev42_1_db_usl_testing_subj_org_finval.pset
04.06.2020 11: 49: 37
04.06.2020 11: 50: 42
00:01:05

Create_test_data.input.pset
04.06.2020 11: 50: 42
04.06.2020 11: 51: 06
00:00:24

mdw_load.regular.current.
dev42_1_db_usl_testing_subj_org_finval.pset
04.06.2020 11: 51: 06
04.06.2020 11: 53: 41
00:02:35

Create_test_data.input.pset
04.06.2020 11: 53: 41
04.06.2020 11: 54: 04
00:00:23

mdw_load.regular.current.
dev42_1_db_usl_testing_subj_org_finval.pset
04.06.2020 11: 54: 04
04.06.2020 11: 56: 51
00:02:47

Create_test_data.input.pset
04.06.2020 11: 56: 51
04.06.2020 11: 57: 14
00:00:23

mdw_load.regular.current.
dev42_1_db_usl_testing_subj_org_finval.pset
04.06.2020 11: 57: 14
04.06.2020 11: 59: 55
00:02:41

Create_test_data.input.pset
04.06.2020 11: 59: 55
04.06.2020 12: 00: 23
00:00:28

mdw_load.regular.current.
dev42_1_db_usl_testing_subj_org_finval.pset
04.06.2020 12: 00: 23
04.06.2020 12: 03: 23
00:03:00

Create_test_data.input.pset
04.06.2020 12: 03: 23
04.06.2020 12: 03: 49
00:00:26

mdw_load.regular.current.
dev42_1_db_usl_testing_subj_org_finval.pset
04.06.2020 12: 03: 49
04.06.2020 12: 06: 46
00:02:57

Azt látjuk, hogy 6 000 000 lépéssort dolgoznak fel 3 perc alatt, ami elég gyors.
A céltáblázatban szereplő adatok a következőképpen oszlanak meg:

select valid_from_ts, valid_to_ts, count(1), min(sk), max(sk) from dev42_1_db_usl.TESTING_SUBJ_org_finval group by valid_from_ts, valid_to_ts order by 1,2;

Amikor Sber mérleged van. Ab Initio használata Hive-vel és GreenPlum-mal
Láthatja a beillesztett adatok és a grafikonok indításának időpontjainak megfelelőségét.
Ez azt jelenti, hogy nagyon nagy gyakorisággal futtathatja az adatok növekményes betöltését a GreenPlumba az Ab Initio-ban, és megfigyelheti az adatok GreenPlumba való beillesztésének nagy sebességét. Természetesen nem lehet majd másodpercenként egyszer elindítani, mivel az Ab Initio-nak, mint minden ETL-eszköznek, időre van szüksége az „indításhoz”.

Következtetés

Az Ab Initio-t jelenleg a Sberbank használja egy egységes szemantikai adatréteg (ESS) felépítésére. Ez a projekt magában foglalja a különböző banki üzleti egységek állapotának egységes változatának felépítését. Az információk különböző forrásokból származnak, amelyek másolatai a Hadoop-on készülnek. Az üzleti igények alapján adatmodell készül, adattranszformációk leírása. Az Ab Initio információkat tölt be az ESN-be, és a letöltött adatok nem csak a vállalkozás számára érdekesek, hanem forrásként is szolgálnak az adatpiacok felépítéséhez. A termék funkcionalitása ugyanakkor lehetővé teszi különböző rendszerek vevőként történő használatát (Hive, Greenplum, Teradata, Oracle), ami lehetővé teszi, hogy egy vállalkozás számára könnyen készítsünk adatokat az általa igényelt különféle formátumokban.

Az Ab Initio lehetőségei széleskörűek, például a mellékelt MDW keretrendszer lehetővé teszi műszaki és üzleti történeti adatok elkészítését a dobozból. A fejlesztők számára az Ab Initio lehetővé teszi, hogy ne újra feltalálják a kereket, hanem számos meglévő funkcionális komponenst használjanak fel, amelyek alapvetően az adatokkal való munka során szükséges könyvtárak.

A szerző a Sberbank SberProfi DWH/BigData szakmai közösségének szakértője. A SberProfi DWH/BigData szakmai közösség feladata a kompetenciák fejlesztése olyan területeken, mint a Hadoop ökoszisztéma, a Teradata, az Oracle DB, a GreenPlum, valamint a BI-eszközök Qlik, SAP BO, Tableau stb.

Forrás: will.com

Hozzászólás