Progress OpenEdge банк системасы менен Oracle DBMS ортосунда кантип достосо болот

1999-жылдан бери бэк-офисти тейлөө үчүн биздин банк Progress OpenEdge платформасында интеграцияланган BISKVIT банк тутумун колдонуп келет, ал бүткүл дүйнөдө, анын ичинде финансы секторунда кеңири колдонулат. Бул МББнын иштеши бир маалымат базасында (МБ) секундасына миллион же андан көп жазууларды окууга мүмкүндүк берет. Биздин Progress OpenEdge 1,5 миллион жеке депозиттерди жана активдүү продуктылар боюнча 22,2 миллионго жакын контракттарды (автокредиттер жана ипотека), ошондой эле жөнгө салуучу (Борбордук банк) жана SWIFT менен эсептешүүлөр үчүн жооп берет.

Progress OpenEdge банк системасы менен Oracle DBMS ортосунда кантип достосо болот

Progress OpenEdge колдонуу менен, биз аны Oracle DBMS менен иштешин камсыз кылуу зарылдыгына туш болдук. Башында, бул таңгак биздин инфраструктурабыздын тар боору болгон – биз Pro2 CDC орнотуп, конфигурациялаганга чейин – Прогресс өнүмү Прогресс DBMSтен Oracle DBMSге түз, онлайн режиминде маалыматтарды жөнөтүүгө мүмкүндүк берет. Бул постто биз сизге майда-чүйдөсүнө чейин, бардык тузактар ​​менен, OpenEdge жана Oracle ортосунда кантип натыйжалуу достосо болорун айтып беребиз.

Бул кантип болду: файлдарды бөлүшүү аркылуу QCDге маалыматтарды жүктөө

Биринчиден, биздин инфраструктура тууралуу кээ бир фактылар. Маалыматтар базасынын активдүү колдонуучуларынын саны болжол менен 15 миңди түзөт. Реплика жана күтүү режимин кошкондо бардык өндүрүмдүү маалымат базаларынын көлөмү 600 ТБ, эң чоң маалымат базасы 16,5 ТБ. Ошол эле учурда маалымат базалары тынымсыз толукталып турат: акыркы жылдын ичинде гана 120 ТБга жакын өндүрүштүк маалыматтар кошулду. Система x150 платформасындагы 86 алдыңкы серверлер менен иштейт. Маалымат базалары 21 IBM платформасынын серверинде жайгашкан.

Progress OpenEdge банк системасы менен Oracle DBMS ортосунда кантип достосо болот
Front-end системалары, ар кандай негизги банк тутумдары жана банктык кызматтар OpenEdge Progress (BISCUIT IBS) менен Sonic ESB автобусу аркылуу интеграцияланган. Маалыматтарды QCDге жүктөө файл алмашуу аркылуу ишке ашат. Белгилүү бир убакытка чейин бул чечимде бир эле учурда эки чоң көйгөй болгон - маалыматты корпоративдик маалымат кампасына (CDW) жүктөөнүн төмөн көрсөткүчтөрү жана башка системалар менен маалыматтарды салыштыруу (салыштыруу) үчүн узак убакыт.
Progress OpenEdge банк системасы менен Oracle DBMS ортосунда кантип достосо болот
Ошондуктан, биз бул процесстерди тездете турган куралды издей баштадык. Эки көйгөйдүн тең чечилиши жаңы Progress OpenEdge продуктусу болду - Pro2 CDC (Маалыматтарды өзгөртүү). Ошентип, баштайлы.

Progress OpenEdge жана Pro2Oracle орнотуңуз

Pro2 Oracle'ди администратордун Windows компьютеринде иштетүү үчүн Progress OpenEdge Developer Kit Classroom Edition орнотуу жетиштүү. скачать акысыз. Демейки OpenEdge орнотуу каталогдору:

DLC: C: ProgressOpenEdge
WRK: C: OpenEdgeWRK

ETL процесстери Progress OpenEdge лицензияларынын 11.7+ версиясын талап кылат - тактап айтканда Oracle үчүн OE DataServer жана 4GL Development System. Бул лицензиялар Pro2 менен камтылган. Алыскы Oracle маалымат базасы менен Oracle үчүн DataServer толук иштеши үчүн Full Oracle Client орнотулган.

Oracle серверинде сиз Oracle Database 12+ орнотуп, бош маалымат базасын түзүп, колдонуучуну кошушуңуз керек (келгиле, ага чалалы) CDC).

