Sut i wneud ffrindiau rhwng system fancio Progress OpenEdge a'r Oracle DBMS

Er 1999, i wasanaethu'r swyddfa gefn, mae ein banc wedi defnyddio'r system fancio integredig BISKVIT ar lwyfan Progress OpenEdge, a ddefnyddir yn eang ledled y byd, gan gynnwys yn y sector ariannol. Mae perfformiad y DBMS hwn yn caniatáu ichi ddarllen hyd at filiwn neu fwy o gofnodion yr eiliad mewn un gronfa ddata (DB). Mae ein Progress OpenEdge yn gwasanaethu tua 1,5 miliwn o adneuon unigol a thua 22,2 miliwn o gontractau ar gyfer cynhyrchion gweithredol (benthyciadau ceir a morgeisi), ac mae hefyd yn gyfrifol am bob setliad gyda'r rheolydd (Banc Canolog) a SWIFT.

Sut i wneud ffrindiau rhwng system fancio Progress OpenEdge a'r Oracle DBMS

Gan ddefnyddio Progress OpenEdge, roeddem yn wynebu'r angen i wneud iddo weithio gyda'r Oracle DBMS. I ddechrau, y bwndel hwn oedd tagfa ein seilwaith - nes i ni osod a ffurfweddu Pro2 CDC - cynnyrch Cynnydd sy'n eich galluogi i anfon data o'r DBMS Cynnydd i'r Oracle DBMS yn uniongyrchol, ar-lein. Yn y swydd hon byddwn yn dweud wrthych yn fanwl, gyda'r holl beryglon, sut i wneud ffrindiau rhwng OpenEdge ac Oracle yn effeithiol.

Sut y digwyddodd: lanlwytho data i QCD trwy rannu ffeiliau

Yn gyntaf, rhai ffeithiau am ein seilwaith. Mae nifer defnyddwyr gweithredol y gronfa ddata tua 15 mil. Cyfaint yr holl gronfeydd data cynhyrchiol, gan gynnwys replica a wrth gefn, yw 600 TB, y gronfa ddata fwyaf yw 16,5 TB. Ar yr un pryd, mae'r cronfeydd data yn cael eu hailgyflenwi'n gyson: dros y flwyddyn ddiwethaf yn unig, mae tua 120 TB o ddata cynhyrchiol wedi'u hychwanegu. Mae'r system yn cael ei phweru gan 150 o weinyddion blaen ar y platfform x86. Mae'r cronfeydd data yn cael eu cynnal ar 21 gweinydd platfform IBM.

Sut i wneud ffrindiau rhwng system fancio Progress OpenEdge a'r Oracle DBMS
Mae systemau pen blaen, systemau bancio craidd amrywiol a gwasanaethau bancio wedi'u hintegreiddio ag OpenEdge Progress (BISCUIT IBS) trwy fws Sonic ESB. Mae llwytho data i QCD yn digwydd trwy gyfnewid ffeiliau. Hyd at gyfnod penodol, roedd gan yr ateb hwn ddwy broblem fawr ar unwaith - perfformiad isel o lwytho gwybodaeth i warws data corfforaethol (CDW) ac amser hir ar gyfer perfformio cysoni data (cysoni) â systemau eraill.
Sut i wneud ffrindiau rhwng system fancio Progress OpenEdge a'r Oracle DBMS
Felly, dechreuasom chwilio am offeryn a allai gyflymu'r prosesau hyn. Yr ateb i'r ddwy broblem oedd y cynnyrch Progress OpenEdge newydd - Pro2 CDC (Change Data Capture). Felly, gadewch i ni ddechrau.

Gosod Progress OpenEdge a Pro2Oracle

I redeg Pro2 Oracle ar gyfrifiadur Windows y gweinyddwr, mae'n ddigon i osod Progress OpenEdge Developer Kit Classroom Edition, a all fod yn скачать am ddim. Cyfeiriaduron gosod OpenEdge diofyn:

DLC: C:ProgressOpenEdge
WRK: C:OpenEdgeWRK

