Сізде Sber таразы болған кезде. Hive және GreenPlum көмегімен Ab Initio пайдалану

Біраз уақыт бұрын біз үлкен деректермен жұмыс істеу үшін ETL құралын таңдау мәселесіне тап болдық. Бұрын қолданылған Informatica BDM шешімі шектеулі функционалдылыққа байланысты бізге сәйкес келмеді. Оны пайдалану spark-submit пәрмендерін іске қосу үшін негізге дейін қысқартылды. Нарықта біз күнделікті айналысатын деректер көлемімен жұмыс істей алатын аналогтар көп болмады. Соңында біз Ab Initio таңдадық. Пилоттық демонстрациялар кезінде өнім деректерді өңдеудің өте жоғары жылдамдығын көрсетті. Орыс тілінде Ab Initio туралы ақпарат жоқтың қасы, сондықтан біз Хабредегі тәжірибеміз туралы айтуды жөн көрдік.

Ab Initio-да көптеген классикалық және әдеттен тыс түрлендірулер бар, олардың кодын өзінің PDL тілі арқылы кеңейтуге болады. Шағын бизнес үшін мұндай қуатты құрал шамадан тыс болуы мүмкін және оның мүмкіндіктерінің көпшілігі қымбат және пайдаланылмаған болуы мүмкін. Бірақ егер сіздің шкалаңыз Сберовтікіне жақын болса, онда Ab Initio сізге қызықты болуы мүмкін.

Бұл бизнеске жаһандық деңгейде білім жинақтауға және экожүйені дамытуға, ал әзірлеушіге ETL бойынша біліктілігін арттыруға, қабықтағы білімін жақсартуға көмектеседі, PDL тілін меңгеруге мүмкіндік береді, жүктеу процестерінің көрнекі бейнесін береді және әзірлеуді жеңілдетеді. функционалдық құрамдас бөліктердің көптігіне байланысты.

Бұл постта мен Ab Initio мүмкіндіктері туралы сөйлесемін және оның Hive және GreenPlum-пен жұмысының салыстырмалы сипаттамаларын беремін.

  • MDW құрылымының сипаттамасы және оны GreenPlum үшін теңшеу бойынша жұмыс
  • Hive және GreenPlum арасындағы Ab Initio өнімділігін салыстыру
  • GreenPlum қолданбасымен нақты уақыт режимінде Ab Initio жұмыс істеу


Бұл өнімнің функционалдығы өте кең және зерттеу үшін көп уақытты қажет етеді. Дегенмен, дұрыс жұмыс дағдылары және дұрыс өнімділік параметрлері деректерді өңдеу нәтижелері өте әсерлі. Әзірлеушіге Ab Initio пайдалану қызықты тәжірибе бере алады. Бұл визуалды орта мен сценарий тәріздес тілде жүктеп алуды әзірлеу арасындағы гибридті ETL әзірлеуге жаңа көзқарас.

Кәсіпорындар өздерінің экожүйелерін дамытуда және бұл құрал бұрынғыдан да пайдалы. Ab Initio көмегімен сіз өзіңіздің ағымдағы бизнесіңіз туралы білім жинай аласыз және бұл білімді ескі және жаңа бизнестерді кеңейту үшін пайдалана аласыз. Ab Initio баламалары Informatica BDM визуалды әзірлеу орталарын және Apache Spark визуалды емес әзірлеу орталарын қамтиды.

Ab Initio сипаттамасы

Ab Initio, басқа ETL құралдары сияқты, өнімдер жиынтығы.

Сізде Sber таразы болған кезде. Hive және GreenPlum көмегімен Ab Initio пайдалану

Ab Initio GDE (Graphical Development Environment) – әзірлеушіге арналған орта, онда ол деректер түрлендірулерін конфигурациялайды және оларды көрсеткілер түріндегі деректер ағындарымен байланыстырады. Бұл жағдайда мұндай түрлендірулер жиынтығы график деп аталады:

