Сизде Sber таразасы болгондо. Hive жана GreenPlum менен Ab Initio колдонуу

Бир нече убакыт мурун, биз Big Data менен иштөө үчүн ETL куралын тандоо суроосуна туш болдук. Мурда колдонулган Informatica BDM чечими чектелген функциядан улам бизге туура келген жок. Анын колдонулушу учкун берүү буйруктарын ишке киргизүү үчүн алкактарга чейин кыскарган. Рынокто биз күн сайын иштей турган маалыматтардын көлөмү менен иштөөгө жөндөмдүү болгон көп аналогдор болгон эмес. Акырында биз Ab Initio тандадык. Пилоттук демонстрациялардын жүрүшүндө продукт маалыматтарды иштетүү ылдамдыгын көрсөткөн. Орус тилинде Ab Initio жөнүндө дээрлик эч кандай маалымат жок, ошондуктан биз Habré боюнча өз тажрыйбабыз жөнүндө сүйлөшүүнү чечтик.

Ab Initio көптөгөн классикалык жана адаттан тыш өзгөрүүлөргө ээ, алардын коду өзүнүн PDL тилин колдонуу менен узартылышы мүмкүн. Чакан бизнес үчүн, мындай күчтүү курал, кыязы, ашыкча болот жана анын мүмкүнчүлүктөрүнүн көбү кымбат жана колдонулбаган болушу мүмкүн. Бирок сиздин масштабыңыз Сберовдукуна жакын болсо, анда Ab Initio сиз үчүн кызыктуу болушу мүмкүн.

Бул бизнеске глобалдык деңгээлде билим топтоп, экосистеманы өнүктүрүүгө жардам берет, ал эми иштеп чыгуучуга ETL боюнча көндүмдөрүн өркүндөтүп, кабыкта билимин өркүндөтөт, PDL тилин өздөштүрүү мүмкүнчүлүгүн берет, жүктөө процесстеринин визуалдык сүрөтүн берет жана өнүгүүнү жөнөкөйлөтөт. функционалдык компоненттердин көптүгүнө байланыштуу.

Бул постто мен Ab Initioнун мүмкүнчүлүктөрү жөнүндө сүйлөшөм жана анын Hive жана GreenPlum менен иштөөсүнүн салыштырма мүнөздөмөлөрүн берем.

  • MDW негизинин сүрөттөлүшү жана аны GreenPlum үчүн ыңгайлаштыруу боюнча иштөө
  • Hive жана GreenPlum ортосундагы Ab Initio өндүрүмдүүлүгүн салыштыруу
  • Near Real Time режиминде 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 бар, операциялык система деп аталат. Жүктөлүп алуу агымдарын пландаштырып жана көзөмөлдөй турган Control>Center бар. Ab Initio GDE уруксат бергенден алда канча примитивдүү деңгээлде иштеп чыгуу үчүн өнүмдөр бар.

MDW негизинин сүрөттөлүшү жана аны GreenPlum үчүн ыңгайлаштыруу боюнча иштөө

Продукциялары менен бирге сатуучу MDW (Metadata Driven Warehouse) продуктуну камсыздайт, ал маалымат кампаларын же маалымат сактагычтарын толтуруу боюнча типтүү тапшырмаларды аткарууга жардам берүү үчүн иштелип чыккан график конфигуратору.

Ал ыңгайлаштырылган (долбоорго тиешелүү) метаберилиштерди талдоочуларды жана кутудан чыккан даяр код генераторлорун камтыйт.

Сизде 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да, Терадатадан айырмаланып, таблицаларды түзүүдө сиз пунктту жазышыңыз керек

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 менен иштеши үчүн Ab Initio кластеринин бардык түйүндөрүнө GreenPlum кардарын орнотуу зарыл болгонун белгилейбиз. Себеби, биз GreenPlum менен бир эле учурда кластерибиздин бардык түйүндөрүнөн туташтырдык. GreenPlumдан окуу параллелдүү болушу жана ар бир параллелдүү Ab Initio жиптери GreenPlum маалыматынын өзүнүн бөлүгүн окуу үчүн, Ab Initio түшүнгөн конструкцияны SQL сурамдарынын "кайда" бөлүмүнө жайгаштырышыбыз керек болчу.

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 өндүрүмдүүлүгүн салыштыруу

Сбербанк MDW тарабынан түзүлгөн графиктердин Hive менен GreenPlumга карата иштешин салыштыруу үчүн эксперимент жүргүздү. Эксперименттин бир бөлүгү катары, Hive учурда Ab Initio менен бир кластерде 5 түйүн, ал эми GreenPlumда өзүнчө кластерде 4 түйүн болгон. Ошол. Hive GreenPlumга караганда аппараттык жактан бир аз артыкчылыкка ээ болгон.