Mae prosesau ETL yn gofyn am drwyddedau Progress OpenEdge fersiwn 11.7+ - sef OE DataServer ar gyfer Oracle a 4GL Development System. Mae'r trwyddedau hyn wedi'u cynnwys gyda'r Pro2. Ar gyfer gweithrediad llawn DataServer ar gyfer Oracle gyda chronfa ddata Oracle anghysbell, mae Cleient Oracle Llawn wedi'i osod.

Ar y gweinydd Oracle mae angen i chi osod Cronfa Ddata Oracle 12+, creu cronfa ddata wag ac ychwanegu defnyddiwr (gadewch i ni ei alw cdc).

I osod Pro2Oracle, lawrlwythwch y dosbarthiad diweddaraf o'r ganolfan lawrlwytho Meddalwedd Cynnydd. Dadbacio'r archif i gyfeiriadur C:Pro2 (I ffurfweddu Pro2 ar Unix, defnyddir yr un dosbarthiad ac mae'r un egwyddorion cyfluniad yn berthnasol).

Creu cronfa ddata atgynhyrchu cdc

Cronfa ddata atgynhyrchu cdc (ateb) Defnyddir Pro2 i storio gwybodaeth ffurfweddu, gan gynnwys y map atgynhyrchu, enwau cronfeydd data a ddyblygwyd a'u tablau. Mae hefyd yn cynnwys ciw atgynhyrchu, sy'n cynnwys nodiadau am y ffaith bod rhes tabl yn y gronfa ddata ffynhonnell wedi newid. Defnyddir data o'r ciw atgynhyrchu gan brosesau ETL i nodi rhesi y mae angen eu copïo i Oracle o'r gronfa ddata ffynhonnell.

Rydym yn creu cronfa ddata cdc ar wahân.

Gweithdrefn ar gyfer creu cronfa ddata

  1. Ar weinydd y gronfa ddata rydym yn creu cyfeiriadur ar gyfer y gronfa ddata cdc - er enghraifft, ar y gweinydd /cronfa ddata/cdc/.
  2. Creu dymi ar gyfer y gronfa ddata cdc: procopïo $DLC/cdc gwag
  3. Galluogi cefnogaeth ar gyfer ffeiliau mawr: proutil cdc -C EnableLargeFiles
  4. Rydym yn paratoi sgript ar gyfer cychwyn y gronfa ddata cdc. Rhaid i'r paramedrau cychwyn fod yn debyg i baramedrau cychwyn y gronfa ddata a ddyblygir.
  5. Rydym yn cychwyn y gronfa ddata cdc.
  6. Cysylltwch â'r gronfa ddata cdc a llwythwch y sgema Pro2 o'r ffeil cdc.df, sydd wedi'i gynnwys gyda'r Pro2.
  7. Rydym yn creu'r defnyddwyr canlynol yn y gronfa ddata cdc:

pro2adm – ar gyfer cysylltu â phanel gweinyddol Pro2;
pro2etl – ar gyfer cysylltu prosesau ETL (ReplBatch);
pro2cdc – ar gyfer cysylltu prosesau CDC (CDCBatch);

Gweithredu OpenEdge Change Capture Data

Nawr, gadewch i ni droi'r mecanwaith CDC ei hun ymlaen, gyda chymorth pa ddata fydd yn cael ei ailadrodd i faes technoleg ychwanegol. I bob cronfa ddata ffynhonnell Progress OpenEdge, mae angen i chi ychwanegu ardaloedd storio ar wahân lle bydd y data ffynhonnell yn cael ei ddyblygu, ac actifadu'r mecanwaith ei hun gan ddefnyddio'r gorchymyn proutil.

Gweithdrefn enghreifftiol ar gyfer y gronfa ddata bisgedi

  1. Copïo o'r catalog C: Pro2db файл cdcadd.st i gyfeiriadur cronfa ddata ffynhonnell bisquit.
  2. Rydym yn disgrifio yn cdcadd.st meintiau maint sefydlog ar gyfer rhanbarthau "Ardal ReplCDC" и "ReplCDCArea_IDX". Gallwch ychwanegu ardaloedd storio newydd ar-lein: prostrct addonline bisquit cdcadd.st
  3. Ysgogi CDC OpenEdge:
    proutil bisquit -C enablecdc ardal "ReplCDCArea" mynegai "ReplCDCArea_IDX"
  4. Rhaid creu'r defnyddwyr canlynol yn y gronfa ddata ffynhonnell i nodi prosesau rhedeg:
    a. pro2adm – ar gyfer cysylltu â phanel gweinyddol Pro2.
    b. pro2etl – ar gyfer cysylltu prosesau ETL (ReplBatch).
    c. pro2cdc – ar gyfer cysylltu prosesau CDC (CDCBatch).

Creu Deiliad Sgema ar gyfer DataServer ar gyfer Oracle

Nesaf, mae angen i ni greu cronfa ddata Schema Holder ar y gweinydd lle bydd data o'r DBMS Cynnydd yn cael ei ailadrodd i'r Oracle DBMS. Mae DataServer Schema Holder yn gronfa ddata Progress OpenEdge gwag heb ddefnyddwyr na data cymhwysiad, sy'n cynnwys map o ohebiaeth rhwng tablau ffynhonnell a thablau Oracle allanol.

Rhaid lleoli cronfa ddata Schema Holder ar gyfer Progress OpenEdge DataServer ar gyfer Oracle for Pro2 ar y gweinydd proses ETL; caiff ei chreu ar wahân ar gyfer pob cangen.

Sut i greu Deiliad Sgema

  1. Dadbacio'r dosbarthiad Pro2 i mewn i gyfeiriadur /pro2
  2. Creu a mynd i'r cyfeiriadur /pro2/dbsh
  3. Creu cronfa ddata Schema Holder gan ddefnyddio'r gorchymyn copïo $DLC/bisgitsh wag
  4. Perfformio'r trosi bisgedi i mewn i'r amgodio gofynnol - er enghraifft, yn UTF-8 os oes gan gronfeydd data Oracle amgodio UTF-8: proutil bisquitsh -C convchar trosi UTF-8
  5. Ar ôl creu cronfa ddata wag bisgedi cysylltu ag ef mewn modd defnyddiwr sengl: bisgeith
  6. Awn i Data Dictionary: Offer -> Geiriadur Data -> DataServer -> Cyfleustodau ORACLE -> Creu Sgema Gweinyddwr Data
  7. Lansio Deiliad Sgema
  8. Sefydlu brocer Oracle DataServer:
    a. Dechrau Gweinyddwr Gweinyddol.
    proadsv -cychwyn
    b. Dechrau brocer Oracle DataServer
    oraman -enw orabroker1 -cychwyn

Sefydlu'r panel gweinyddol a'r cynllun atgynhyrchu

Gan ddefnyddio panel gweinyddol Pro2, mae paramedrau Pro2 wedi'u ffurfweddu, gan gynnwys sefydlu'r cynllun atgynhyrchu a chynhyrchu prosesau ETL (Llyfrgell Prosesydd), rhaglenni cydamseru cynradd (Prosesydd Copi Swmp), sbardunau atgynhyrchu a pholisïau CDC OpenEdge. Mae yna hefyd offer sylfaenol ar gyfer monitro a rheoli prosesau ETL a CDC. Yn gyntaf oll, rydym yn sefydlu'r ffeiliau paramedr.

Sut i ffurfweddu ffeiliau paramedr

  1. Ewch i'r catalog C:Pro2bpreplScripts
  2. Agorwch y ffeil i'w golygu replProc.pf
  3. Ychwanegu paramedrau cysylltiad i'r gronfa ddata atgynhyrchu cdc:
    # Cronfa Ddata Dyblygiad
    -db cdc -ld repl -H <enw gwesteiwr prif gronfa ddata> -S <porthladd brocer cronfa ddata cdc>
    -U pro2admin -P <cyfrinair>
  4. Ychwanegu at replProc.pf paramedrau cysylltu â chronfeydd data ffynhonnell a Schema Holder ar ffurf ffeiliau paramedr. Rhaid i enw'r ffeil paramedrau gyd-fynd ag enw'r gronfa ddata ffynhonnell sy'n cael ei chysylltu.
    # Cysylltu â phob ffynhonnell sydd wedi'i hailadrodd BISQUIT
    -pf bpreplscriptsbisquit.pf
  5. Ychwanegu at replProc.pf paramedrau ar gyfer cysylltu â Schema Holder.
    Deiliad Sgema #Target Pro DB
    -db bisquitsh -ld bisquitsh
    -H <ETL proses enw gwesteiwr>
    -S <porthladd brocer biskuitsh>
    -db bisquitsql
    -ld bisquitsql
    -dt ORACLE
    -S 5162 -H <enw gwesteiwr brocer Oracle>
    -DataService orabroker1
  6. Arbedwch y ffeil paramedrau replProc.pf
  7. Nesaf, mae angen i chi greu ac agor ar gyfer golygu ffeiliau paramedr ar gyfer pob cronfa ddata ffynhonnell gysylltiedig yn y cyfeiriadur C:Pro2bpreplScripts: bisquit.pf. Mae pob ffeil pf yn cynnwys paramedrau ar gyfer cysylltu â'r gronfa ddata gyfatebol, er enghraifft:
    -db bisquit -ld bisquit -H <enw gwesteiwr> -S <porthladd brocer>
    -U pro2admin -P <cyfrinair>

I ffurfweddu llwybrau byr Windows, mae angen i chi fynd i'r cyfeiriadur C:Pro2bpreplScripts a golygu'r llwybr byr “Pro2 - Administration”. I wneud hyn, agorwch briodweddau'r llwybr byr ac yn y llinell Dechreuwch i mewn nodwch y cyfeiriadur gosod Pro2. Rhaid gwneud gweithrediad tebyg ar gyfer y llwybrau byr “Pro2 - Editor” a “RunBulkLoader”.

Pro2 Gweinyddu Setup: Llwytho Ffurfweddiad Cychwynnol

Gadewch i ni lansio'r consol.

Sut i wneud ffrindiau rhwng system fancio Progress OpenEdge a'r Oracle DBMS

Ewch i “DB Map”.

Sut i wneud ffrindiau rhwng system fancio Progress OpenEdge a'r Oracle DBMS

I gysylltu cronfeydd data yn Pro2 - Gweinyddu, ewch i'r tab Map DB. Ychwanegu mapio cronfeydd data ffynhonnell - Daliwr Sgema - Oracle.

Sut i wneud ffrindiau rhwng system fancio Progress OpenEdge a'r Oracle DBMS

Ewch i'r tab Mapio... Yn y rhestr Cronfa Ddata Ffynhonnell Yn ddiofyn, dewisir y gronfa ddata ffynhonnell gysylltiedig gyntaf. I'r dde o'r rhestr dylai fod arysgrif Pob Cronfa Ddata Cysylltiedig — mae'r cronfeydd data dethol wedi'u cysylltu. Isod ar y chwith dylech weld rhestr o dablau Cynnydd o bisquit. Ar y dde mae rhestr o dablau o gronfa ddata Oracle.

Creu sgemâu a chronfeydd data SQL yn Oracle

I greu map atgynhyrchu, rhaid i chi gynhyrchu yn gyntaf Sgema SQL yn Oracle. Yn Pro2 Administration rydym yn gweithredu'r eitem ddewislen Offer -> Cynhyrchu Cod -> Sgema Targed, yna yn y blwch deialog Dewiswch Gronfa Ddata dewiswch un neu fwy o gronfeydd data ffynhonnell a'u symud i'r dde.

Sut i wneud ffrindiau rhwng system fancio Progress OpenEdge a'r Oracle DBMS

Cliciwch OK a dewiswch y cyfeiriadur i achub y sgemâu SQL.

Nesaf rydyn ni'n creu'r sylfaen. Gellir gwneud hyn, er enghraifft, trwy Datblygwr Oracle SQL. I wneud hyn, rydym yn cysylltu â chronfa ddata Oracle ac yn llwytho'r sgema ar gyfer ychwanegu tablau. Ar ôl newid cyfansoddiad tablau Oracle, mae angen i chi ddiweddaru'r sgemâu SQL yn y Schema Holder.

Sut i wneud ffrindiau rhwng system fancio Progress OpenEdge a'r Oracle DBMS

Ar ôl i'r lawrlwythiad gael ei gwblhau'n llwyddiannus, gadewch y gronfa ddata bisgeith ac agorwch banel gweinyddol Pro2. Dylai tablau o gronfa ddata Oracle ymddangos ar y tab Mapio ar y dde.

Mapio tabl

I greu map atgynhyrchu, ym mhanel gweinyddol Pro2, ewch i'r tab Mapio a dewiswch y gronfa ddata ffynhonnell. Cliciwch ar Tablau Map, dewiswch Dewiswch Newidiadau ar ochr chwith y tablau y dylid eu hailadrodd yn Oracle, symudwch nhw i'r dde a chadarnhewch y dewisiad. Bydd map yn cael ei greu yn awtomatig ar gyfer y tablau a ddewiswyd. Rydym yn ailadrodd y gweithrediad i greu map atgynhyrchu ar gyfer cronfeydd data ffynonellau eraill.

Sut i wneud ffrindiau rhwng system fancio Progress OpenEdge a'r Oracle DBMS

Cynhyrchu Llyfrgell Prosesydd Dyblygiad Pro2 a Rhaglenni Prosesydd Swmp-Copi

Mae'r Llyfrgell Proseswyr Dyblygu wedi'i chynllunio ar gyfer prosesau atgynhyrchu arfer (ETLs) sy'n prosesu'r ciw atgynhyrchu Pro2 ac yn gwthio newidiadau i gronfa ddata Oracle. Mae rhaglenni llyfrgell prosesydd atgynhyrchu yn cael eu cadw'n awtomatig i'r cyfeiriadur ar ôl cenhedlaeth bprepl/repl_proc (paramedr PROC_DIRECTORY). I gynhyrchu'r llyfrgell prosesydd atgynhyrchu, ewch i Offer -> Cynhyrchu Cod -> Llyfrgell Prosesydd. Ar ôl cwblhau'r genhedlaeth, bydd y rhaglenni'n ymddangos yn y cyfeiriadur bprepl/repl_proc.

Defnyddir rhaglenni Prosesydd Swmp Llwyth i gysoni cronfeydd data Cynnydd ffynhonnell â chronfa ddata targed Oracle yn seiliedig ar iaith raglennu Progress ABL (4GL). Er mwyn eu cynhyrchu, ewch i'r eitem ddewislen Offer -> Cynhyrchu Cod -> Prosesydd Swmp-Copi. Yn y Dewis Cronfa Ddata blwch deialog, dewiswch y cronfeydd data ffynhonnell, symudwch nhw i ochr dde'r ffenestr a chliciwch OK. Ar ôl cwblhau'r genhedlaeth, bydd y rhaglenni'n ymddangos yn y cyfeiriadur bpreplrepl_mproc.

Sefydlu prosesau atgynhyrchu yn Pro2

Mae rhannu tablau yn setiau a wasanaethir gan edau atgynhyrchu ar wahân yn gwella perfformiad ac effeithlonrwydd Pro2 Oracle. Yn ddiofyn, mae'r holl gysylltiadau a grëir yn y map atgynhyrchu ar gyfer tablau atgynhyrchu newydd yn gysylltiedig ag edefyn rhif 1. Argymhellir gwahanu tablau yn edafedd gwahanol.

Dangosir gwybodaeth am statws edafedd atgynhyrchu ar sgrin Gweinyddu Pro2 yn y tab Monitor yn yr adran Statws Dyblygu. Mae disgrifiad manwl o werthoedd paramedr i'w weld yn nogfennaeth Pro2 (cyfeiriadur C:Pro2Docs).

Creu ac actifadu polisïau CDC

Mae polisïau yn set o reolau ar gyfer injan CDC OpenEdge i fonitro newidiadau i dablau. Ar adeg ysgrifennu, dim ond gyda lefel 2 y mae Pro0 yn cefnogi polisïau CDC, hynny yw, dim ond ffaith sy'n cael ei fonitro cofnodi newidiadau.

I greu polisi CDC, ar y panel gweinyddol, ewch i'r tab Mapio, dewiswch y gronfa ddata ffynhonnell a chliciwch ar y botwm Ychwanegu/Dileu Polisïau. Yn y ffenestr Dewis Newidiadau sy'n agor, dewiswch ar yr ochr chwith a symudwch i'r dde y tablau y mae angen i chi greu neu ddileu polisi CDC ar eu cyfer.

I actifadu, agorwch y tab Mapio eto, dewiswch y gronfa ddata ffynhonnell a chliciwch ar y botwm (Mewn) Gweithredu Polisïau. Dewiswch a symudwch i ochr dde'r tabl y polisïau y mae angen eu gweithredu, cliciwch Iawn. Ar ôl hyn maent yn cael eu marcio mewn gwyrdd. Trwy ddefnyddio (Mewn) Gweithredu Polisïau Gallwch hefyd ddadactifadu polisïau CDC. Mae'r holl drafodion yn cael eu perfformio ar-lein.

Sut i wneud ffrindiau rhwng system fancio Progress OpenEdge a'r Oracle DBMS

Ar ôl i'r polisi CDC gael ei weithredu, caiff nodiadau am gofnodion wedi'u haddasu eu cadw yn y man storio "Ardal ReplCDC" yn ôl y gronfa ddata ffynhonnell. Bydd y nodiadau hyn yn cael eu prosesu trwy broses arbennig CDCBatch, a fydd yn seiliedig arnynt yn creu nodiadau yn y ciw atgynhyrchu Pro2 yn y gronfa ddata cdc (ateb).

Felly, mae gennym ddau giw ar gyfer atgynhyrchu. Y cam cyntaf yw CDCBatch: o'r gronfa ddata ffynhonnell, mae'r data yn gyntaf yn mynd i'r gronfa ddata CDC canolradd. Yr ail gam yw pan fydd data'n cael ei drosglwyddo o'r gronfa ddata CDC i Oracle. Mae hyn yn nodwedd o'r bensaernïaeth gyfredol a'r cynnyrch ei hun - hyd yn hyn nid yw'r datblygwyr wedi gallu sefydlu atgynhyrchu uniongyrchol.

Cydamseru cynradd

Ar ôl galluogi'r mecanwaith CDC a sefydlu'r gweinydd ail-greu Pro2, mae angen i ni ddechrau'r cydamseriad cychwynnol. Gorchymyn cydamseru cychwynnol:

/pro2/bprepl/Script/replLoad.sh enw bwrdd bisquit

Ar ôl i'r cydamseru cychwynnol gael ei gwblhau, gellir cychwyn prosesau atgynhyrchu.

Dechrau prosesau atgynhyrchu

I ddechrau prosesau atgynhyrchu mae angen i chi redeg sgript replbatch.sh. Cyn dechrau, gwnewch yn siŵr bod sgriptiau replbatch ar gyfer pob edafedd - replbatch1, replbatch2, ac ati. Os yw popeth yn ei le, agorwch y llinell orchymyn (er enghraifft, proenv), ewch i'r cyfeiriadur /bprepl/scripts a dechrau'r sgript. Yn y panel gweinyddol, rydym yn gwirio bod y broses gyfatebol wedi derbyn y statws RHEDEG.

Sut i wneud ffrindiau rhwng system fancio Progress OpenEdge a'r Oracle DBMS

Canfyddiadau

Sut i wneud ffrindiau rhwng system fancio Progress OpenEdge a'r Oracle DBMS
Ar ôl gweithredu, gwnaethom gyflymu'r broses o lanlwytho gwybodaeth i'r warws data corfforaethol yn fawr. Mae'r data yn mynd i mewn i Oracle ar-lein yn awtomatig. Nid oes angen gwastraffu amser yn rhedeg rhai ymholiadau hir dymor i gasglu data o wahanol systemau. Yn ogystal, yn yr ateb hwn gall y broses atgynhyrchu gywasgu data, sydd hefyd yn cael effaith gadarnhaol ar gyflymder. Nawr dechreuodd cysoniad dyddiol o'r system BISKVIT â systemau eraill gymryd 15-20 munud yn lle 2-2,5 awr, a chymerodd cysoniad cyflawn sawl awr yn lle dau ddiwrnod.

Ffynhonnell: hab.com

Ychwanegu sylw