Сізде Sber таразы болған кезде. Hive және GreenPlum көмегімен Ab Initio пайдалану

Функционалдық құрамдастардың кіріс және шығыс қосылымдары порттар болып табылады және түрлендірулер ішінде есептелген өрістерді қамтиды. Орындалу реті бойынша стрелка түріндегі ағындармен байланысқан бірнеше графиктер жоспар деп аталады.

Бірнеше жүздеген функционалдық құрамдас бөліктер бар, бұл өте көп. Олардың көпшілігі жоғары мамандандырылған. Ab Initio ішіндегі классикалық түрлендірулердің мүмкіндіктері басқа ETL құралдарына қарағанда кеңірек. Мысалы, Join бірнеше шығыстары бар. Деректер жиынын қосу нәтижесіне қоса, кілттері қосылу мүмкін болмаған кіріс деректер жиындарының шығыс жазбаларын алуға болады. Сондай-ақ мәтіндік файл сияқты бір бағанда оқуға және басқа түрлендірулермен өңдеуге болатын қабылдамауларды, қателерді және түрлендіру операциясының журналын алуға болады:

Сізде Sber таразы болған кезде. Hive және GreenPlum көмегімен Ab Initio пайдалану

Немесе, мысалы, деректер қабылдағышты кесте түрінде материалдандыруға және одан деректерді сол бағанда оқуға болады.

Түпнұсқа түрлендірулер бар. Мысалы, Scan түрлендіруінің аналитикалық функцияларға ұқсас функционалдығы бар. Өздігінен түсінікті атаулары бар түрлендірулер бар: Деректерді жасау, Excel оқуын оқу, Нормалау, Топтар ішінде сұрыптау, Бағдарламаны іске қосу, SQL-ді іске қосу, ДҚ-мен қосылу, т.б.. Графиктер орындалу уақыты параметрлерін пайдалана алады, соның ішінде параметрлерді келесіден немесе келесіге жіберу мүмкіндігі. операциялық жүйе. Параметрлердің дайын жиыны графикке жіберілген файлдар параметр жиындары (псеталар) деп аталады.

Күтілгендей, Ab Initio GDE-де EME (Enterprise Meta Environment) деп аталатын өз репозиторийі бар. Әзірлеушілердің кодтың жергілікті нұсқаларымен жұмыс істеу және орталық репозиторийдегі әзірлемелерін тексеру мүмкіндігі бар.

Орындау кезінде немесе графикті орындағаннан кейін түрлендіруді қосатын кез келген ағынды басып, осы түрлендірулер арасында өткен деректерді қарауға болады:

Сізде Sber таразы болған кезде. Hive және GreenPlum көмегімен Ab Initio пайдалану

Сондай-ақ кез келген ағынды басып, бақылау мәліметтерін көруге болады - трансформация қанша параллельде жұмыс істеді, параллельдердің қайсысына қанша жол мен байт жүктелді:

Сізде Sber таразы болған кезде. Hive және GreenPlum көмегімен Ab Initio пайдалану

Графиктің орындалуын фазаларға бөліп, кейбір түрлендірулерді бірінші (нөлдік фазада), келесілерін бірінші фазада, келесілерін екінші фазада және т.б. орындау қажет екенін белгілеуге болады.

Әрбір түрлендіру үшін орналасу деп аталатынды таңдауға болады (ол орындалатын жерде): параллельдерсіз немесе параллель ағындарда, олардың санын көрсетуге болады. Сонымен қатар трансформациялар іске қосылған кезде Ab Initio жасайтын уақытша файлдар сервердің файлдық жүйесінде де, HDFS ішінде де орналастырылуы мүмкін.

Әрбір түрлендіруде әдепкі үлгіге негізделген PDL-де өзіңіздің сценарийіңізді жасай аласыз, ол сәл қабықшаға ұқсайды.