Биз Hive жана GreenPlum ичиндеги маалыматтарды жаңыртуу боюнча бирдей тапшырманы аткарган эки жуп графикти карадык. Ошол эле учурда, MDW конфигуратору тарабынан түзүлгөн графиктер ишке киргизилген:

  • баштапкы жүктөө + уюк таблицасына туш келди түзүлгөн маалыматтардын кошумча жүгү
  • баштапкы жүктөө + кокусунан түзүлгөн маалыматтардын бир эле 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

Уюкта кошумча жүктөө

Жеткиликтүү катарлардын саны
эксперименттин башында максаттуу таблица
6 000 000
60 000 000
600 000 000

Колдонулган дельта сызыктарынын саны
эксперимент учурунда максаттуу таблица
6 000 000
6 000 000
6 000 000

Өсүмдүктүн узактыгы
секунданын ичинде жүктөлөт
88
299
2 541

GreenPlum:

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да баштапкы жүктөө ылдамдыгы сызыктуу түрдө берилиштердин көлөмүнө көз каранды экенин көрөбүз жана жакшыраак жабдыктын себептеринен улам, Hive үчүн GreenPlumга караганда бир аз ылдамыраак.

Уюктагы кошумча жүктөө да сызыктуу түрдө максаттуу таблицада мурда жүктөлгөн маалыматтардын көлөмүнө жараша болот жана көлөм чоңойгон сайын акырындык менен ишке ашат. Бул максаттуу таблицаны толугу менен кайра жазуу зарылчылыгы менен шартталган. Бул чоң таблицаларга кичинекей өзгөртүүлөрдү киргизүү Hive үчүн жакшы эмес экенин билдирет.

GreenPlumдагы кошумча жүктөө максаттуу таблицада мурда жүктөлгөн маалыматтардын көлөмүнөн көз каранды жана тездик менен ишке ашат. Бул жок кылуу операциясына мүмкүндүк берген SQL Joins жана GreenPlum архитектурасынын аркасында болду.

Ошентип, GreenPlum Delta+insert ыкмасын колдонуу менен кошот, бирок Уюкта жок кылуу же жаңыртуу операциялары жок, андыктан толук маалымат массиви кошумча жаңыртуу учурунда толугу менен кайра жазылууга аргасыз болгон. Калың шрифт менен белгиленген уячаларды салыштыруу эң ачык көрүнүп турат, анткени ал ресурстарды көп талап кылган жүктөөлөрдү колдонуунун эң кеңири таралган вариантына туура келет. Бул сыноодо GreenPlum 8 эсеге утканын көрүп жатабыз.

Near Real Time режиминде GreenPlum менен Ab Initio иштөө

Бул экспериментте биз Ab Initioнун GreenPlum таблицасын реалдуу убакытта туш келди түзүлгөн маалымат бөлүктөрү менен жаңыртуу жөндөмүн сынап көрөбүз. Келгиле, GreenPlum таблицасын карап көрөлү dev42_1_db_usl.TESTING_SUBJ_org_finval, аны менен биз иштейбиз.

Аны менен иштөө үчүн биз үч Ab Initio графиктерин колдонобуз:

1) Graph 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га куюлат.

Эми скрипттин журналын карап көрөлү:

2020-06-04 11:49:11 Create_test_data.input.pset баштаңыз
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 at 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 бүтүрүү
2020-06-04 11:50:42 Create_test_data.input.pset баштаңыз
Create_test_data.input.pset 2020-06-04 11:51:06 бүтүрүү
Баштоо mdw_load.regular.current.dev42_1_db_usl_testing_subj_org_finval.pset at 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 бүтүрүү
2020-06-04 11:53:41 Create_test_data.input.pset баштаңыз
Create_test_data.input.pset 2020-06-04 11:54:04 бүтүрүү
Баштоо mdw_load.regular.current.dev42_1_db_usl_testing_subj_org_finval.pset at 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 бүтүрүү
2020-06-04 11:56:51 Create_test_data.input.pset баштаңыз
Create_test_data.input.pset 2020-06-04 11:57:14 бүтүрүү
Баштоо mdw_load.regular.current.dev42_1_db_usl_testing_subj_org_finval.pset at 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 бүтүрүү
2020-06-04 11:59:55 Create_test_data.input.pset баштаңыз
Create_test_data.input.pset 2020-06-04 12:00:23 бүтүрүү
Баштоо mdw_load.regular.current.dev42_1_db_usl_testing_subj_org_finval.pset at 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 бүтүрүү
2020-06-04 12:03:23 Create_test_data.input.pset баштаңыз
Create_test_data.input.pset 2020-06-04 12:03:49 бүтүрүү
Баштоо mdw_load.regular.current.dev42_1_db_usl_testing_subj_org_finval.pset at 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, ошондой эле Qlik, SAP BO, Tableau ж.

Source: www.habr.com

Комментарий кошуу