Hvernig á að eignast vini milli Progress OpenEdge bankakerfisins og Oracle DBMS

Síðan 1999, til að þjónusta bakskrifstofuna, hefur bankinn okkar notað samþætta bankakerfið BIKVIT á Progress OpenEdge vettvangnum, sem er mikið notað um allan heim, þar á meðal í fjármálageiranum. Frammistaða þessa DBMS gerir þér kleift að lesa allt að milljón eða fleiri færslur á sekúndu í einum gagnagrunni (DB). Progress OpenEdge okkar þjónustar um 1,5 milljónir einstakra innlána og um 22,2 milljónir samninga fyrir virkar vörur (bílalán og húsnæðislán) og ber einnig ábyrgð á öllum uppgjörum við eftirlitsaðila (Seðlabankann) og SWIFT.

Hvernig á að eignast vini milli Progress OpenEdge bankakerfisins og Oracle DBMS

Með því að nota Progress OpenEdge stóðum við frammi fyrir þörfinni á að láta það virka með Oracle DBMS. Upphaflega var þessi búnt flöskuháls innviða okkar - þar til við settum upp og stilltum Pro2 CDC - Progress vöru sem gerir þér kleift að senda gögn frá Progress DBMS til Oracle DBMS beint, á netinu. Í þessari færslu munum við segja þér í smáatriðum, með öllum gildrunum, hvernig á að eignast vini á áhrifaríkan hátt á milli OpenEdge og Oracle.

Hvernig það gerðist: að hlaða upp gögnum á QCD með skráardeilingu

Í fyrsta lagi nokkrar staðreyndir um innviði okkar. Fjöldi virkra notenda gagnagrunnsins er um 15 þúsund. Rúmmál allra afkastamikilla gagnagrunna, þar með talið eftirmynda og biðstöðu, er 600 TB, stærsti gagnagrunnurinn er 16,5 TB. Á sama tíma er stöðugt verið að endurnýja gagnagrunnana: á síðasta ári einum hefur um 120 TB af framleiðslugögnum verið bætt við. Kerfið er knúið af 150 framþjónum á x86 pallinum. Gagnagrunnarnir eru hýstir á 21 IBM vettvangsþjónum.

Hvernig á að eignast vini milli Progress OpenEdge bankakerfisins og Oracle DBMS
Framhliðarkerfi, ýmis kjarnabankakerfi og bankaþjónusta eru samþætt OpenEdge Progress (BISCUIT IBS) í gegnum Sonic ESB rútuna. Upphleðsla gagna á QCD á sér stað með skráaskiptum. Fram að ákveðnum tímapunkti hafði þessi lausn tvö stór vandamál í einu - lítil frammistaða við að hlaða upplýsingum inn í gagnavöruhús fyrirtækja (CDW) og langan tíma til að framkvæma gagnaafstemming (afstemming) við önnur kerfi.
Hvernig á að eignast vini milli Progress OpenEdge bankakerfisins og Oracle DBMS
Þess vegna fórum við að leita að tæki sem gæti flýtt fyrir þessum ferlum. Lausnin á báðum vandamálunum var nýja Progress OpenEdge vara – Pro2 CDC (Change Data Capture). Svo, við skulum byrja.

Settu upp Progress OpenEdge og Pro2Oracle

Til að keyra Pro2 Oracle á Windows tölvu stjórnanda er nóg að setja upp Progress OpenEdge Developer Kit Classroom Edition, sem má sækja frítt. Sjálfgefnar OpenEdge uppsetningarskrár:

DLC: C:ProgressOpenEdge
WRK: C:OpenEdgeWRK

ETL ferlar krefjast Progress OpenEdge leyfis útgáfu 11.7+ - nefnilega OE DataServer fyrir Oracle og 4GL þróunarkerfi. Þessi leyfi fylgja með Pro2. Fyrir fullan rekstur DataServer fyrir Oracle með ytri Oracle gagnagrunni er Full Oracle Client settur upp.

Á Oracle servernum þarftu að setja upp Oracle Database 12+, búa til tóman gagnagrunn og bæta við notanda (köllum hann CDC).