PDL көмегімен сіз түрлендірулердің функционалдығын кеңейте аласыз және, атап айтқанда, орындау уақыты параметрлеріне байланысты динамикалық түрде (орындалу уақытында) еркін код фрагменттерін жасай аласыз.

Ab Initio сонымен қатар қабық арқылы ОЖ-мен жақсы дамыған интеграцияға ие. Атап айтқанда, Сбербанк linux ksh пайдаланады. Айнымалыларды қабықпен алмастыруға және оларды график параметрлері ретінде пайдалануға болады. Қабықтан Ab Initio графиктерінің орындалуын шақыруға және Ab Initio басқаруға болады.

Ab Initio GDE-ден басқа көптеген басқа өнімдер жеткізілімге кіреді. Операциялық жүйе деп аталатын өзіндік Co>Operation System бар. Жүктеп алу ағындарын жоспарлауға және бақылауға болатын Басқару>Орталығы бар. Ab Initio GDE рұқсат еткеннен гөрі қарапайым деңгейде әзірлеуге арналған өнімдер бар.

MDW құрылымының сипаттамасы және оны GreenPlum үшін теңшеу бойынша жұмыс

Өнімдерімен бірге жеткізуші деректер қоймаларын немесе деректер қоймаларын толтырудың әдеттегі тапсырмаларына көмектесуге арналған графикалық конфигуратор болып табылатын MDW (Метадеректерге негізделген қойма) өнімін жеткізеді.

Онда теңшелетін (жобаға тән) метадеректер талдаушылары және қораптан тыс дайын код генераторлары бар.

Сізде Sber таразы болған кезде. Hive және GreenPlum көмегімен Ab Initio пайдалану
Кіріс ретінде MDW деректер үлгісін, дерекқорға қосылымды орнатуға арналған конфигурация файлын (Oracle, Teradata немесе Hive) және кейбір басқа параметрлерді алады. Жобаға тән бөлік, мысалы, үлгіні дерекқорға орналастырады. Өнімнің қораптан тыс бөлігі деректерді үлгі кестелеріне жүктеу арқылы олар үшін графиктер мен конфигурация файлдарын жасайды. Бұл жағдайда нысандарды жаңарту бойынша инициализациялаудың және ұлғаймалы жұмыстың бірнеше режимдері үшін графиктер (және псеттер) жасалады.

Hive және RDBMS жағдайларында инициализация және қосымша деректерді жаңарту үшін әртүрлі графиктер жасалады.

Hive жағдайында кіріс дельта деректері жаңартуға дейін кестеде болған деректермен Ab Initio Join арқылы қосылады. MDW (Hive және RDBMS екеуі де) деректер жүктеушілер дельтадан жаңа деректерді енгізіп қана қоймайды, сонымен қатар бастапқы кілттері дельтаны алған деректердің өзектілік кезеңдерін жабады. Сонымен қатар, деректердің өзгермеген бөлігін қайта жазу керек. Бірақ мұны істеу керек, себебі Hive-де жою немесе жаңарту әрекеттері жоқ.

Сізде Sber таразы болған кезде. Hive және GreenPlum көмегімен Ab Initio пайдалану

RDBMS жағдайында деректерді қосымша жаңартуға арналған графиктер оңтайлы болып көрінеді, өйткені RDBMS нақты жаңарту мүмкіндіктеріне ие.

Сізде Sber таразы болған кезде. Hive және GreenPlum көмегімен Ab Initio пайдалану

Алынған дельта дерекқордағы аралық кестеге жүктеледі. Осыдан кейін дельта жаңартуға дейін кестеде болған деректерге қосылады. Және бұл SQL арқылы жасалған SQL сұрауы арқылы жасалады. Әрі қарай, Delta+insert SQL пәрмендері арқылы мақсатты кестеге дельтадан жаңа деректер енгізіледі және бастапқы кілттері дельтаны алған деректердің өзектілік кезеңдері жабылады.
Өзгермеген деректерді қайта жазудың қажеті жоқ.

