Kā sadraudzēties starp Progress OpenEdge banku sistēmu un Oracle DBVS

KopÅ” 1999. gada back office apkalpoÅ”anai mÅ«su banka izmanto integrēto banku sistēmu BISKVIT platformā Progress OpenEdge, kas tiek plaÅ”i izmantota visā pasaulē, tostarp finanÅ”u sektorā. Å Ä«s DBVS veiktspēja ļauj vienā datu bāzē (DB) nolasÄ«t lÄ«dz pat miljonam vai vairāk ierakstu sekundē. MÅ«su Progress OpenEdge apkalpo aptuveni 1,5 miljonus individuālo noguldÄ«jumu un aptuveni 22,2 miljonus lÄ«gumu par aktÄ«viem produktiem (auto aizdevumiem un hipotēkām), kā arÄ« ir atbildÄ«gs par visiem norēķiniem ar regulatoru (Centrālo banku) un SWIFT.

Kā sadraudzēties starp Progress OpenEdge banku sistēmu un Oracle DBVS

Izmantojot Progress OpenEdge, mēs saskārāmies ar nepiecieÅ”amÄ«bu nodroÅ”ināt tā darbÄ«bu ar Oracle DBVS. Sākotnēji Å”is savienojums bija mÅ«su infrastruktÅ«ras saÅ”aurinājums ā€” lÄ«dz mēs instalējām un konfigurējām Pro2 CDC ā€” Progress produktu, kas ļauj nosÅ«tÄ«t datus no Progress DBVS uz Oracle DBVS tieÅ”i tieÅ”saistē. Å ajā rakstā mēs jums detalizēti un ar visām nepilnÄ«bām pastāstÄ«sim, kā efektÄ«vi sadraudzēties starp OpenEdge un Oracle.

Kā tas notika: datu augŔupielāde QCD, izmantojot failu koplietoŔanu

Pirmkārt, daži fakti par mÅ«su infrastruktÅ«ru. Datu bāzes aktÄ«vo lietotāju skaits ir aptuveni 15 tÅ«kstoÅ”i. Visu produktÄ«vo datu bāzu apjoms, ieskaitot repliku un gaidÄ«Å”anas režīmu, ir 600 TB, lielākā datubāze ir 16,5 TB. Tajā paŔā laikā datu bāzes tiek pastāvÄ«gi papildinātas: pēdējā gada laikā vien ir pievienoti aptuveni 120 TB produktÄ«vu datu. Sistēmu darbina 150 priekŔējie serveri x86 platformā. Datu bāzes tiek mitinātas 21 IBM platformas serverÄ«.

Kā sadraudzēties starp Progress OpenEdge banku sistēmu un Oracle DBVS
PriekÅ”gala sistēmas, dažādas banku pamatsistēmas un banku pakalpojumi ir integrēti ar OpenEdge Progress (BISCUIT IBS), izmantojot Sonic ESB kopni. Datu augÅ”upielāde QCD notiek, izmantojot failu apmaiņu. LÄ«dz noteiktam brÄ«dim Å”im risinājumam bija uzreiz divas lielas problēmas - zema veiktspēja informācijas augÅ”upielādē korporatÄ«vajā datu noliktavā (CDW) un ilgs datu saskaņoÅ”anas (saskaņoÅ”anas) veikÅ”anas laiks ar citām sistēmām.
Kā sadraudzēties starp Progress OpenEdge banku sistēmu un Oracle DBVS
Tāpēc mēs sākām meklēt rÄ«ku, kas varētu paātrināt Å”os procesus. Abu problēmu risinājums bija jaunais Progress OpenEdge produkts ā€“ Pro2 CDC (Change Data Capture). Tātad, sāksim.

Instalējiet Progress OpenEdge un Pro2Oracle

Lai palaistu Pro2 Oracle administratora Windows datorā, pietiek ar Progress OpenEdge Developer Kit Classroom Edition instalÄ“Å”anu, ko var download par brÄ«vu. Noklusējuma OpenEdge instalācijas direktoriji:

