Datareplikering betyder kopiering af data fra et sted til et andet, og det sker normalt mellem brugere af forskellige databaser, som har brug for at dele det samme informationsniveau. Replikering kan også involvere andre datakilder og mål og blive mere kompleks i transformation og tidsmæssig henseende.
Dette er den første af to artikler, der dækker databasereplikering i IRI Workbench GUI. IRI Workbench er den gratis IDE bygget på Eclipse™, der understøtter alle IRI-produkter, inklusive IRI NextForm (til data- og databasemigrering) og IRI Voracity (en total dataadministrationsplatform, der inkluderer NextForm et al.). IRI Workbench opretter og kører datareplikeringsjob gennem wizards, scripts og workflowdiagrammer.
Her er nogle af de måder, hvorpå replikationer opstår:
- Data i én database kopieres til en anden database på den samme eller en anden server.
- Data fra to eller flere databaser kombineres til en enkelt database.
- Brugere får fulde indledende kopier af databasen og derefter periodiske opdateringer efterhånden som data ændres.
- Data udtrækkes selektivt fra en database og replikeres i en ekstern fil.
Datareplikering giver dig mulighed for kun at replikere en del af databasen; dvs. udvalgte tabeller, kolonner og/eller rækker. Replikering af alle tabellerne er en del af databasespejling. Ændringer af skemaer, begrænsninger, procedurer og adgangsautorisationer er dog ikke så lette at replikere og kan involvere separate processer.
Grundlæggende eksempel i IRI Workbench
Vi vil bruge en joboprettelsesguide fra NextForm-menuen i IRI Workbench-værktøjslinjen til dette første datareplikeringseksempel. Vi kopierer data fra en Oracle-tabel til både en MySQL-tabel og en modificeret flad fil. Denne anden artikel demonstrerer replikeringen af kun opdaterede data i en tabel ved at evaluere tidsstempelkolonneværdier.
NextForm-menuen indeholder tre joboprettelsesguider:
- Nyt omformateringsjob
- Nyt Single Source Migration Job
- Nyt Multi Table Migration Job
Vi bruger guiden New Reformat Job til at udføre denne replikering. Til et mere komplekst job ville vi bruge en anden NextForm-guide eller en ETL-jobguide i Voracity-menuen (eller manuelt bygge en ny arbejdsgang).
Her er strukturen af kilde- og måltabellerne:
Trin 1:Angiv navn og jobmuligheder
Fra NextForm-menuen på den øverste værktøjslinje skal du vælge guiden New Reformat Job. I dette eksempel skal du indtaste jobfilnavnetdatareplication . NextForm tilføjer udvidelsen .ncl. Du kan også tilføje relevant information om dette job, som vil blive vist som kommentarer i scriptet.
Fra listen med alternativknapper skal du forlade standardvalget Opret script fordi dette er et selvstændigt job og ikke en del af et større flow eller batch-projekt.
Trin 2:Identificer kilden
På det næste skærmbillede, Datakilder, skal du klikke på Tilføj datakilde . Kilden i dette eksempel er en ODBC-forbundet database, så vælg ODBC, og klik derefter på Gennemse for at vælge datakildenavnet (DSN) og tabellen.
Trin 3:Angiv kildemetadata
For at IRI-software kan flytte og manipulere dataene i dens motor (i dette tilfælde replikeres i NextForm), skal du bruge metadata for kilden og målene, der er defineret i jobscriptet, i IRIs datadefinitionsfil (DDF)-format.
Du kan bygge DDF'erne til enhver kilde (eller mål) automatisk i IRI Workbench. Den funktionalitet er indlejret her, hvor du kan vælge enten at Opdage metadata eller Tilføj eksisterende metadata . I dette tilfælde vil vi tilføje eksisterende metadata, som blev oprettet på en anden måde. Dette valg og dets resultater vises i følgende dialogboks:
Klik på Kildefeltlayout for at se layoutet af dataene.
Klik på OK for at lukke kildefeltlayoutet. Klik derefter på Næste på siden Datakilder for at åbne siden Datamål.
Trin 4:Definer målene
Vi sender de replikerede Oracle-data til to mål:en MySQL-tabel, som vi navngivercustomers_out , og en fil kaldet personout.csv .
Tilføj en måltabel
Klik på Tilføj datamål . Vælg ODBC og klik på Gennemse . Vælg derefter datakildenavnet (DSN) Oracle og tabellen CUSTOMERS_REP . Klik på OK for at lukke dialogen.
På siden Datamål skal du fremhæve tabelnavnet og klikke på Tilføj eksisterende metadata . Vælg cust.ddf (som blev oprettet tidligere), og klik på OK .
Vi ønsker at begrænse antallet af poster i denne fil til 100. Klik på Rediger målindstillinger for at åbne editoren og i Outcollect feltet skal du indtaste 100 , og klik på OK .
Tilføj en målfil
Igen skal du klikke på Tilføj datamål . Vælg Fil og indtast personout.csv , og klik på OK . Vi ønsker at begrænse antallet af poster i filen til højst 50, og vi skal også ændre formatet til CSV. For at gøre begge dele skal du klikke på Rediger målindstillinger for at åbne editoren. Skift Format feltet til CSV , og i Outcollect feltet skal du indtaste 50 , og klik på OK .
Tilføj en strengfunktion til målfilen
Vi tilføjer også en strengfunktion til kun at vise de sidste fire cifre i SSN-feltet. For at gøre dette skal du klikke på Target Field Layout, og klik på fanen personout.csv.
Vælg SSN-feltet, højreklik og vælg Anvend regel Opret regel . På siden Valg af guiden Ny feltregel skal du vælge String Manipulation Functions . På næste side – String Manipulation Functions – vælg sub_string . I Offset feltet skal du indtaste 6 for antallet af tegn fra venstre i feltet og i Længde indtast 4 for længden af understrengen, og klik derefter på Udfør .
Tilføj et inkluderingsfilter
For at fortsætte med at ændre CSV-filen tilføjer vi et filter for at begrænse dataene til kun at inkludere de poster fra CA. Klik påRecord Filter for at oprette filteret. Vælg Medtag for filterhandlingen, og vælg Ny betingelse for typen. Åbn Expression Builder ved at klikke på funktionsikonet. Vælg kategorien Relationelle operatører i Expression Builder. og elementet EQ . I Udtryk feltet øverst, indtast STATE EQ "CA" ved hjælp af værktøjerne på værktøjslinjen, og klik på Udfør .
Tilbage på siden Datamål beslutter vi at omplacere efter- og fornavnsfelterne efter zip-feltet. Vælg Efternavn og klik på Ned indtil feltet er nederst på listen, vælg derefter FORNAVN og gør det samme.
Når vi er færdige med at tilføje begge mål, vises felterne og ændringerne på siden Datamål.
Klik på Udfør for at fuldføre opbygningen af scriptet, som er vist nedenfor i den farvekodede, syntaksbevidste editorvisning af IRI Workbench:
Resultater
Kør jobscriptet ved at højreklikke i scriptet og vælgeKør som> IRI-job . Måldataene vises i de åbne faner nedenfor:
Hvis du har spørgsmål om replikering af data i NextForm eller Voracity, skal du kontakte din IRI-repræsentant.
- Fra Data Source Explorer, højreklik på tabellen, vælg IRI Generer DDF . Dette opretter DDF'en for tabellen i den aktive projektmappe og vil blive refereret af IRI's datamanipulationsmotor ved kørsel.