Осылайша, біз Hive жағдайында MDW бүкіл кестені қайта жазуға бару керек деген қорытындыға келдік, себебі Hive-де жаңарту функциясы жоқ. Жаңарту кезінде деректерді толығымен қайта жазудан артық ештеңе жоқ. RDBMS жағдайында, керісінше, өнімді жасаушылар кестелерді қосуды және жаңартуды SQL тілін пайдалануға тапсыруды қажет деп тапты.

Сбербанктегі жоба үшін біз GreenPlum үшін дерекқор жүктеушісінің жаңа, қайта пайдалануға болатын нұсқасын жасадық. Бұл MDW Teradata үшін жасайтын нұсқа негізінде жасалды. Бұл үшін ең жақын және ең жақсысы Oracle емес, Терадата болды, өйткені... сонымен қатар MPP жүйесі болып табылады. Терадата мен GreenPlum жұмыс әдістері, сондай-ақ синтаксисі ұқсас болып шықты.

Әртүрлі RDBMS арасындағы MDW-критикалық айырмашылықтардың мысалдары төмендегідей. GreenPlum-та, Teradata-дан айырмашылығы, кестелерді құру кезінде сөйлем жазу керек

distributed by

Терадата былай деп жазады:

delete <table> all

, және GreenPlum-де олар жазады

delete from <table>

Oracle-да олар оңтайландыру мақсатында жазады

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

, және Teradata және GreenPlum жазады

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

Сондай-ақ, Ab Initio-ның GreenPlum-пен жұмыс істеуі үшін GreenPlum клиентін Ab Initio кластерінің барлық түйіндеріне орнату қажет болғанын ескереміз. Себебі біз GreenPlum-ге кластердегі барлық түйіндерден бір уақытта қосылдық. GreenPlum-тен оқу параллель болуы және әрбір параллель Ab Initio ағыны GreenPlum деректерінің өз бөлігін оқу үшін, SQL сұрауларының «қайда» бөліміне Ab Initio түсінетін құрылысты орналастыру керек болды.

where ABLOCAL()

және трансформация деректер базасынан параметр оқуын көрсету арқылы осы конструкцияның мәнін анықтаңыз

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

, ол сияқты нәрсені құрастырады

mod(sk,10)=3

, яғни. GreenPlum-ке әрбір бөлім үшін айқын сүзгіні ұсыну керек. Басқа дерекқорлар үшін (Teradata, Oracle) Ab Initio бұл параллелизацияны автоматты түрде орындай алады.

Hive және GreenPlum арасындағы Ab Initio өнімділігін салыстыру

Сбербанк Hive-ге қатысты және GreenPlum-қа қатысты MDW-генерацияланған графиктердің өнімділігін салыстыру үшін эксперимент жүргізді. Тәжірибе бөлігі ретінде Hive жағдайында Ab Initio кластерінде 5 түйін болды, ал GreenPlum жағдайында бөлек кластерде 4 түйін болды. Анау. Hive GreenPlum-тен біршама артықшылыққа ие болды.

Біз Hive және GreenPlum жүйесінде деректерді жаңартудың бірдей тапсырмасын орындайтын екі жұп графикті қарастырдық. Сонымен бірге MDW конфигураторы жасаған графиктер іске қосылды:

  • бастапқы жүктеме + Hive кестесіне кездейсоқ құрылған деректердің қосымша жүктемесі
  • бастапқы жүктеме + бірдей GreenPlum кестесіне кездейсоқ құрылған деректердің қосымша жүктемесі

Екі жағдайда да (Hive және GreenPlum) олар бірдей Ab Initio кластеріндегі 10 параллель ағындарға жүктеп салуларды орындады. Ab Initio HDFS жүйесінде есептеулер үшін аралық деректерді сақтады (Ab Initio тұрғысынан HDFS көмегімен MFS орналасуы пайдаланылды). Кездейсоқ жасалған деректердің бір жолы екі жағдайда да 200 байтты алып жатты.