DLC: C: ProgressOpenEdge
WRK: C:OpenEdgeWRK

ETL procesiem ir nepiecieÅ”amas Progress OpenEdge licenču versija 11.7+, proti, OE DataServer for Oracle un 4GL Development System. Å Ä«s licences ir iekļautas Pro2. Lai pilnÄ«bā darbotos DataServer for Oracle ar attālo Oracle datu bāzi, ir instalēts Full Oracle Client.

Oracle serverÄ« ir jāinstalē Oracle Database 12+, jāizveido tukÅ”a datu bāze un jāpievieno lietotājs (sauksim viņu CDC).

Lai instalētu Pro2Oracle, lejupielādējiet jaunāko izplatÄ«Å”anu no lejupielādes centra Progresa programmatÅ«ra. Izsaiņojiet arhÄ«vu direktorijā C: Pro2 (Lai konfigurētu Pro2 operētājsistēmā Unix, tiek izmantots tas pats sadalÄ«jums un tiek piemēroti tie paÅ”i konfigurācijas principi).

CDc replikācijas datu bāzes izveide

Replikācijas datu bāze cdc (atkārtot) Pro2 tiek izmantots, lai saglabātu konfigurācijas informāciju, tostarp replikācijas karti, replicēto datu bāzu nosaukumus un to tabulas. Tajā ir arī replikācijas rinda, kas sastāv no piezīmēm par to, ka avota datubāzē ir mainīta tabulas rinda. Datus no replikācijas rindas izmanto ETL procesi, lai identificētu rindas, kas jākopē uz Oracle no avota datu bāzes.

Mēs veidojam atseviŔķu cdc datubāzi.

Datu bāzes izveides procedūra

  1. Datu bāzes serverī mēs izveidojam direktoriju cdc datubāzei - piemēram, serverī /database/cdc/.
  2. Izveidojiet manekenu cdc datubāzei: kopēt $DLC/tukÅ”u kompaktdisku
  3. Iespējot atbalstu lieliem failiem: proutil cdc -C EnableLargeFiles
  4. Sagatavojam skriptu cdc datu bāzes palaiÅ”anai. Sākuma parametriem jābÅ«t lÄ«dzÄ«giem replicētās datu bāzes sākuma parametriem.
  5. Mēs sākam cdc datubāzi.
  6. Izveidojiet savienojumu ar cdc datu bāzi un ielādējiet Pro2 shēmu no faila cdc.df, kas ir iekļauts Pro2.
  7. Mēs izveidojam Ŕādus lietotājus cdc datu bāzē:

pro2adm ā€“ pieslēgÅ”anai no Pro2 administratÄ«vā paneļa;
pro2etl ā€“ ETL procesu savienoÅ”anai (ReplBatch);
pro2cdc ā€“ CDC procesu savienoÅ”anai (CDCBatch);

OpenEdge Change Data Capture aktivizēŔana

Tagad ieslēdzam paÅ”u CDC mehānismu, ar kura palÄ«dzÄ«bu dati tiks replicēti uz papildu tehnoloÄ£iju apgabalu. Katrai Progress OpenEdge avota datu bāzei ir jāpievieno atseviŔķas krātuves zonas, kurās tiks dublēti avota dati, un jāaktivizē pats mehānisms, izmantojot komandu proutil.

Procedūras piemērs biskvīta datubāzei

  1. KopÄ“Å”ana no kataloga C: Pro2db fails cdcadd.st uz bisquit avota datu bāzes direktoriju.
  2. Mēs aprakstām iekŔā cdcadd.st fiksēta lieluma apmēri reÄ£ioniem "ReplCDCArea" Šø "ReplCDCArea_IDX". Varat tieÅ”saistē pievienot jaunas krātuves vietas: prostrct addonline bisquit cdcadd.st
  3. Aktivizējiet OpenEdge CDC:
    proutil bisquit -C enablecdc apgabals "ReplCDCArea" indeksa apgabals "ReplCDCArea_IDX"
  4. Lai identificētu darbojoÅ”os procesus, avota datubāzē ir jāizveido Ŕādi lietotāji:
    a. pro2adm ā€“ savienoÅ”anai no Pro2 administratÄ«vā paneļa.
    b. pro2etl ā€“ ETL procesu savienoÅ”anai (ReplBatch).
    c. pro2cdc ā€“ CDC procesu savienoÅ”anai (CDCBatch).