Pro2Oracle орнотуу үчүн, жүктөө борборунан эң акыркы бөлүштүрүүнү жүктөп алыңыз Прогресс программасы. Архивди каталогго ачыңыз C: Pro2 (Unixте Pro2ди конфигурациялоо үчүн бирдей бөлүштүрүү колдонулат жана ошол эле конфигурация принциптери колдонулат).

CD репликациялоо базасын түзүү

Репликация маалымат базасы cdc (кайталоо) Pro2 конфигурация маалыматын, анын ичинде репликация картасын, репликацияланган маалымат базаларынын аталыштарын жана алардын таблицаларын сактоо үчүн колдонулат. Ал ошондой эле булак базасындагы таблица сабынын өзгөргөндүгү жөнүндө эскертүүлөрдөн турган репликация кезегин камтыйт. Репликация кезегинен алынган маалыматтар ETL процесстери тарабынан булак базасынан Oracleга көчүрүлүшү керек болгон саптарды аныктоо үчүн колдонулат.

Биз өзүнчө CDC маалымат базасын түзүп жатабыз.

Маалыматтар базасын түзүүнүн тартиби

  1. Берилиштер базасынын серверинде биз cdc маалымат базасы үчүн каталог түзөбүз - мисалы, серверде /базасы/cdc/.
  2. CDC маалымат базасы үчүн жасалма түзүү: $DLC/бош CDди көчүрүү
  3. Чоң файлдарды колдоону иштетүү: proutil cdc -C EnableLargeFiles
  4. Биз cdc маалымат базасын баштоо үчүн скрипт даярдайбыз. Баштоо параметрлери репликацияланган маалымат базасынын баштоо параметрлерине окшош болушу керек.
  5. Биз cdc базасын баштайбыз.
  6. CDC маалымат базасына туташыңыз жана файлдан Pro2 диаграммасын жүктөңүз cdc.df, ал Pro2 менен камтылган.
  7. Биз CDC маалымат базасында төмөнкү колдонуучуларды түзөбүз:

pro2adm – Pro2 административдик панелинен туташуу үчүн;
pro2etl – ETL процесстерин туташтыруу үчүн (ReplBatch);
pro2cdc – CDC процесстерин туташтыруу үчүн (CDCBatch);

OpenEdge Change Data Capture иштетилүүдө

Эми CDC механизминин өзүн күйгүзөлү, анын жардамы менен маалыматтар кошумча технологиялык аймакка көчүрүлөт. Ар бир Progress OpenEdge булак маалымат базасына сиз булак маалыматтары кайталана турган өзүнчө сактоо аймактарын кошуп, буйрукту колдонуу менен механизмдин өзүн иштетишиңиз керек. proutil.

Бисквит маалымат базасы үчүн мисал процедурасы

  1. Каталогдон көчүрүү C:Pro2db билэ cdcadd.st bisquit булагы маалымат базасынын каталогуна.
  2. ичинде сүрөттөп беребиз cdcadd.st аймактар ​​үчүн белгиленген өлчөмдөрү "ReplCDCArea" и "ReplCDCArea_IDX". Сиз онлайн жаңы сактоо аймактарын кошо аласыз: prostrct addonline bisquit cdcadd.st
  3. OpenEdge CDC иштетүү:
    proutil bisquit -C enablecdc аймагы "ReplCDCArea" indexarea "ReplCDCArea_IDX"
  4. Иштеп жаткан процесстерди аныктоо үчүн булак базасында төмөнкү колдонуучулар түзүлүшү керек:
    а. pro2adm – Pro2 административдик панелинен туташуу үчүн.
    б. pro2etl – ETL процесстерин туташтыруу үчүн (ReplBatch).
    в. pro2cdc – CDC процесстерин туташтыруу үчүн (CDCBatch).

Oracle үчүн DataServer үчүн схема кармоочуну түзүү

Андан кийин, серверде Schema Holder маалымат базасын түзүшүбүз керек, анда Прогресс ДББсынын маалыматтары Oracle DBMSге репликацияланат. DataServer Schema Holder – бул булак таблицалары менен тышкы Oracle таблицаларынын ортосундагы кат алышуу картасын камтыган, колдонуучулары же колдонмо маалыматтары жок бош Progress OpenEdge маалымат базасы.

Pro2 үчүн Oracle үчүн Progress OpenEdge DataServer үчүн Schema Holder маалымат базасы ETL процесс серверинде жайгашуусу керек, ал ар бир филиал үчүн өзүнчө түзүлөт.