Til að setja upp Pro2Oracle skaltu hlaða niður nýjustu dreifingunni frá niðurhalsmiðstöðinni Framfarahugbúnaður. Taktu skjalasafnið niður í möppu C:Pro2 (Til að stilla Pro2 á Unix er sama dreifing notuð og sömu uppsetningarreglur gilda).

Að búa til cdc afritunargagnagrunn

Afritunargagnagrunnur cdc (repl) Pro2 er notað til að geyma upplýsingar um stillingar, þar á meðal afritunarkortið, nöfn endurtekinna gagnagrunna og töflur þeirra. Það inniheldur einnig afritunarröð, sem samanstendur af athugasemdum um þá staðreynd að töflulína í frumgagnagrunninum hefur breyst. Gögn úr afritunarröðinni eru notuð af ETL ferlum til að bera kennsl á línur sem þarf að afrita til Oracle úr upprunagagnagrunninum.

Við erum að búa til sérstakan cdc gagnagrunn.

Aðferð við að búa til gagnagrunn

  1. Á gagnagrunnsþjóninum búum við til möppu fyrir cdc gagnagrunninn - til dæmis á þjóninum /gagnagrunnur/cdc/.
  2. Búðu til dummy fyrir cdc gagnagrunninn: afrita $DLC/tóma geisladisk
  3. Virkjaðu stuðning fyrir stórar skrár: proutil cdc -C EnableLargeFiles
  4. Við undirbúum skriftu til að hefja cdc gagnagrunninn. Upphafsfæribreytur verða að vera svipaðar byrjunarbreytum endurtekna gagnagrunnsins.
  5. Við byrjum cdc gagnagrunninn.
  6. Tengstu við cdc gagnagrunninn og hlaðið Pro2 skemanu úr skránni cdc.df, sem fylgir Pro2.
  7. Við búum til eftirfarandi notendur í cdc gagnagrunninum:

pro2adm – til að tengjast frá Pro2 stjórnborðinu;
pro2etl - til að tengja ETL ferla (ReplBatch);
pro2cdc - til að tengja CDC ferli (CDCBatch);

Virkjar OpenEdge Change Data Capture

Nú skulum við kveikja á CDC vélbúnaðinum sjálfum, með hjálp sem gögn verða afrituð á viðbótar tæknisvæði. Við hvern Progress OpenEdge frumgagnagrunn þarftu að bæta við aðskildum geymslusvæðum þar sem upprunagögnin verða afrituð og virkja vélbúnaðinn sjálfan með því að nota skipunina proutil.

Dæmi um aðferð fyrir bisquit gagnagrunninn

  1. Afrit af vörulista C: Pro2db файл cdcadd.st í bisquit source gagnagrunnsskrána.
  2. Við lýsum í cdcadd.st fast stærðarumfang fyrir svæði "ReplCDCArea" и "ReplCDCArea_IDX". Þú getur bætt við nýjum geymslusvæðum á netinu: prostrct addonline bisquit cdcadd.st
  3. Virkjaðu OpenEdge CDC:
    proutil bisquit -C enablecdc svæði "ReplCDCArea" indexarea "ReplCDCArea_IDX"
  4. Eftirfarandi notendur verða að vera búnir til í upprunagagnagrunninum til að bera kennsl á ferla í gangi:
    a. pro2adm – til að tengjast frá Pro2 stjórnborðinu.
    b. pro2etl – til að tengja ETL ferla (ReplBatch).
    c. pro2cdc – til að tengja CDC ferli (CDCBatch).

Að búa til skemahaldara fyrir DataServer fyrir Oracle

Næst þurfum við að búa til Schema Holder gagnagrunn á þjóninum þar sem gögn frá Progress DBMS verða afrituð í Oracle DBMS. DataServer Schema Holder er tómur Progress OpenEdge gagnagrunnur án notenda eða forritagagna, sem inniheldur kort af samsvörun milli frumtafla og ytri Oracle töflur.

Skema Holder gagnagrunnurinn fyrir Progress OpenEdge DataServer fyrir Oracle fyrir Pro2 verður að vera staðsettur á ETL vinnsluþjóninum; hann er búinn til sérstaklega fyrir hverja grein.