Shēmas turētāja izveide datu serverim Oracle

Tālāk mums serverÄ« ir jāizveido shēmas turētāja datu bāze, kurā dati no Progress DBVS tiks replicēti uz Oracle DBVS. DataServer shēmas turētājs ir tukÅ”a Progress OpenEdge datu bāze bez lietotājiem vai lietojumprogrammu datiem, kas satur korespondences karti starp avota tabulām un ārējām Oracle tabulām.

Progress OpenEdge DataServer for Oracle for Pro2 shēmas turētāja datu bāzei jāatrodas ETL procesa serverÄ«; tā tiek izveidota katrai filiālei atseviŔķi.

Kā izveidot shēmas turētāju

  1. Izsaiņojiet Pro2 izplatÄ«Å”anu direktorijā /pro2
  2. Izveidojiet un dodieties uz direktoriju /pro2/dbsh
  3. Izveidojiet shēmas turētāja datu bāzi, izmantojot komandu kopēt $DLC/tukÅ”u biskvitu
  4. Konversijas veikÅ”ana biskvits vajadzÄ«gajā kodējumā - piemēram, UTF-8, ja Oracle datu bāzēm ir UTF-8 kodējums: proutil bisquitsh -C convchar konvertē UTF-8
  5. Pēc tukÅ”as datu bāzes izveidoÅ”anas biskvits izveidojiet savienojumu ar to viena lietotāja režīmā: pro biskvits
  6. Dosimies uz datu vārdnīcu: Rīki -> Datu vārdnīca -> DataServer -> ORACLE Utilities -> Izveidot datu servera shēmu
  7. Palaidiet shēmas turētāju
  8. Oracle DataServer brokera iestatīŔana:
    a. Startējiet AdminServer.
    proadsv -sākt
    b. Oracle DataServer brokera sākums
    oraman -nosaukums orabroker1 -sākums

AdministratÄ«vā paneļa un replikācijas shēmas iestatÄ«Å”ana

Izmantojot Pro2 administratÄ«vo paneli, tiek konfigurēti Pro2 parametri, tostarp replikācijas shēmas iestatÄ«Å”ana un ETL procesu Ä£enerÄ“Å”ana (procesora bibliotēka), primārās sinhronizācijas programmas (Bulk-Copy Processor), replikācijas trigeri un OpenEdge CDC politikas. Ir arÄ« galvenie rÄ«ki ETL un CDC procesu uzraudzÄ«bai un pārvaldÄ«bai. Pirmkārt, mēs iestatām parametru failus.

Kā konfigurēt parametru failus

  1. Dodieties uz katalogu C:Pro2bpreplScripts
  2. Atveriet failu rediģēŔanai replProc.pf
  3. Pievienojiet savienojuma parametrus cdc replikācijas datu bāzei:
    # Replikācijas datu bāze
    -db cdc -ld repl -H <galvenās datu bāzes resursdatora nosaukums> -S <datu bāzes brokera ports cdc>
    -U pro2admin -P <parole>
  4. Pievienot replProc.pf savienojuma parametrus ar avota datu bāzēm un shēmas turētāju parametru failu veidā. Parametru faila nosaukumam ir jāatbilst savienojamās avota datu bāzes nosaukumam.
    # Izveidojiet savienojumu ar visiem replicētajiem avotiem BISQUIT
    -pf bpreplscriptsbisquit.pf
  5. Pievienot replProc.pf parametri savienojuma izveidei ar Schema Holder.
    #Target Pro DB shēmas turētājs
    -db biskvitsh -ld biskvitsh
    -H <ETL procesa resursdatora nosaukums>
    -S <biskuitsh brokerports>
    -db bisquitsql
    -ld bisquitsql
    -dt ORACLE
    -S 5162 -H <Oracle broker resursdatora nosaukums>
    -DataService orabroker1
  6. Saglabājiet parametru failu replProc.pf
  7. Pēc tam jums ir jāizveido un jāatver rediģēŔanai parametru faili katrai pievienotajai avota datubāzei direktorijā C:Pro2bpreplScripts: bisquit.pf. Katrs pf fails satur parametrus savienojuma izveidei ar attiecÄ«go datu bāzi, piemēram:
    -db bisquit -ld bisquit -H <resursdatora nosaukums> -S <brokera ports>
    -U pro2admin -P <parole>