Схема кармоочусун кантип түзүү керек

  1. Pro2 бөлүштүрүүнү каталогго ачыңыз /pro2
  2. Түзүңүз жана каталогго өтүңүз /pro2/dbsh
  3. буйругун колдонуп Schema Holder маалымат базасын түзүү $DLC/бош бисквитш көчүрүү
  4. Конверсияны аткаруу бисквитш талап кылынган коддоого - мисалы, UTF-8де, эгерде Oracle маалымат базасында UTF-8 коддоосу бар болсо: proutil bisquitsh -C convchar UTF-8 конверт
  5. Бош маалымат базасын түзгөндөн кийин бисквитш ага бир колдонуучу режиминде туташуу: pro bisquitsh
  6. Берилиштер сөздүгүнө баралы: Куралдар -> Маалымат Сөздүгү -> DataServer -> ORACLE Utilities -> DataServer схемасын түзүү
  7. Схема кармагычты ишке киргизиңиз
  8. Oracle DataServer брокерин орнотуу:
    а. AdminServer баштоо.
    proadsv -старт
    б. Oracle DataServer брокеринин башталышы
    oraman -name orabroker1 -старт

Административдик панелди жана репликация схемасын орнотуу

Pro2 административдик панелин колдонуу менен Pro2 параметрлери конфигурацияланат, анын ичинде репликация схемасын орнотуу жана ETL процесстерин түзүү (Процессордун китепканасы), негизги синхрондоштуруу программалары (Жаңыр көчүрүү процессору), репликация триггерлери жана OpenEdge CDC саясаттары. ETL жана CDC процесстерин көзөмөлдөө жана башкаруу үчүн негизги инструменттер да бар. Биринчиден, биз параметр файлдарын орнотобуз.

Параметр файлдарын кантип конфигурациялоо керек

  1. Каталогко өтүңүз C:Pro2bpreplScripts
  2. Файлды түзөтүү үчүн ачыңыз replProc.pf
  3. CD репликация базасына туташуу параметрлерин кошуу:
    # Репликация маалымат базасы
    -db cdc -ld repl -H <негизги базанын хост аты> -S <берилиш базасы брокери порт cdc>
    -U pro2admin -P <сырсөз>
  4. кошуу replProc.pf туташуу параметрлерин булак маалымат базаларына жана Схема кармоочуга параметр файлдары түрүндө. Параметрлер файлынын аты туташып жаткан булак маалымат базасынын атына дал келиши керек.
    # Бардык кайталанган булактарга туташуу BISQUIT
    -pf bpreplscriptsbisquit.pf
  5. кошуу replProc.pf схема кармоочуга туташуу үчүн параметрлер.
    #Target Pro DB схемасынын ээси
    -дб бисквитш -лд бисквитш
    -H <ETL процессинин хост аты>
    -S <biskuitsh брокер порт>
    -db bisquitsql
    -ld bisquitsql
    -dt ORACLE
    -S 5162 -H <Oracle брокеринин хост аты>
    -DataService orabroker1
  6. Параметрлер файлын сактаңыз replProc.pf
  7. Андан кийин, каталогдогу ар бир туташкан булак маалымат базасы үчүн параметр файлдарын түзөтүү үчүн түзүп, ачышыңыз керек C:Pro2bpreplScripts: bisquit.pf. Ар бир pf файлы тиешелүү маалымат базасына туташуу үчүн параметрлерди камтыйт, мисалы:
    -db bisquit -ld bisquit -H <хост аты> -S <брокер порт>
    -U pro2admin -P <сырсөз>

Windows жарлыктарын конфигурациялоо үчүн каталогго өтүшүңүз керек C:Pro2bpreplScripts жана "Pro2 - Administration" жарлыгын түзөтүңүз. Бул үчүн, жарлыктын касиеттерин жана сапта ачыңыз Баштоо Pro2 орнотуу каталогун көрсөтүңүз. Ушундай эле операция “Pro2 – Editor” жана “RunBulkLoader” жарлыктар үчүн жасалышы керек.

Pro2 Администрациясын орнотуу: Баштапкы конфигурация жүктөлүүдө

Консолду ишке киргизели.

Progress OpenEdge банк системасы менен Oracle DBMS ортосунда кантип достосо болот

"МБ картасына" өтүңүз.

Progress OpenEdge банк системасы менен Oracle DBMS ортосунда кантип достосо болот

Pro2 – Администрациядагы маалымат базаларын байланыштыруу үчүн өтмөккө өтүңүз DB картасы. Булак маалымат базаларынын картасын кошуу - Схема кармоочу - Oracle.

Progress OpenEdge банк системасы менен Oracle DBMS ортосунда кантип достосо болот