Нәтиже келесідей болды:

Ұя:

Hive ішіндегі бастапқы жүктеу

Жолдар енгізілді
6 000 000
60 000 000
600 000 000

Инициализация ұзақтығы
секундтарда жүктеп алады
41
203
1 601

Hive ішіндегі қосымша жүктеу

Қол жетімді жолдар саны
эксперимент басында мақсатты кесте
6 000 000
60 000 000
600 000 000

Қолданылған дельта сызықтарының саны
эксперимент кезіндегі мақсатты кесте
6 000 000
6 000 000
6 000 000

Қосымшаның ұзақтығы
секундтарда жүктеп алады
88
299
2 541

Жасыл өрік:

GreenPlum қолданбасында бастапқы жүктеу

Жолдар енгізілді
6 000 000
60 000 000
600 000 000

Инициализация ұзақтығы
секундтарда жүктеп алады
72
360
3 631

GreenPlum қолданбасында қосымша жүктеу

Қол жетімді жолдар саны
эксперимент басында мақсатты кесте
6 000 000
60 000 000
600 000 000

Қолданылған дельта сызықтарының саны
эксперимент кезіндегі мақсатты кесте
6 000 000
6 000 000
6 000 000

Қосымшаның ұзақтығы
секундтарда жүктеп алады
159
199
321

Біз Hive және GreenPlum екеуінде де бастапқы жүктеу жылдамдығы деректер көлеміне сызықты түрде байланысты екенін көреміз және жақсырақ жабдықтың себептеріне байланысты GreenPlum-қа қарағанда Hive үшін сәл жылдамырақ.

Hive ішіндегі қосымша жүктеу де мақсатты кестеде қол жетімді бұрын жүктелген деректердің көлеміне сызықты түрде байланысты және көлем өскен сайын өте баяу жүреді. Бұл мақсатты кестені толығымен қайта жазу қажеттілігінен туындайды. Бұл үлкен кестелерге кішігірім өзгертулерді қолдану Hive үшін жақсы пайдалану жағдайы емес дегенді білдіреді.

GreenPlum бағдарламасында қосымша жүктеу мақсатты кестеде қол жетімді бұрын жүктелген деректердің көлеміне әлсіз тәуелді және өте жылдам жүреді. Бұл жою әрекетіне мүмкіндік беретін SQL Joins және GreenPlum архитектурасының арқасында болды.

Сонымен, GreenPlum дельтаны delete+insert әдісі арқылы қосады, бірақ Hive-де жою немесе жаңарту әрекеттері жоқ, сондықтан қосымша жаңарту кезінде бүкіл деректер массиві толығымен қайта жазылуға мәжбүр болды. Қалың шрифтпен бөлектелген ұяшықтарды салыстыру өте айқын, өйткені ол ресурсты көп қажет ететін жүктеулерді пайдаланудың ең кең таралған нұсқасына сәйкес келеді. GreenPlum бұл сынақта Hive-ті 8 есе жеңгенін көреміз.

GreenPlum қолданбасымен нақты уақыт режимінде Ab Initio жұмыс істеу

Бұл экспериментте біз Ab Initio-ның нақты уақытта кездейсоқ құрылған деректер бөліктерімен GreenPlum кестесін жаңарту мүмкіндігін тексереміз. GreenPlum кестесін қарастырайық dev42_1_db_usl.TESTING_SUBJ_org_finval, біз онымен жұмыс істейміз.

Онымен жұмыс істеу үшін біз үш Ab Initio графиктерін қолданамыз:

1) Create_test_data.mp графигі – HDFS жүйесінде 10 параллель ағындағы 6 000 000 жолдан тұратын деректер файлдарын жасайды. Деректер кездейсоқ, оның құрылымы кестеге енгізу үшін ұйымдастырылған

