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.
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Ä«.
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.
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
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
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
- Datu bÄzes serverÄ« mÄs izveidojam direktoriju cdc datubÄzei - piemÄram, serverÄ« /database/cdc/.
- Izveidojiet manekenu cdc datubÄzei: kopÄt $DLC/tukÅ”u kompaktdisku
- IespÄjot atbalstu lieliem failiem: proutil cdc -C EnableLargeFiles
- 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.
- MÄs sÄkam cdc datubÄzi.
- Izveidojiet savienojumu ar cdc datu bÄzi un ielÄdÄjiet Pro2 shÄmu no faila cdc.df, kas ir iekļauts Pro2.
- 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
- KopÄÅ”ana no kataloga C: Pro2db fails cdcadd.st uz bisquit avota datu bÄzes direktoriju.
- 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
- AktivizÄjiet OpenEdge CDC:
proutil bisquit -C enablecdc apgabals "ReplCDCArea" indeksa apgabals "ReplCDCArea_IDX" - 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
- IzsaiÅojiet Pro2 izplatÄ«Å”anu direktorijÄ /pro2
- Izveidojiet un dodieties uz direktoriju /pro2/dbsh
- Izveidojiet shÄmas turÄtÄja datu bÄzi, izmantojot komandu kopÄt $DLC/tukÅ”u biskvitu
- 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
- PÄc tukÅ”as datu bÄzes izveidoÅ”anas biskvits izveidojiet savienojumu ar to viena lietotÄja režīmÄ: pro biskvits
- Dosimies uz datu vÄrdnÄ«cu: RÄ«ki -> Datu vÄrdnÄ«ca -> DataServer -> ORACLE Utilities -> Izveidot datu servera shÄmu
- Palaidiet shÄmas turÄtÄju
- 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
- Dodieties uz katalogu C:Pro2bpreplScripts
- Atveriet failu rediÄ£ÄÅ”anai replProc.pf
- 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> - 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 - 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 - SaglabÄjiet parametru failu replProc.pf
- 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.
Dodieties uz "DB karti".
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.
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.
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Ä.
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.
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Ä.
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Ä.
rezultÄtus
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