Өтмөккө өтүңүз Mapping. тизме Source Database Демейки боюнча, биринчи туташкан булак маалымат базасы тандалган. Тизменин оң жагында жазуу болушу керек Бардык маалымат базалары туташкан — тандалган маалымат базалары туташтырылган. Төмөндө сол жакта сиз бисквиттен Прогресс таблицаларынын тизмесин көрүшүңүз керек. Оң жакта Oracle маалымат базасынан таблицалардын тизмеси.

Oracle'да SQL схемаларын жана маалымат базасын түзүү

Репликация картасын түзүү үчүн, адегенде түзүү керек SQL схемасы Oracle ичинде. Pro2 Администрациясында биз меню пунктун аткарабыз Куралдар -> Кодду түзүү -> Максаттуу схема, андан кийин диалог кутусуна Маалыматтар базасын тандаңыз бир же бир нече булак маалымат базасын тандап, аларды оңго жылдырыңыз.

Progress OpenEdge банк системасы менен Oracle DBMS ортосунда кантип достосо болот

OK баскычын чыкылдатып, SQL схемаларын сактоо үчүн каталогду тандаңыз.

Андан кийин биз базаны түзөбүз. Бул, мисалы, аркылуу жасалышы мүмкүн Oracle SQL Иштеп чыгуучусу. Бул үчүн, биз Oracle маалымат базасына туташып, таблицаларды кошуу үчүн схеманы жүктөйбүз. Oracle таблицаларынын курамын өзгөрткөндөн кийин, сиз SQL схемаларын Schema Holder-де жаңыртышыңыз керек.

Progress OpenEdge банк системасы менен Oracle DBMS ортосунда кантип достосо болот

Жүктөп алуу ийгиликтүү аяктагандан кийин, bisquitsh маалымат базасынан чыгып, Pro2 административдик панелин ачыңыз. Oracle маалымат базасынын таблицалары оң жактагы Карталоо өтмөгүндө пайда болушу керек.

Таблица картасы

Репликация картасын түзүү үчүн, Pro2 административдик панелинен Карталоо өтмөгүнө өтүп, булак маалымат базасын тандаңыз. Карта таблицаларын чыкылдатыңыз, Oracleда кайталанышы керек болгон таблицалардын сол жагындагы Өзгөртүүлөрдү тандаңыз, аларды оңго жылдырыңыз жана тандоону ырастаңыз. Тандалган таблицалар үчүн карта автоматтык түрдө түзүлөт. Башка булак маалымат базалары үчүн репликация картасын түзүү операциясын кайталайбыз.

Progress OpenEdge банк системасы менен Oracle DBMS ортосунда кантип достосо болот

Pro2 репликация процессорунун китепканасын жана жапырт көчүрмө процессор программаларын түзүү

Репликация процессорунун китепканасы Pro2 репликация кезегин иштеткен жана Oracle маалымат базасына өзгөртүүлөрдү түртүүчү ыңгайлаштырылган репликация процесстери (ETLs) үчүн иштелип чыккан. Репликация процессорунун китепкана программалары муундан кийин автоматтык түрдө каталогго сакталат bprepl/repl_proc (PROC_DIRECTORY параметри). Репликация процессор китепканасын түзүү үчүн, өтүңүз Куралдар -> Кодду түзүү -> Процессордун китепканасы. Генерация аяктагандан кийин, программалар каталогдо пайда болот bprepl/repl_proc.

Bulk Load Processor программалары Progress ABL (4GL) программалоо тилине негизделген максаттуу Oracle маалымат базасы менен Progress маалымат базасын синхрондоштуруу үчүн колдонулат. Аларды түзүү үчүн меню пунктуна өтүңүз Куралдар -> Кодду түзүү -> Жаппай көчүрүү процессору. Берилиштер базасын тандоо диалог терезесинде булак маалымат базаларын тандап, аларды терезенин оң жагына жылдырып, чыкылдатыңыз OK. Генерация аяктагандан кийин, программалар каталогдо пайда болот bpreplrepl_mpoc.

Pro2де репликация процесстерин орнотуу

Таблицаларды өзүнчө репликация жиптери тейлеген топтомдорго бөлүү Pro2 Oracleнин иштешин жана натыйжалуулугун жакшыртат. Демейки боюнча, жаңы репликация таблицалары үчүн репликация картасында түзүлгөн бардык байланыштар жиптин номери 1 менен байланышкан. Таблицаларды түрдүү жиптерге бөлүү сунушталат.