Lai konfigurētu Windows Ä«sceļus, jums jāiet uz direktoriju C:Pro2bpreplScripts un rediģējiet saÄ«sni ā€œPro2 ā€“ Administrationā€. Lai to izdarÄ«tu, atveriet saÄ«snes rekvizÄ«tus un rindā Sāciet norādiet Pro2 instalācijas direktoriju. LÄ«dzÄ«ga darbÄ«ba jāveic saÄ«snēm ā€œPro2 ā€“ Editorā€ un ā€œRunBulkLoaderā€.

Pro2 administrÄ“Å”anas iestatÄ«Å”ana: tiek ielādēta sākotnējā konfigurācija

Palaidīsim konsoli.

Kā sadraudzēties starp Progress OpenEdge banku sistēmu un Oracle DBVS

Dodieties uz "DB karti".

Kā sadraudzēties starp Progress OpenEdge banku sistēmu un Oracle DBVS

Lai saistÄ«tu datu bāzes programmā Pro2 ā€” AdministrÄ“Å”ana, atveriet cilni DB karte. Pievienot avotu datu bāzu kartÄ“Å”anu - Shēmas turētājs - Oracle.

Kā sadraudzēties starp Progress OpenEdge banku sistēmu un Oracle DBVS

Dodieties uz cilni KartÄ“Å”ana. Sarakstā Avotu datu bāze Pēc noklusējuma ir atlasÄ«ta pirmā savienotā avota datu bāze. Pa labi no saraksta jābÅ«t uzrakstam Visas datu bāzes ir savienotas ā€” atlasÄ«tās datu bāzes ir savienotas. Zemāk kreisajā pusē vajadzētu redzēt sarakstu ar progresa tabulām no bisquit. Labajā pusē ir Oracle datu bāzes tabulu saraksts.

SQL shēmu un datu bāzu izveide programmā Oracle

Lai izveidotu replikācijas karti, vispirms ir jāģenerē SQL shēma Orākulā. Pro2 administrācijā mēs izpildām izvēlnes vienumu Rīki -> Ģenerēt kodu -> Mērķa shēma, pēc tam dialoglodziņā Atlasiet Database atlasiet vienu vai vairākas avotu datu bāzes un pārvietojiet tās pa labi.

Kā sadraudzēties starp Progress OpenEdge banku sistēmu un Oracle DBVS

NoklikŔķiniet uz Labi un atlasiet direktoriju, lai saglabātu SQL shēmas.

Tālāk mēs izveidojam pamatni. To var izdarÄ«t, piemēram, izmantojot Oracle SQL izstrādātājs. Lai to izdarÄ«tu, mēs izveidojam savienojumu ar Oracle datu bāzi un ielādējam shēmu tabulu pievienoÅ”anai. Pēc Oracle tabulu sastāva maiņas ir jāatjaunina SQL shēmas shēmu turētājā.

Kā sadraudzēties starp Progress OpenEdge banku sistēmu un Oracle DBVS