Hvernig á að búa til Schema Holder

  1. Taktu Pro2 dreifinguna upp í möppu /pro2
  2. Búðu til og farðu í möppuna /pro2/dbsh
  3. Búðu til Schema Holder gagnagrunn með því að nota skipunina afritaðu $DLC/tómt bisquitsh
  4. Að framkvæma umbreytinguna bisquitsh inn í nauðsynlega kóðun - til dæmis í UTF-8 ef Oracle gagnagrunnar eru með UTF-8 kóðun: proutil bisquitsh -C convchar umbreyta UTF-8
  5. Eftir að hafa búið til tóman gagnagrunn bisquitsh tengdu við það í eins notendaham: atvinnumaður bisquitsh
  6. Við skulum fara í Data Dictionary: Verkfæri -> Gagnaorðabók -> DataServer -> ORACLE Utilities -> Búa til DataServer Schema
  7. Ræstu Schema Holder
  8. Uppsetning Oracle DataServer miðlara:
    a. Ræstu AdminServer.
    proadsv -byrja
    b. Upphaf Oracle DataServer miðlara
    oraman -nafn orabroker1 -byrjun

Setja upp stjórnborð og afritunarkerfi

Með því að nota Pro2 stjórnunarspjaldið eru Pro2 breytur stilltar, þar á meðal að setja upp afritunarkerfið og búa til ETL ferla (Processor Library), aðal samstillingarforrit (Bulk-Copy Processor), afritunarkveikjur og OpenEdge CDC stefnur. Það eru líka aðalverkfæri til að fylgjast með og stjórna ETL og CDC ferlum. Fyrst af öllu setjum við upp færibreytuskrárnar.

Hvernig á að stilla færibreytuskrár

  1. Farðu í vörulistann C:Pro2bpreplScripts
  2. Opnaðu skrána til að breyta replProc.pf
  3. Bættu við tengibreytum við cdc afritunargagnagrunninn:
    # Afritunargagnagrunnur
    -db cdc -ld repl -H <hýsingarheiti aðalgagnagrunns> -S <gagnagrunnsmiðlari tengi cdc>
    -U pro2admin -P <lykilorð>
  4. Bæta við replProc.pf tengibreytur við upprunagagnagrunna og Schema Holder í formi færibreytuskráa. Heiti færibreytuskrárinnar verður að passa við nafn upprunagagnagrunnsins sem verið er að tengja.
    # Tengstu við allar endurteknar heimildir BISQUIT
    -pf bpreplscriptsbisquit.pf
  5. Bæta við replProc.pf færibreytur til að tengjast Schema Holder.
    #Target Pro DB Schema Holder
    -db bisquitsh -ld bisquitsh
    -H <ETL process host name>
    -S <biskuitsh miðlarahöfn>
    -db bisquitsql
    -ld bisquitsql
    -dt ORACLE
    -S 5162 -H <Oracle miðlari hýsingarheiti>
    -DataService orabroker1
  6. Vistaðu færibreytuskrána replProc.pf
  7. Næst þarftu að búa til og opna til að breyta færibreytuskrám fyrir hvern tengdan upprunagagnagrunn í möppunni C:Pro2bpreplScripts: bisquit.pf. Hver pf skrá inniheldur færibreytur til að tengjast samsvarandi gagnagrunni, til dæmis:
    -db bisquit -ld bisquit -H <hostname> -S <miðlarahöfn>
    -U pro2admin -P <lykilorð>

Til að stilla Windows flýtileiðir þarftu að fara í möppuna C:Pro2bpreplScripts og breyttu „Pro2 – Administration“ flýtileiðinni. Til að gera þetta skaltu opna eiginleika flýtileiðarinnar og í línunni Byrjaðu í tilgreina Pro2 uppsetningarskrána. Svipaða aðgerð verður að gera fyrir „Pro2 – Editor“ og „RunBulkLoader“ flýtivísana.

Pro2 stjórnunaruppsetning: Hleður upphaflegri stillingu

Við skulum ræsa stjórnborðið.

Hvernig á að eignast vini milli Progress OpenEdge bankakerfisins og Oracle DBMS

Farðu í "DB Map".

Hvernig á að eignast vini milli Progress OpenEdge bankakerfisins og Oracle DBMS

Til að tengja gagnagrunna í Pro2 – Administration, farðu í flipann DB kort. Bæta við kortlagningu upprunagagnagrunna - Skema handhafi - Oracle.