Репликациялоо жиптеринин абалы жөнүндө маалымат Pro2 Администрация экранында Репликация статусу бөлүмүндөгү Монитор өтмөгүндө көрсөтүлөт. Параметрлердин маанилеринин толук сүрөттөлүшүн Pro2 документациясынан тапса болот (C:Pro2Docs каталогу).

CDC саясаттарын түзүү жана активдештирүү

Саясаттар таблицалардагы өзгөрүүлөргө мониторинг жүргүзүү үчүн OpenEdge CDC кыймылдаткычы үчүн эрежелердин жыйындысы. Жазуу учурунда Pro2 0 деңгээли менен CDC саясатын гана колдойт, башкача айтканда, бир гана факт көзөмөлдөнөт өзгөртүүлөрдү жазуу.

CDC саясатын түзүү үчүн, административдик панелде Карталоо өтмөгүнө өтүп, маалымат базасын тандап, Саясаттарды кошуу/алып салуу баскычын басыңыз. Ачылган Өзгөртүүлөрдү тандоо терезесинде CDC саясатын түзүү же жок кылуу керек болгон таблицаларды сол тараптан тандап, оңго жылдырыңыз.

Жандыруу үчүн Карталоо кошумча барагын кайра ачып, маалымат базасын тандап, баскычты басыңыз (In) Саясаттарды активдештирүү. Активдештириле турган саясаттарды тандап, таблицанын оң жагына жылдырып, OK баскычын чыкылдатыңыз. Андан кийин алар жашыл менен белгиленет. Жардамы менен (In) Саясаттарды активдештирүү Сиз ошондой эле CDC саясаттарын өчүрө аласыз. Бардык транзакциялар онлайн жүргүзүлөт.

Progress OpenEdge банк системасы менен Oracle DBMS ортосунда кантип достосо болот

CDC саясаты иштетилгенден кийин, өзгөртүлгөн жазуулар жөнүндө эскертүүлөр сактоо аймагына сакталат "ReplCDCArea" булак базасына ылайык. Бул ноталар атайын процесс аркылуу иштетилет CDCBatch, алардын негизинде маалымат базасында Pro2 репликация кезегинде эскертүүлөрдү түзөт cdc (кайталоо).

Ошентип, бизде репликация үчүн эки кезек бар. Биринчи этап - CDCBatch: булак маалымат базасынан маалыматтар адегенде ортодогу CDC маалымат базасына барат. Экинчи этап - маалыматтар CDC маалымат базасынан Oracleга өткөрүлөт. Бул учурдагы архитектуранын жана продуктунун бир өзгөчөлүгү - ушул убакка чейин иштеп чыгуучулар түз репликацияны орното алышкан эмес.

Негизги синхрондоштуруу

CDC механизмин иштетип, Pro2 репликация серверин орноткондон кийин, биз баштапкы синхрондоштурууну башташыбыз керек. Баштапкы синхрондоштуруу буйругу:

/pro2/bprepl/Script/replLoad.sh бисквит таблица-аты

Алгачкы синхрондоштуруу аяктагандан кийин, репликация процесстерин баштоого болот.

Репликация процесстеринин башталышы

Репликация процесстерин баштоо үчүн сиз скриптти иштетишиңиз керек replbatch.sh. Баштоодон мурун, бардык жиптер үчүн replbatch скрипттери бар экенин текшериңиз - replbatch1, replbatch2, ж.б. Эгер баары ордунда болсо, буйрук сабын ачыңыз (мисалы, proenv), каталогго өтүңүз /bprepl/scripts жана сценарийди баштаңыз. Административдик панелде биз тиешелүү процесстин ЖҮРГҮЗҮҮ статусун алганын текшеребиз.

Progress OpenEdge банк системасы менен Oracle DBMS ортосунда кантип достосо болот

натыйжалары

Progress OpenEdge банк системасы менен Oracle DBMS ортосунда кантип достосо болот
Ишке ашыруудан кийин биз корпоративдик маалымат кампасына маалыматты жүктөөнү абдан тездеттик. Маалыматтар автоматтык түрдө онлайн Oracle'га кирет. Ар кандай системалардан маалыматтарды чогултуу үчүн узакка созулган сурамдарды аткарууга убакыт коротуунун кереги жок. Мындан тышкары, бул чечимде репликация процесси маалыматтарды кысуу мүмкүн, бул да ылдамдыкка оң таасирин тийгизет. Эми BISKVIT системасын башка системалар менен күн сайын салыштыруу 15-20 сааттын ордуна 2-2,5 мүнөттү талап кыла баштады, ал эми толук элдештирүүгө эки күндүн ордуна бир нече саат талап кылынат.

Source: www.habr.com

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