Kad lejupielāde ir veiksmÄ«gi pabeigta, izejiet no bisquitsh datu bāzes un atveriet Pro2 administratÄ«vo paneli. Tabulām no Oracle datu bāzes vajadzētu parādÄ«ties cilnē KartÄ“Å”ana labajā pusē.

Tabulas kartēŔana

Lai izveidotu replikācijas karti, Pro2 administratÄ«vajā panelÄ« atveriet cilni KartÄ“Å”ana un atlasiet avota datu bāzi. NoklikŔķiniet uz Map Tables, atlasiet AtlasÄ«t izmaiņas pa kreisi no tabulām, kuras jāreplicē Oracle, pārvietojiet tās pa labi un apstipriniet atlasi. AtlasÄ«tajām tabulām automātiski tiks izveidota karte. Mēs atkārtojam darbÄ«bu, lai izveidotu replikācijas karti citām avota datu bāzēm.

Kā sadraudzēties starp Progress OpenEdge banku sistēmu un Oracle DBVS

Pro2 replikācijas procesora bibliotēkas un lielapjoma kopÄ“Å”anas procesora programmu Ä£enerÄ“Å”ana

ReplicÄ“Å”anas procesora bibliotēka ir paredzēta pielāgotiem replikācijas procesiem (ETL), kas apstrādā Pro2 replikācijas rindu un nospiež izmaiņas Oracle datu bāzē. Replikācijas procesora bibliotēkas programmas pēc paaudzes tiek automātiski saglabātas direktorijā bprepl/repl_proc (parametrs PROC_DIRECTORY). Lai Ä£enerētu replikācijas procesora bibliotēku, dodieties uz RÄ«ki -> Ä¢enerēt kodu -> Procesora bibliotēka. Pēc Ä£enerÄ“Å”anas pabeigÅ”anas programmas parādÄ«sies direktorijā bprepl/repl_proc.

Lielapjoma ielādes procesora programmas tiek izmantotas, lai sinhronizētu avota Progress datu bāzes ar mērÄ·a Oracle datu bāzi, kuras pamatā ir Progress ABL (4GL) programmÄ“Å”anas valoda. Lai tos Ä£enerētu, dodieties uz izvēlnes vienumu RÄ«ki -> Ä¢enerēt kodu -> Lielapjoma kopÄ“Å”anas procesors. Dialoglodziņā AtlasÄ«t datu bāzi atlasiet avota datu bāzes, pārvietojiet tās uz loga labo pusi un noklikŔķiniet uz OK. Pēc Ä£enerÄ“Å”anas pabeigÅ”anas programmas parādÄ«sies direktorijā bpreplrepl_mproc.

Replikācijas procesu iestatīŔana programmā Pro2

Tabulu sadalÄ«Å”ana komplektos, ko apkalpo atseviŔķs replikācijas pavediens, uzlabo Pro2 Oracle veiktspēju un efektivitāti. Pēc noklusējuma visi savienojumi, kas izveidoti replikācijas kartē jaunām replikācijas tabulām, ir saistÄ«ti ar pavediena numuru 1. Ieteicams tabulas atdalÄ«t dažādos pavedienos.

Informācija par replikācijas pavedienu statusu tiek parādÄ«ta Pro2 administrÄ“Å”anas ekrānā, kas atrodas sadaļas ReplicÄ“Å”anas statuss cilnē Monitor. Detalizētu parametru vērtÄ«bu aprakstu var atrast Pro2 dokumentācijā (direktorijā C:Pro2Docs).

Izveidojiet un aktivizējiet CDC politikas

Politikas ir noteikumu kopums OpenEdge CDC programmai, lai pārraudzÄ«tu izmaiņas tabulās. RakstÄ«Å”anas laikā Pro2 atbalsta tikai CDC politikas ar 0 lÄ«meni, tas ir, tiek uzraudzÄ«ts tikai fakts ierakstÄ«t izmaiņas.