Hvernig á að eignast vini milli Progress OpenEdge bankakerfisins og Oracle DBMS

Farðu í flipa Kortlagning. Skráð Heimildagagnagrunnur Sjálfgefið er að fyrsti tengdi upprunagagnagrunnurinn er valinn. Hægra megin á listanum ætti að vera áletrun Allir gagnagrunnar tengdir — völdu gagnagrunnarnir eru tengdir. Hér að neðan til vinstri ættirðu að sjá lista yfir Progress töflur frá bisquit. Til hægri er listi yfir töflur úr Oracle gagnagrunninum.

Að búa til SQL skema og gagnagrunna í Oracle

Til að búa til afritunarkort verður þú fyrst að búa til SQL skema í Oracle. Í Pro2 Administration keyrum við valmyndaratriðið Verkfæri -> Búa til kóða -> Markáætlun, síðan í glugganum Veldu gagnagrunn veldu einn eða fleiri upprunagagnagrunna og færðu þá til hægri.

Hvernig á að eignast vini milli Progress OpenEdge bankakerfisins og Oracle DBMS

Smelltu á OK og veldu möppuna til að vista SQL-skemu.

Næst búum við til grunninn. Þetta er til dæmis hægt að gera í gegnum Oracle SQL verktaki. Til að gera þetta tengjumst við Oracle gagnagrunninum og hleðum skema til að bæta við töflum. Eftir að hafa breytt samsetningu Oracle taflna þarftu að uppfæra SQL skeman í Schema Holder.

Hvernig á að eignast vini milli Progress OpenEdge bankakerfisins og Oracle DBMS

Eftir að niðurhalinu er lokið skaltu loka bisquitsh gagnagrunninum og opna Pro2 stjórnborðið. Töflur úr Oracle gagnagrunninum ættu að birtast á flipanum Kortlagning til hægri.

Taflakortlagning

Til að búa til afritunarkort, í Pro2 stjórnunarborðinu, farðu í flipann Kortlagning og veldu upprunagagnagrunninn. Smelltu á Map Tables, veldu Select Changes vinstra megin við töflurnar sem á að endurtaka í Oracle, færðu þær til hægri og staðfestu valið. Kort verður búið til sjálfkrafa fyrir valdar töflur. Við endurtökum aðgerðina til að búa til afritunarkort fyrir aðra upprunagagnagrunna.

Hvernig á að eignast vini milli Progress OpenEdge bankakerfisins og Oracle DBMS

Búa til Pro2 afritunar örgjörva bókasafn og magnafrita örgjörvaforrit

Afritunarvinnslusafnið er hannað fyrir sérsniðin afritunarferli (ETL) sem vinna úr Pro2 afritunarröðinni og ýta undir breytingar á Oracle gagnagrunninum. Afritunar örgjörva bókasafnsforrit eru sjálfkrafa vistuð í möppuna eftir kynslóð bprepl/repl_proc (PROC_DIRECTORY færibreyta). Til að búa til afritunarvinnslusafnið skaltu fara á Verkfæri -> Búa til kóða -> Örgjörvasafn. Eftir að kynslóð er lokið munu forritin birtast í möppunni bprepl/repl_proc.

Bulk Load Processor forrit eru notuð til að samstilla uppruna Progress gagnagrunna við Oracle gagnagrunninn sem byggir á Progress ABL (4GL) forritunarmálinu. Til að búa til þá skaltu fara í valmyndaratriðið Verkfæri -> Búa til kóða -> Magnafrita örgjörva. Í Velja gagnagrunn valmynd, veldu upprunagagnagrunna, færðu þá hægra megin í glugganum og smelltu OK. Eftir að kynslóð er lokið munu forritin birtast í möppunni bpreplrepl_mproc.

Uppsetning afritunarferla í Pro2

Að skipta töflum í sett sem þjónað er af sérstökum afritunarþræði bætir afköst og skilvirkni Pro2 Oracle. Sjálfgefið er að allar tengingar sem eru búnar til í afritunarkortinu fyrir nýjar afritunartöflur tengjast þræði númer 1. Mælt er með því að aðgreina töflur í mismunandi þræði.