Сізде Sber таразы болған кезде. Hive және GreenPlum көмегімен Ab Initio пайдалану

Сізде Sber таразы болған кезде. Hive және GreenPlum көмегімен Ab Initio пайдалану

2) mdw_load.day_one.current.dev42_1_db_usl_testing_subj_org_finval.pset графигі – 10 параллельді ағындардағы кестеге деректерді енгізуді инициализациялау арқылы MDW құрылған график ((1) сызба арқылы жасалған сынақ деректері пайдаланылады)

Сізде Sber таразы болған кезде. Hive және GreenPlum көмегімен Ab Initio пайдалану

3) mdw_load.regular.current.dev42_1_db_usl_testing_subj_org_finval.pset графигі – график (10) арқылы генерацияланған жаңадан алынған деректердің (дельта) бір бөлігін пайдалана отырып, 1 параллель ағындардағы кестемізді қадамдық жаңарту үшін MDW арқылы жасалған график.

Сізде Sber таразы болған кезде. Hive және GreenPlum көмегімен Ab Initio пайдалану

Төмендегі сценарийді NRT режимінде іске қосайық:

  • 6 000 000 сынақ жолын жасаңыз
  • бастапқы жүктемені орындаңыз, бос кестеге 6 000 000 сынақ жолын енгізіңіз
  • қадамдық жүктеуді 5 рет қайталаңыз
    • 6 000 000 сынақ жолын жасаңыз
    • кестеге 6 000 000 сынақ жолының қосымша кірістіруін орындаңыз (бұл жағдайда valid_to_ts жарамдылық мерзімі ескі деректерге орнатылады және бірдей бастапқы кілті бар соңғы деректер енгізіледі)

Бұл сценарий белгілі бір бизнес-жүйенің нақты жұмыс режимін эмуляциялайды - жаңа деректердің айтарлықтай үлкен бөлігі нақты уақытта пайда болады және бірден GreenPlum-ге құйылады.

Енді сценарий журналын қарастырайық:

Create_test_data.input.pset бастаңыз: 2020-06-04 11:49:11
Create_test_data.input.pset 2020-06-04 11:49:37-де аяқтаңыз
mdw_load.day_one.current.dev42_1_db_usl_testing_subj_org_finval.pset 2020-06-04 11:49:37 бастаңыз
mdw_load.day_one.current.dev42_1_db_usl_testing_subj_org_finval.pset 2020-06-04 11:50:42 аяқтаңыз
Create_test_data.input.pset бастаңыз: 2020-06-04 11:50:42
Create_test_data.input.pset 2020-06-04 11:51:06-де аяқтаңыз
mdw_load.regular.current.dev42_1_db_usl_testing_subj_org_finval.pset 2020-06-04 11:51:06 бастаңыз
mdw_load.regular.current.dev42_1_db_usl_testing_subj_org_finval.pset 2020-06-04 11:53:41 аяқталады
Create_test_data.input.pset бастаңыз: 2020-06-04 11:53:41
Create_test_data.input.pset 2020-06-04 11:54:04-де аяқтаңыз
mdw_load.regular.current.dev42_1_db_usl_testing_subj_org_finval.pset 2020-06-04 11:54:04 бастаңыз
mdw_load.regular.current.dev42_1_db_usl_testing_subj_org_finval.pset 2020-06-04 11:56:51 аяқталады
Create_test_data.input.pset бастаңыз: 2020-06-04 11:56:51
Create_test_data.input.pset 2020-06-04 11:57:14-де аяқтаңыз
mdw_load.regular.current.dev42_1_db_usl_testing_subj_org_finval.pset 2020-06-04 11:57:14 бастаңыз
mdw_load.regular.current.dev42_1_db_usl_testing_subj_org_finval.pset 2020-06-04 11:59:55 аяқталады
Create_test_data.input.pset бастаңыз: 2020-06-04 11:59:55
Create_test_data.input.pset 2020-06-04 12:00:23-де аяқтаңыз
mdw_load.regular.current.dev42_1_db_usl_testing_subj_org_finval.pset 2020-06-04 12:00:23 бастаңыз
mdw_load.regular.current.dev42_1_db_usl_testing_subj_org_finval.pset 2020-06-04 12:03:23 аяқталады
Create_test_data.input.pset бастаңыз: 2020-06-04 12:03:23
Create_test_data.input.pset 2020-06-04 12:03:49-де аяқтаңыз
mdw_load.regular.current.dev42_1_db_usl_testing_subj_org_finval.pset 2020-06-04 12:03:49 бастаңыз
mdw_load.regular.current.dev42_1_db_usl_testing_subj_org_finval.pset 2020-06-04 12:06:46 аяқталады