Lai izveidotu CDC politiku, administratÄ«vajā panelÄ« atveriet cilni KartÄ“Å”ana, atlasiet avota datu bāzi un noklikŔķiniet uz pogas Pievienot/noņemt politikas. Atvērtajā logā Select Changes atlasiet kreisajā pusē un pārvietojiet pa labi tabulas, kurām jāizveido vai jāizdzÄ“Å” CDC politika.

Lai aktivizētu, vēlreiz atveriet cilni KartÄ“Å”ana, atlasiet avota datu bāzi un noklikŔķiniet uz pogas (In)Aktivizēt politikas. Atlasiet un tabulas labajā pusē pārvietojiet politikas, kas jāaktivizē, noklikŔķiniet uz Labi. Pēc tam tie ir atzÄ«mēti zaļā krāsā. Izmantojot (In)Aktivizēt politikas Varat arÄ« deaktivizēt CDC politikas. Visi darÄ«jumi tiek veikti tieÅ”saistē.

Kā sadraudzēties starp Progress OpenEdge banku sistēmu un Oracle DBVS

Pēc CDC politikas aktivizÄ“Å”anas piezÄ«mes par modificētajiem ierakstiem tiek saglabātas krātuves apgabalā "ReplCDCArea" saskaņā ar avotu datu bāzi. Å Ä«s piezÄ«mes tiks apstrādātas, izmantojot Ä«paÅ”u procesu CDCBatch, kas, pamatojoties uz tiem, izveidos piezÄ«mes Pro2 replikācijas rindā datu bāzē cdc (atkārtot).

Tādējādi mums ir divas replikācijas rindas. Pirmais posms ir CDCBatch: no avota datu bāzes dati vispirms nonāk CDC starpposma datubāzē. Otrais posms ir datu pārsÅ«tÄ«Å”ana no CDC datu bāzes uz Oracle. Tā ir paÅ”reizējās arhitektÅ«ras un paÅ”a produkta iezÄ«me ā€“ lÄ«dz Å”im izstrādātājiem nav izdevies izveidot tieÅ”u replikāciju.

Primārā sinhronizācija

Pēc CDC mehānisma iespējoÅ”anas un Pro2 replikācijas servera iestatÄ«Å”anas mums jāsāk sākotnējā sinhronizācija. Sākotnējā sinhronizācijas komanda:

/pro2/bprepl/Script/replLoad.sh biskvīta tabulas nosaukums

Pēc sākotnējās sinhronizācijas pabeigÅ”anas var sākt replikācijas procesus.

Replikācijas procesu sākums

Lai sāktu replikācijas procesus, ir jāpalaiž skripts replbatch.sh. Pirms sākat, pārliecinieties, vai visiem pavedieniem ir replbatch skripti - replbatch1, replbatch2 utt. Ja viss ir vietā, atveriet komandrindu (piemēram, proenv), dodieties uz direktoriju /bprepl/scripts un sāciet skriptu. Administratīvajā panelī mēs pārbaudām, vai attiecīgais process ir saņēmis statusu STRĀDĀ.

Kā sadraudzēties starp Progress OpenEdge banku sistēmu un Oracle DBVS

rezultātus

Kā sadraudzēties starp Progress OpenEdge banku sistēmu un Oracle DBVS
Pēc ievieÅ”anas mēs ievērojami paātrinājām informācijas augÅ”upielādi korporatÄ«vajā datu noliktavā. Dati automātiski nokļūst Oracle tieÅ”saistē. Nav jātērē laiks, izpildot dažus ilgstoÅ”i vaicājumus, lai apkopotu datus no dažādām sistēmām. Turklāt Å”ajā risinājumā replikācijas process var saspiest datus, kas arÄ« pozitÄ«vi ietekmē ātrumu. Tagad BISKVIT sistēmas ikdienas saskaņoÅ”ana ar citām sistēmām sāka aizņemt 15-20 minÅ«tes, nevis 2-2,5 stundas, un pilnÄ«ga saskaņoÅ”ana aizņēma vairākas stundas, nevis divas dienas.

Avots: www.habr.com

Pievieno komentāru