Upplýsingar um stöðu afritunarþráða eru birtar á Pro2 Administration skjánum í Monitor flipanum í Repplication Status hlutanum. Ítarlega lýsingu á breytugildum er að finna í Pro2 skjölunum (möppu C:Pro2Docs).

Búðu til og virkjaðu CDC stefnur

Reglur eru sett af reglum fyrir OpenEdge CDC vélina til að fylgjast með breytingum á töflum. Þegar þetta er skrifað styður Pro2 aðeins CDC stefnur með stigi 0, það er aðeins staðreynd sem er fylgst með skrá breytingar.

Til að búa til CDC-stefnu, á stjórnborðinu, farðu í flipann Kortlagning, veldu upprunagagnagrunninn og smelltu á hnappinn Bæta við/fjarlægja reglur. Í Velja breytingar glugganum sem opnast velurðu vinstra megin og færðu til hægri töflurnar sem þú þarft að búa til eða eyða CDC stefnu fyrir.

Til að virkja, opnaðu flipann Kortlagning aftur, veldu upprunagagnagrunninn og smelltu á hnappinn (In) Virkja reglur. Veldu og færðu til hægri hliðar töflunnar reglurnar sem þarf að virkja, smelltu á Í lagi. Eftir þetta eru þau merkt með grænu. Með því að nota (In) Virkja reglur Þú getur líka gert CDC reglur óvirkar. Öll viðskipti fara fram á netinu.

Hvernig á að eignast vini milli Progress OpenEdge bankakerfisins og Oracle DBMS

Eftir að CDC stefnan er virkjuð eru athugasemdir um breyttar færslur vistaðar á geymslusvæðinu "ReplCDCArea" samkvæmt upprunagagnagrunninum. Þessar athugasemdir verða unnar með sérstöku ferli CDCBatch, sem byggir á þeim mun búa til athugasemdir í Pro2 afritunarröðinni í gagnagrunninum cdc (repl).

Þannig höfum við tvær biðraðir fyrir afritun. Fyrsta stigið er CDCBatch: frá upprunagagnagrunninum fara gögnin fyrst í millistig CDC gagnagrunnsins. Annað stig er þegar gögn eru flutt úr CDC gagnagrunninum til Oracle. Þetta er eiginleiki núverandi arkitektúrs og vörunnar sjálfrar - hingað til hafa hönnuðir ekki getað komið á beinni afritun.

Aðal samstilling

Eftir að hafa virkjað CDC vélbúnaðinn og sett upp Pro2 afritunarþjóninn þurfum við að hefja fyrstu samstillingu. Upphafleg samstillingarskipun:

/pro2/bprepl/Script/replLoad.sh bisquit borðnafn

Eftir að fyrstu samstillingu er lokið er hægt að hefja afritunarferli.

Upphaf afritunarferla

Til að hefja afritunarferli þarftu að keyra skriftu replbatch.sh. Áður en byrjað er skaltu ganga úr skugga um að það séu til replbatch forskriftir fyrir alla þræði - replbatch1, replbatch2, osfrv. Ef allt er á sínum stað skaltu opna skipanalínuna (td. proenv), farðu í möppuna /bprepl/forskriftir og byrjaðu handritið. Í stjórnborðinu athugum við hvort samsvarandi ferli hafi fengið stöðuna RUNNING.

Hvernig á að eignast vini milli Progress OpenEdge bankakerfisins og Oracle DBMS

Niðurstöður

Hvernig á að eignast vini milli Progress OpenEdge bankakerfisins og Oracle DBMS
Eftir innleiðingu flýttum við mjög upphleðslu upplýsinga í gagnavöruhús fyrirtækja. Gögnin komast sjálfkrafa inn í Oracle á netinu. Það er engin þörf á að eyða tíma í að keyra langvarandi fyrirspurnir til að safna gögnum frá mismunandi kerfum. Að auki getur afritunarferlið í þessari lausn þjappað gögnum, sem hefur einnig jákvæð áhrif á hraðann. Nú fór dagleg afstemming BIKVIT kerfisins við önnur kerfi að taka 15-20 mínútur í stað 2-2,5 klukkustunda og heildarafstemming tók nokkrar klukkustundir í stað tveggja daga.

Heimild: www.habr.com

Bæta við athugasemd