Мына сурет шығады:

Графика
Басталу уақыты
Аяқтау уақыты
ұзындық

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

Біз 6 минут ішінде 000 000 3 қадамдық жолдың өңделетінін көреміз, бұл өте жылдам.
Мақсатты кестедегі деректер келесідей таратылды:

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;

Сізде Sber таразы болған кезде. Hive және GreenPlum көмегімен Ab Initio пайдалану
Енгізілген деректердің графиктерді іске қосу уақытына сәйкестігін көруге болады.
Бұл Ab Initio жүйесінде өте жоғары жиілікте GreenPlum жүйесіне деректерді қадамдық жүктеуді іске қосуға және бұл деректерді GreenPlum ішіне енгізудің жоғары жылдамдығын байқауға болатынын білдіреді. Әрине, секундына бір рет іске қосу мүмкін болмайды, өйткені Ab Initio, кез келген ETL құралы сияқты, іске қосылған кезде «іске қосу» үшін уақытты қажет етеді.

қорытынды

Ab Initio қазіргі уақытта Сбербанкте Бірыңғай семантикалық деректер деңгейін (ESS) құру үшін қолданылады. Бұл жоба әртүрлі банктік шаруашылық субъектілерінің жағдайының бірыңғай нұсқасын құруды көздейді. Ақпарат әртүрлі көздерден алынған, олардың көшірмелері Hadoop-та дайындалған. Бизнес қажеттіліктеріне негізделген деректер үлгісі дайындалады және деректерді түрлендіру сипатталады. Ab Initio ақпаратты ESN-ге жүктейді және жүктелген деректер тек бизнесті қызықтырып қана қоймайды, сонымен қатар деректер марштарын құру үшін көз ретінде қызмет етеді. Сонымен қатар, өнімнің функционалдығы әртүрлі жүйелерді қабылдағыш ретінде пайдалануға мүмкіндік береді (Hive, Greenplum, Teradata, Oracle), бұл бизнеске қажетті әртүрлі форматтарда деректерді оңай дайындауға мүмкіндік береді.

Ab Initio мүмкіндіктері кең; мысалы, енгізілген MDW құрылымы техникалық және іскери тарихи деректерді қораптан тыс құруға мүмкіндік береді. Әзірлеушілер үшін Ab Initio дөңгелекті қайта ойлап табуға емес, деректермен жұмыс істеу кезінде қажет кітапханалар болып табылатын көптеген бар функционалдық құрамдастарды пайдалануға мүмкіндік береді.

Авторы – Сбербанк SberProfi DWH/BigData кәсіби қоғамдастығының сарапшысы. SberProfi DWH/BigData кәсіби қауымдастығы Hadoop экожүйесі, Teradata, Oracle DB, GreenPlum, сондай-ақ BI құралдары Qlik, SAP BO, Tableau және т.б. сияқты салаларда құзыреттерді дамытуға жауапты.

Ақпарат көзі: www.habr.com

пікір қалдыру