DataStage-opplæring for nybegynnere: IBM ETL-verktøy

⚡ Smart oppsummering

DataStage fra IBM InfoSphere extracts, transformerer og laster inn bedriftsdata i stor skala. Denne siden forklarer arkitektur, komponenter, parallell prosessering, oppsett av SQL-replikering, prosjektoppretting, jobbkompilering og integrasjonstesting ved hjelp av et praktisk DB2-detaljhandelseksempel.

  • 🧩 Kjernedefinisjon: DataStage flytter data fra sekvensielle filer, relasjonsdatabaser, stormaskiner, ERP- og CRM-systemer til et styrt mål.
  • 🏗️ ArchiTeksturlag: Administrator-, leder-, designer- og direktørklienter sitter over delte tjenester og en skalerbar parallell kjøretidsmotor.
  • Parallell utførelse: Pipelineparallelisme strømmer poster mellom stadier, mens partisjonsparallelisme deler volum på tvers av noder for nesten lineær skalerbarhet.
  • 🔁 Replikeringsoppsett: ASNCLP-skript bygger kontrolltabeller, registreringer, abonnementssett og CCD-tabeller for registrering og bruk i DB2.
  • 🛠️ Jobblivssyklus: Designeren setter sammen stadier og lenker, deretter validerer, planlegger, utfører og overvåker direktøren kompilerte parallelle og sekvensielle jobber.
  • Valideringstrinn: Oppdatering av kilderader og kjøring av sekvensjobben på nytt bekrefter at I-, U- og D-flaggene når ex-entracted-datasett.

IBM DataStage-veiledning for nybegynnere

Hva er DataStage?

DataStage er et ETL-verktøy som brukes til åtract, transformere og laste inn data fra kilden til måldestinasjonen. Kilden til disse dataene kan inkludere sekvensielle filer, indekserte filer, relasjonsdatabaser, eksterne datakilder, arkiver, bedriftsapplikasjoner osv. DataStage brukes til å legge til rette for forretningsanalyse ved å tilby kvalitetsdata som hjelper med å innhente forretningsintelligens.

DataStage ETL-verktøyet brukes i store organisasjoner som et grensesnitt mellom ulike systemer. Det tar seg av f.eks.tracsjon, oversettelse og lasting av data fra kilde til måldestinasjon. Den ble først lansert av VMark på midten av 90-tallet. Med IBM kjøpte DataStage i 2005, og ble omdøpt til IBM WebSphere DataStage og senere til IBM InfoSphere.

Ulike versjoner av Datastage tilgjengelig på markedet så langt var Enterprise Edition (PX), Server Edition, MVS Edition, DataStage for PeopleSoft og så videre. Den siste utgaven er IBM InfoSphere DataStage.

IBM Informasjonsserver inkluderer følgende produkter,

  • IBM InfoSphere DataStage
  • IBM InfoSphere QualityStage
  • IBM InfoSphere Information Services Director
  • IBM InfoSphere Information Analyzer
  • IBM Informasjonsserver raskTrack
  • IBM InfoSphere Business ordliste

Når definisjonen er klar, ser neste avsnitt på hva produktet faktisk kan gjøre i en datavarehus miljø.

DataStage Oversikt

Datastage har følgende muligheter.

  • Den kan integrere data fra det bredeste spekteret av bedriftsdata og eksterne datakilder
  • Implementerer datavalideringsregler
  • Det er nyttig for å behandle og transformere store mengder data
  • Den bruker skalerbar parallell prosessering
  • Den kan håndtere komplekse transformasjoner og administrere flere integrasjonsprosesser
  • Utnytt direkte tilkobling til bedriftsapplikasjoner som kilder eller mål
  • Utnytt metadata for analyse og vedlikehold
  • Operates i batch, sanntid eller som en webtjeneste

I de følgende delene av denne DataStage-opplæringen beskriver vi kort de følgende aspektene ved IBM InfoSphere DataStage:

  • Datatransformasjon
  • Jobb
  • Parallell behandling

InfoSphere DataStage og QualityStage kan få tilgang til data i bedriftsapplikasjoner og datakilder som:

Behandlingsfasetyper

IBM infosphere jobben består av individuelle stadier som er knyttet sammen. Den beskriver flyten av data fra en datakilde til et datamål. Vanligvis har et trinn minimum én datainngang og/eller én datautgang. Noen trinn kan imidlertid akseptere mer enn én datainngang og utgang til mer enn ett trinn.

I jobbdesign ulike stadier du kan bruke er:

  • Forvandle scenen
  • Filtertrinn
  • Aggregator scene
  • Fjern duplikatstadiet
  • Bli med på scenen
  • Oppslagsstadiet
  • Kopier scenen
  • Sorteringsstadiet
  • Containere

Hvorfor bruke DataStage til dataintegrasjon?

Å vite funksjonslisten er én ting; å vite når verktøyet tjener inn lisenskostnadene er noe annet. DataStage velges for arbeidsbelastninger der volum, styring og heterogene kilder gjør håndskrevne skript uhåndterlige.

Den klareste årsaken er gjennomstrømning. Fordi motoren partisjonerer data på tvers av noder og strømmer poster mellom stadier samtidig, øker det å legge til maskinvare gjennomstrømningen nesten lineært. En jobb designet på en utviklingsboks med to noder kjører uendret på en produksjonsklynge med åtte noder.

De andre årsakene er organisatoriske snarere enn tekniske:

  • Delte metadata: Tabelldefinisjoner, tilkoblinger og forretningstermer lagres én gang i repositoriet og brukes på nytt av hver jobb, noe som fjerner avviket som oppstår når hver utvikler definerer en kilde uavhengig.
  • Innebygd datakvalitet: QualityStage kjører undersøkelse, standardisering, matching og overlevelse ved siden av ETL-flyten, slik at rensing ikke trenger et ekstra produkt.
  • Bred tilkobling: Innfødte koblinger når DB2, OracleTeradata, stormaskin-VSAM SAP, Salesforce og lagring av skyobjekter uten tilpasset kode.
  • Operasjonell kontroll: Direktøren gir kjørehistorikk, radantall, advarsler og omstartspunkter, som revisorer godtar som bevis på en kontrollert dataportefølje.
  • gjenbruk: Delte containere og parametersett lar én testet transformasjon utføre mange jobber i stedet for å bli kopiert til hver av dem.

Disse fordelene hviler direkte på hvordan produktet er satt sammen, noe som forklares i neste avsnitt.

DataStage-komponenter og Architecture

DataStage har fire hovedkomponenter, nemlig

  1. administrator: Den brukes til administrasjonsoppgaver. Dette inkluderer å sette opp DataStage-brukere, sette opp rensekriterier og opprette og flytte prosjekter.
  2. manager: Det er hovedgrensesnittet til Repository of ETL DataStage. Den brukes til lagring og administrasjon av gjenbrukbare metadata. Gjennom DataStage manager kan man se og redigere innholdet i depotet.
  3. Designer: Et designgrensesnitt som brukes til å lage DataStage-applikasjoner ELLER jobber. Den spesifiserer datakilden, nødvendig transformasjon og destinasjon for data. Jobber kompileres for å lage en kjørbar fil som planlegges av direktøren og kjøres av serveren
  4. Regissør: Den brukes til å validere, planlegge, utføre og overvåke DataStage-serverjobber og parallelle jobber.
Datastage ArchiTecture Diagram
Datastage ArchiTecture Diagram

Bildet ovenfor forklarer hvordan IBM Infosphere DataStage samhandler med andre elementer i IBM Informasjonsserverplattform. DataStage er delt inn i to seksjoner, Delte komponenter og kjøretid ArchitectureTabellen nedenfor viser mer om hva hver av disse to seksjonene bidrar med.

   
Aktiviteter

delt

Samlet brukergrensesnitt

  • Et grafisk designgrensesnitt brukes til å lage InfoSphere DataStage-applikasjoner (kjent som jobber).
  • Hver jobb bestemmer datakildene, de nødvendige transformasjonene og destinasjonen for dataene.
  • Jobber er kompilert for å skape parallelle jobbflyter og gjenbrukbare komponenter. De planlegges og drives av InfoSphere DataStage og QualityStage Director.
  • Designer-klienten administrerer metadata i depotet. Mens kompilerte utførelsesdata er distribuert på informasjonsservermotornivået.

Felles tjenester

  • Metadatatjenester som konsekvensanalyse og søk
  • Designtjenester som støtter utvikling og vedlikehold av InfoSphere DataStage-oppgaver
  • Utførelsestjenester som støtter alle InfoSphere DataStage-funksjoner

Felles parallell behandling

  • Motoren kjører kjørbare jobber som f.eks.tract, transformere og laste inn data i en rekke forskjellige innstillinger.
  • Motorvalg-tilnærmingen til parallell prosessering og pipelining for å håndtere et stort arbeidsvolum.

Runtime Architecture

OSH-skript

  • Dette beskriver genereringen av OSH (orkestrert Shell Script) og utførelsesflyten av IBM og flyten av IBM Infosphere DataStage ved hjelp av informasjonsservermotoren
  • Det lar deg bruke grafiske pek-og-klikk-teknikker for å utvikle jobbflyter, for eksempeltracrensing, transformering, integrering og lasting av data i målfiler.

Hvordan parallell prosessering fungerer i DataStage

Arkitekturtabellen ovenfor omtaler felles parallell prosessering som en delt tjeneste. Denne delen forklarer hvordan denne tjenesten faktisk utfører en jobb, fordi konseptet ble lovet i oversikten og bestemmer hvor raskt en jobb fullføres.

En parallell jobb bruker to mekanismer samtidig, og begge brukes automatisk under kjøretid i stedet for å kodes for hånd.

1. Rørledningsparallellisme. Hvert trinn i en jobb starter samtidig i stedet for å vente på at det forrige trinnet skal fullføres. Kildetrinnet begynner å lese rader og sender dem til en pipeline i minnet. Transformeren starter så snart de første radene ankommer og sender utdataene til en andre pipeline. Målkoblingen begynner å skrive umiddelbart etter det. Ingen mellomliggende landingsfil skrives, så en jobb med tre trinn overlapper lesing, transformering og skriving i stedet for å kjøre dem i rekkefølge.

2. Partisjonsparallellisme. Radene er delt inn i separate partisjoner, og en fullstendig kopi av scenelogikken kjører mot hver partisjon på sin egen node. Åtte partisjoner betyr åtte samtidige Transformer-instanser. På slutten av flyten samles partisjonene tilbake til én enkelt strøm for målet.

Å velge riktig partisjoneringsmetode er den viktigste avgjørelsen en utvikler tar for å finjustere:

  • Auto: Standardinnstillingen. Motoren velger en metode basert på hva nivået trenger.
  • Hasj: Sender rader med samme nøkkelverdi til samme node. Kreves før Join, Aggregator og Remove Duplicates, slik at samsvarende nøkler møtes.
  • Round Robin: Fordeler rader jevnt én etter én. Best for å laste inn en flat fil der nøkkelgrupperping spiller ingen rolle.
  • Hel: Kopierer hele datasettet til hver node. Brukes for små referansetabeller i et oppslagsstadium.
  • Samme: Holder den eksisterende partisjoneringen urørt, noe som unngår unødvendig ompartisjonering mellom to trinn.
  • Rekkevidde og modulus: Fordel rader etter et verdibånd eller etter en numerisk nøkkelrest når en jevn spredning er nødvendig.

En konfigurasjonsfil (APT_CONFIG_FILE) deklarerer hvor mange noder som finnes. Fordi nodeantallet ligger utenfor jobben, skaleres den samme kompilerte jobben fra en bærbar PC til et produksjonsnett uten en designendring.

Før noe av dette kan prøves ut, må miljøet være på plass.

Forutsetning for Datastage Tool

For DataStage trenger du følgende oppsett.

  • Infosfæren
  • DataStage Server 9.1.2 eller nyere
  • Microsoft Visual Studio .NET 2010 Express Edition C++
  • Oracle klient (full klient, ikke en øyeblikkelig klient) hvis du kobler til en Oracle database
  • DB2-klient hvis du kobler til en DB2-database

Nå i denne DataStage-opplæringen for nybegynnere-serien vil vi lære hvordan du laster ned og installerer InfoSphere-informasjonsserveren.

Last ned og installer InfoSphere Information Server

For å få tilgang til DataStage, last ned og installer den nyeste versjonen av IBM InfoSphere Server. Serveren støtter AIX, Linux og Windows operativsystem. Du kan velge etter behov.

For å migrere dataene dine fra en eldre versjon av infosphere til ny versjon, bruker du ressursutvekslingsverktøyet.

Installasjonsfiler

For å installere og konfigurere Infosphere Datastage må du ha følgende filer i oppsettet.

Til Windows,

  • EtlDeploymentPackage-windows-oracle.pkg
  • EtlDeploymentPackage-windows-db2.pkg

For Linux,

  • EtlDeploymentPackage-linux-db2.pkg
  • EtlDeploymentPackage-linux-oracle.pkg

Når serveren er installert, bruker det utarbeidede eksemplet på resten av denne siden endringsdatafangst, så det er nyttig å se hvordan endringsdata beveger seg før du bygger dem.

Prosessflyt av endringsdata i en CDC-transaksjonsfasejobb

Behandle flyt av endringsdata i en CDC

Diagrammet ovenfor tracgjør én enkelt endring fra kildedatabasen til målet, i rekkefølgen som er oppført nedenfor.

  1. 'InfoSphere CDC'-tjenesten for databasen overvåker og fanger opp endringen fra en kildedatabase
  2. I henhold til replikeringsdefinisjonen overfører "InfoSphere CDC" endringsdataene til "InfoSphere CDC for InfoSphere DataStage."
  3. "InfoSphere CDC for InfoSphere DataStage"-serveren sender data til "CDC-transaksjonsstadiet" gjennom en TCP/IP-sesjon. "InfoSphere CDC for InfoSphere DataStage"-serveren sender også en COMMIT-melding (sammen med bokmerkeinformasjon) for å markere transaksjonsgrensen i den fangede loggen.
  4. For hver COMMIT-melding sendt av "InfoSphere CDC for InfoSphere DataStage"-serveren, oppretter "CDC Transaction stage" end-of-wave (EOW)-markører. Disse markørene sendes på alle utgangskoblinger til måldatabasekoblingstrinnet.
  5. Når "måldatabasekoblingstrinnet" mottar en slutt-av-bølge-markør på alle inngangskoblinger, skriver den bokmerkeinformasjon til en bokmerketabell og forplikter deretter transaksjonen til måldatabasen.
  6. "InfoSphere CDC for InfoSphere DataStage"-serveren ber om bokmerkeinformasjon fra en bokmerketabell på "måldatabasen".
  7. "InfoSphere CDC for InfoSphere DataStage"-serveren mottar bokmerkeinformasjonen.

Denne informasjonen brukes til,

  • Bestem startpunktet i transaksjonsloggen der endringer leses når replikering starter.
  • For å finne ut om den eksisterende transaksjonsloggen kan ryddes opp

Sette opp SQL-replikering

Før du begynner med Datastage, må du sette opp databasen. Du skal opprette to DB2-databaser.

  • En for å tjene som replikeringskilde og
  • En som mål.

Du vil også opprette to tabeller (produkt og inventar) og fylle dem med eksempeldata. Deretter kan du teste din integrasjon mellom SQL Replikering og Datastage.

Fremover vil du sette opp SQL-replikering ved å opprette kontrolltabeller, abonnementssett, registreringer og abonnementssettmedlemmer. Vi vil lære mer om dette i detalj i neste avsnitt.

Her vil vi ta et eksempel på Retail salgsvare som vår database og lage to tabeller Inventory og Product. Disse tabellene vil laste inn data fra kilde til mål gjennom disse settene. (kontrolltabeller, abonnementssett, registreringer og abonnementssettmedlemmer.)

Trinn 1) Opprett en kildedatabase referert til som SALGS. Lag to tabeller under denne databasen produkt og Varelager.

Trinn 2) Kjør følgende kommando for å lage SALES-database.

db2 create database SALES

Trinn 3) Slå på arkivlogging for SALES-databasen. Sikkerhetskopier også databasen ved å bruke følgende kommandoer

db2 update db cfg for SALES using LOGARCHMETH3 LOGRETAIN
db2 backup db SALES

Trinn 4) I samme ledetekst endrer du til underkatalogen setupDB i katalogen sqlrepl-datastage-tutorial som du har åpnet.tracfra den nedlastede komprimerte filen.

Sette opp SQL-replikering

Trinn 5) Bruk følgende kommando for å lage inventartabell og importere data til tabellen ved å kjøre følgende kommando.

db2 import from inventory.ixf of ixf create into inventory

Trinn 6) Lag en måltabell. Navngi måldatabasen som STAGEDB.

Siden du nå har opprettet både databasekilde og mål, neste trinn i denne DataStage-opplæringen, vil vi se hvordan du replikerer den.

Følgende informasjon kan være nyttig sette opp en ODBC-datakilde i IBM Dokumentasjon for InfoSphere Information Server.

Opprette SQL-replikeringsobjekter

Bildet nedenfor viser hvordan flyten av endringsdata leveres fra kilde- til måldatabasen. Du oppretter et kilde-til-mål-kart.ping mellom bordene kjent som medlemmer av abonnementssett og grupper medlemmene i en abonnement.

Opprette SQL-replikeringsobjekter

Replikeringsenheten i InfoSphere CDC (Change Data Capture) omtales som et abonnement.

  • Endringene som er gjort i kilden, fanges opp i "Capture control table" som sendes til CD-tabellen og deretter til måltabellen. Mens søknadsprogrammet vil ha detaljene om raden der endringer må gjøres. Den vil også bli med CD-tabellen i abonnementssett.
  • Et abonnement inneholder kartping detaljer som spesifiserer hvordan data i et kildedatalager brukes i et måldatalager. Merk at CDC nå omtales som Replikering av infosfæredata.
  • Når et abonnement utføres, fanger InfoSphere CDC opp endringer i kildedatabasen. InfoSphere CDC leverer endringsdataene til målet, og lagrer synkroniseringspunktinformasjon i en bokmerketabell i måldatabasen.
  • InfoSphere CDC bruker bokmerkeinformasjonen til å overvåke fremdriften til InfoSphere DataStage-jobben.
  • I tilfelle feil, brukes bokmerkeinformasjonen som omstartspunkt. I vårt eksempel, ASN.IBMSNAP_FEEDETL-tabellen lagrer DataStage-relatert synkroniseringspunktinformasjon som brukes til å track DataStage-fremdrift.

I denne delen av IBM DataStage opplæringsopplæring, du må gjøre følgende ting,

  • Opprett CAPTURE CONTROL-tabeller og APPLY CONTROL-tabeller for å lagre replikeringsalternativer
  • Registrer PRODUCT- og INVENTORY-tabellene som replikeringskilder
  • Opprett et abonnementssett med to medlemmer
  • Opprett medlemmer av abonnementssett og mål CCD-tabeller

Bruk ASNCLP kommandolinjeprogram for å sette opp SQL-replikering

Trinn 1) Finn skriptfilen crtCtlTablesCaptureServer.asnclp i katalogen sqlrepl-datastage-tutorial/setupSQLRep.

Trinn 2) I filen erstatt og " ” med bruker-ID og passord for å koble til SALG-databasen.

Trinn 3) Endre kataloger til sqlrepl-datastage-tutorial/setupSQLRep-katalogen og kjør skriptet. Bruk følgende kommando. Kommandoen vil koble til SALES-databasen, generere et SQL-skript for å lage Capture-kontrolltabellene.

asnclp –f crtCtlTablesCaptureServer.asnclp

Trinn 4) Finn crtCtlTablesApplyCtlServer.asnclp-skriptfilen i samme katalog. Bytt nå ut to forekomster av og " ” med bruker-ID og passord for tilkobling til STAGEDB-databasen.

Trinn 5) Bruk nå følgende kommando i samme ledetekst for å lage brukskontrolltabeller.

asnclp –f crtCtlTablesApplyCtlServer.asnclp

Trinn 6) Finn crtRegistration.asnclp-skriptfilene og erstatt alle forekomster av med bruker-ID for å koble til SALES-databasen. Endre også " " til tilkoblingspassordet.

Trinn 7) For å registrere kildetabellene, bruk følgende skript. Som en del av registreringen vil ASNCLP-programmet lage to CD-tabeller. CDPRODUKT OG CDINVENTOR.

asnclp –f crtRegistration.asnclp

CREATE REGISTRATION-kommandoen bruker følgende alternativer:

  • Differensiell oppdatering: Den ber Apply program for å oppdatere måltabellen bare når rader i kildetabellen endres
  • Bilde begge: Dette alternativet brukes til å registrere verdien i kildekolonnen før endringen skjedde, og én for verdien etter at endringen skjedde.

Trinn 8) For å koble til måldatabasen (STAGEDB), bruk følgende trinn.

  • Finn filen crtTableSpaceApply.bat, åpne den i et tekstredigeringsprogram
  • Bytt ut og med bruker-ID og passord
  • Skriv inn crtTableSpaceApply.bat i DB2-kommandovinduet og kjør filen.
  • Denne batchfilen oppretter en ny tabellplass på måldatabasen ( STAGEDB)

Trinn 9) Finn crtSubscriptionSetAndAddMembers.asnclp-skriptfilene og gjør følgende endringer.

  • Erstatt alle forekomster av og med bruker-ID og passord for å koble til SALES-databasen (kilde).
  • Erstatt alle forekomster av og med bruker-ID for tilkobling til STAGEDB-databasen (mål).

Etter endringer, kjør skriptet for å lage abonnementssett (ST00) som grupperer kilde- og måltabellene. Skriptet oppretter også to abonnementssettmedlemmer og CCD (konsistente endringsdata) i måldatabasen som vil lagre de modifiserte dataene. Disse dataene vil bli konsumert av Infosphere DataStage.

Trinn 10) Kjør skriptet for å lage abonnementssettet, abonnementssettets medlemmer og CCD-tabeller.

asnclp –f crtSubscriptionSetAndAddMembers.asnclp

Ulike alternativer som brukes for å lage abonnementssett og to medlemmer inkluderer

  • Komplett på kondensert av
  • Ekstern
  • Last type import eksport
  • Timing kontinuerlig

Trinn 11) På grunn av defekten i replikeringsadministrasjonsverktøyene. Du må kjøre en annen batchfil for å sette TARGET_CAPTURE_SCHEMA-kolonnen i IBMSNAP_SUBS_SET kontrolltabell til null.

  • Finn updateTgtCapSchema.bat-filen. Åpne den i et tekstredigeringsprogram. Bytt ut og med bruker-ID for tilkobling til STAGEDB-databasen.
  • I DB2-kommandovinduet skriver du inn kommandoen updateTgtCapSchema.bat og kjører filen.

Opprette definisjonsfilene for å tilordne CCD-tabeller til DataStage

Før vi replikerer i neste trinn, må vi koble CCD-tabellen med DataStage. I denne delen vil vi se hvordan du kobler SQL med DataStage.

For å koble CCD-tabellen til DataStage må du opprette Datastage-definisjonsfiler (.dsx). .dsx-filformatet brukes av DataStage til å importere og eksportere jobbdefinisjoner. Du bruker ASNCLP-skriptet til å opprette to .dsx-filer. For eksempel har vi her opprettet to .dsx-filer.

  • stagedb_AQ00_SET00_sJobs.dsx: Oppretter en jobbsekvens som styrer arbeidsflyten til de fire parallelle jobbene.
  • stagedb_AQ00_SET00_pJobs.dsx : Oppretter de fire parallelle jobbene

ASNCLP-programmet tilordner automatisk CCD-kolonnen til Datastage Column-formatet. Det støttes bare når ASNCLP kjører på Windows, Linux eller Unix-prosedyre.

Definisjonsfiler for å tilordne CCD-tabeller til DataStage

Datastage-jobber trekker rader fra CCD-tabellen.

  1. Én jobb setter et synkroniseringspunkt der DataStage slapp i f.eks.trachenter data fra de to tabellene. Jobben henter denne informasjonen ved å velge SYNCHPOINT-verdien for ST00-abonnementssettet fra IBMSNAP_SUBS_SET-tabellen og setter den inn i MAX_SYNCHPOINT-kolonnen i IBMSNAP_FEEDETL-tabell.
  2. To jobber som ekstract-data fra tabellene PRODUCT_CCD og INVENTORY_CCD. Jobbene vet hvilke rader som skal starte, f.eks.tracved å velge verdiene MIN_SYNCHPOINT og MAX_SYNCHPOINT fra IBMSNAP_FEEDETL-tabell for abonnementssettet.

Når definisjonene er tilordnet, kan replikeringen nå startes, slik at CCD-tabellene begynner å fylles.

Starter replikering

For å starte replikering, bruker du trinnene nedenfor. Når CCD-tabeller er fylt med data, indikerer det at replikeringsoppsettet er validert. Bruk det grafiske brukergrensesnittet for DB2 Control Center for å vise de replikerte dataene i CCD-måltabellene.

Trinn 1) Kontroller at DB2 kjører hvis ikke, bruk deretter db2 start kommando.

Trinn 2) Bruk deretter asncap-kommandoen fra en forespørsel fra operativsystemet for å starte fangstprogrammet. For eksempel.

asncap capture_server=SALES

Kommandoen ovenfor spesifiserer SALES-databasen som Capture-serveren. Hold kommandovinduet åpent mens opptak kjører.

Trinn 3) Åpne nå en ny ledetekst. Start deretter GJELDER program ved å bruke asnapply-kommandoen.

asnapply control_server=STAGEDB apply_qual=AQ00

Starter replikering

  • Kommandoen spesifiserer STAGEDB-databasen som Apply-kontrollserveren (databasen som inneholder Apply-kontrolltabellene)
  • AQ00 som Apply-kvalifikatoren (identifikatoren for dette settet med kontrolltabeller)

La kommandovinduet være åpent mens Apply kjører.

Trinn 4) Åpne nå en annen ledetekst og utfør db2cc-kommandoen for å starte DB2 kontrollsenter. Godta standard kontrollsenter.

Trinn 5) Nå i venstre navigasjonstre, åpne Alle databaser > STAGEDB og klikk deretter Tabeller. Double klikk på tabellnavn (Produkt CCD) for å åpne tabellen. Det vil se noe slikt ut.

Starter replikering

På samme måte kan du også åpne CCD-tabellen for INVENTORY.

Starter replikering

Replikering mater nå CCD-tabellene, så oppmerksomheten flyttes fra databasesiden til DataStage-klientene.

Hvordan lage prosjekter i Datastage Tool

Først av alt skal du opprette et prosjekt i DataStage. For det må du være InfoSphere DataStage-administrator.

Når installasjonen og replikeringen er ferdig, må du opprette et prosjekt. I DataStage er prosjekter en metode for å organisere dataene dine. Det inkluderer å definere datafiler, stadier og byggejobber i et spesifikt prosjekt.

For å opprette et prosjekt i DataStage, følg trinnene nedenfor:

Trinn 1) Start DataStage-programvaren

Start DataStage og QualityStage Administrator. Klikk deretter på Start > Alle programmer > IBM Informasjonsserver > IBM WebSphere DataStage og QualityStage-administrator.

Trinn 2) Koble DataStage-server og klient

For å koble til DataStage-serveren fra DataStage-klienten, skriv inn detaljer som domenenavn, bruker-ID, passord og serverinformasjon.

Trinn 3) Legg til et nytt prosjekt

I vinduet WebSphere DataStage Administration. Klikk kategorien Prosjekter og klikk deretter Legg til.

Trinn 4) Skriv inn prosjektdetaljene

I vinduet WebSphere DataStage Administration skriver du inn detaljer som

  1. Navn
  2. Plassering av filen
  3. Klikk "OK"

Opprett prosjekter i Datastage Tool

Hvert prosjekt inneholder:

  • DataStage jobb
  • Innebygde komponenter. Dette er forhåndsdefinerte komponenter som brukes i en jobb.
  • Brukerdefinerte komponenter. Dette er tilpassede komponenter opprettet ved hjelp av DataStage Manager eller DataStage Designer.

Vi vil se hvordan du importerer replikeringsjobber i Datastage Infosphere.

Slik importerer du replikeringsjobber i Datastage og QualityStage Designer

Du vil importere jobber i IBM InfoSphere DataStage og QualityStage Designer-klient. Og du henretter dem i IBM InfoSphere DataStage og QualityStage Director-klient.

Designer-klienten er som et blankt lerret for byggeprosjekter. Det eks.tracts, transformere, laste inn og kontrollere kvaliteten på data. Den tilbyr verktøy som danner de grunnleggende byggesteinene i en jobb. Den inkluderer

  • Stages: Den kobles til datakilder for å lese eller skrive filer og for å behandle data.
  • lenker: Den kobler sammen stadiene som dataene dine flyter langs

Stadiene i InfoSphere DataStage- og QualityStage Designer-klienten lagres i Designer-verktøypaletten.

Følgende stadier er inkludert i InfoSphere QualityStage:

  • Undersøk scenen
  • Standardiser scenen
  • Match Frequency stage
  • En-kilde kampstadiet
  • Matchstadium med to kilder
  • Overlev scenen
  • Standardiseringskvalitetsvurdering (SQA) stadium

Du kan opprette 4 typer jobber i DataStage infosphere.

  • Parallell jobb
  • Sekvensjobb
  • Mainframe jobb
  • Serverjobb

La oss se trinn for trinn på hvordan du importerer replikeringsjobbfiler.

Trinn 1) Start DataStage og QualityStage Designer. Klikk Start > Alle programmer > IBM Informasjonsserver > IBM WebSphere DataStage og QualityStage Designer

Trinn 2) I vinduet Fest til prosjekt skriver du inn følgende detaljer.

  • Domene
  • brukernavn
  • Passord
  • Prosjektnavn
  • OK

Importer replikeringsjobber i Datastage og QualityStage

Trinn 3) Fra Fil-menyen klikker du på import -> DataStage-komponenter.

Et nytt DataStage Repository Import-vindu åpnes.

  1. Bla gjennom i dette vinduet STAGEDB_AQ00_ST00_sJobs.dsx fil som vi hadde laget tidligere
  2. Velg alternativet "Importer alle."
  3. Merk av for "Utfør effektanalyse."
  4. Klikk "OK".

Importer replikeringsjobber i Datastage og QualityStage

Når jobben er importert, vil DataStage opprette STAGEDB_AQ00_ST00_sequence-jobb.

Trinn 4) Følg de samme trinnene for å importere STAGEDB_AQ00_ST00_pJobs.dsx-fil. Denne importen skaper de fire parallelle jobbene.

Trinn 5) Under Designer Repository-ruten -> Åpne SQLREP-mappen. Inne i mappen vil du se Sequence Job og fire parallelle jobber.

Importer replikeringsjobber i Datastage og QualityStage

Trinn 6) For å se sekvensjobben. Gå til arkivtreet, høyreklikk STAGEDB_AQ00_ST00_sequence-jobben og klikk Rediger. Den vil vise arbeidsflyten til de fire parallelle jobbene som jobbsekvensen kontrollerer.

Importer replikeringsjobber i Datastage og QualityStage

Hvert ikon er en scene,

  • getExtractRange-trinn: Den oppdaterer IBMSNAP_FEEDETL-tabellen. Den vil sette startpunktet for dataeks.tracsjon til punktet der DataStage sist ekstractede rader og angi sluttpunktet til den siste transaksjonen som ble behandlet for abonnementssettet.
  • getExtractRangeSuksessDenne fasen mater utgangspunktene til eksentractFromINVENTORY_CCD-scene og ekstractFra PRODUCT_CCD-scenen
  • AllExtractsSuksess: Denne fasen sikrer at begge ekstractFromINVENTORY_CCD og extractFromPRODUCT_CCD ble fullført. Deretter sendes synkroniseringspunkter for de siste radene som ble hentet til setRangeProcessed-stadiet.
  • setRangeProcessed scene: Den oppdateres IBMSNAP_FEEDETL-tabellen. Så DataStage vet hvor den skal begynne neste datarunde, f.eks.tracsjon

Trinn 7) For å se de parallelle jobbene. Høyreklikk STAGEDB_ASN_INVENTORY_CCD og velg rediger under repository. Det vil åpne vinduet som vist nedenfor.

Importer replikeringsjobber i Datastage og QualityStage

Her i bildet ovenfor kan du se at dataene fra Inventory CCD-tabellen og Synch-punktdetaljer fra FEEDETL-tabellen gjengis til Lookup_6-stadiet.

De importerte jobbene peker fortsatt på ingenting, så et datatilkoblingsobjekt må defineres deretter.

Opprette en datatilkobling fra DataStage til STAGEDB-databasen

Nå er neste trinn å bygge en dataforbindelse mellom InfoSphere DataStage og SQL Replication-måldatabasen. Den inneholder CCD-tabeller.

I DataStage bruker du datatilkoblingsobjekter med relaterte koblingstrinn for raskt å definere en tilkobling til en datakilde i et jobbdesign.

Trinn 1) STAGEDB inneholder begge Apply-kontrolltabellene som DataStage bruker til å synkronisere dataeksemplene sine.tracog CCD-tabellene som dataene er hentet fratracted. Bruk følgende kommandoer

db2 catalog tcpip node SQLREP remote ip_address server 50000
db2 catalog database STAGEDB as STAGEDB2 at node SQLREP

Merknader: IP-adressen til systemet der STAGEDB ble opprettet

Trinn 2) Klikk Fil > Ny > Annet > Datatilkobling.

Trinn 3) Du vil ha et vindu med to faner, Parameters og General.

Datatilkobling fra DataStage til STAGEDB-database

Trinn 4) I dette trinnet

  1. Generelt, tab, navngi datatilkoblingen sqlreplConnect
  2. I Parameters-fanen, som vist nedenfor
  • Klikk på bla-knappen ved siden av 'Koble til ved hjelp av scenetype'-feltet, og i
  • Åpne vindu naviger i depottreet til Stage Types –> Parallell–> Database —-> DB2 Connector.
  • Klikk Åpne.

Datatilkobling fra DataStage til STAGEDB-database

Trinn 5) I tabellen Tilkoblingsparametere skriver du inn detaljer som

  • ConnectionString: STAGEDB2
  • Brukernavn: Bruker-ID for å koble til STAGEDB-databasen
  • Passord: Passord for å koble til STAGEDB-databasen
  • Forekomst: Navn på DB2-forekomst som inneholder STAGEDB-database

Trinn 6) Lagre datatilkobling i neste vindu. Klikk på 'lagre'-knappen.

Importere tabelldefinisjoner fra STAGEDB til DataStage

I forrige trinn så vi at InfoSphere DataStage og STAGEDB-databasen er koblet sammen. Importer nå kolonnedefinisjon og andre metadata for PRODUCT_CCD- og INVENTORY_CCD-tabellene til informasjonsserverdepotet.

Følg trinnene nedenfor i designervinduet.

Trinn 1) Velg Importer > Tabelldefinisjoner > Start veiviser for koblingsimport

Trinn 2) Fra siden for valg av kobling i veiviseren velger du DB2-koblingen og klikker på Neste.

Importere tabelldefinisjoner fra STAGEDB til DataStage

Trinn 3) Klikk last inn på tilkoblingsdetaljsiden. Dette vil fylle veiviserfeltene med tilkoblingsinformasjon fra datatilkoblingen du opprettet i forrige kapittel.

Importere tabelldefinisjoner fra STAGEDB til DataStage

Trinn 4) Klikk Test tilkobling på samme side. Dette vil be DataStage om å forsøke å koble til STAGEDB-databasen. Du kan se meldingen "tilkoblingen er vellykket". Klikk Neste.

Importere tabelldefinisjoner fra STAGEDB til DataStage

Trinn 5) Sørg for at feltene Vertsnavn og Databasenavn er riktig fylt ut på siden Datakildeplassering. Klikk deretter på neste.

Trinn 6) På skjemasiden. Skriv inn skjemaet for bruk kontrolltabeller (ASN) eller kontroller at ASN-skjemaet er forhåndsutfylt i skjemafeltet. Klikk deretter på neste. Valgsiden vil vise listen over tabeller som er definert i ASN-skjemaet.

Importere tabelldefinisjoner fra STAGEDB til DataStage

Trinn 7) Den første tabellen vi trenger å importere metadata fra er IBMSNAP_FEEDETL, en Apply-kontrolltabell. Den inneholder detaljer om synkroniseringspunktene som gjør at DataStage kan beholde track av hvilke rader den har hentet fra CCD-tabellene. Velg IBMSNAP_FEEDETL og klikk på Neste.

Trinn 8) For å fullføre importen av IBMSNAP_FEEDETL tabelldefinisjon. Klikk på import og klikk deretter på åpne i det åpne vinduet.

Trinn 9) Gjenta trinn 1-8 to ganger til for å importere definisjonene for PRODUCT_CCD-tabellen og deretter INVENTORY_CCD-tabellen.

MERKNADER: Mens du importerer definisjoner for beholdningen og produktet, sørg for at du endrer skjemaene fra ASN til skjemaet som PRODUCT_CCD og INVENTORY_CCD ble opprettet under.

Nå har DataStage alle detaljene som kreves for å koble til SQL Replication-måldatabasen.

Angi egenskaper for DataStage-jobbene

For hver av de fire DataStage-parallelle jobbene vi har, inneholder den en eller flere stadier som kobles til STAGEDB-databasen. Du må endre stadiene for å legge til tilkoblingsinformasjon og lenke til datasettfiler som DataStage fyller ut.

Faser har forhåndsdefinerte egenskaper som kan redigeres. Her skal vi endre noen av disse egenskapene for STAGEDB_ASN_PRODUCT_CCD_ex.tracparallell jobb.

Trinn 1) Bla gjennom Designer-repositoriet. Velg STAGEDB_ASN_PRODUCT_CCD_ex under SQLREP-mappen.tracparallelljobb. Høyreklikk på jobben for å redigere. Designvinduet for parallelljobben åpnes i Designer-paletten.

Trinn 2) Finn det grønne ikonet. Dette ikonet representerer DB2-koblingstrinnet. Det brukes f.eks.tracHenter data fra CCD-tabellen. Double-klikk på ikonet. Et sceneredigeringsvindu åpnes.

Angi egenskaper for DataStage-jobbene

Angi egenskaper for DataStage-jobbene

Trinn 3) I redigeringsprogrammet klikker du på Last inn for å fylle ut feltene med tilkoblingsinformasjon. Klikk OK for å lukke sceneredigering og lagre endringene.

Trinn 4) Gå nå tilbake til designvinduet for STAGEDB_ASN_PRODUCT_CCD_extract parallell jobb. Finn ikonet for getSynchPoints DB2-koblingstrinn. Dobbeltklikk deretter på ikonet.

Trinn 5) Klikk nå på last-knappen for å fylle ut feltene med tilkoblingsinformasjon.

MERKNADER: Hvis du bruker en annen database enn STAGEDB som din Apply-kontrollserver. Velg deretter alternativet for å laste tilkoblingsinformasjonen for getSynchPoints-stadiet, som samhandler med kontrolltabellene i stedet for CCD-tabellen.

Trinn 6) I dette trinnet

  • Lag en tom tekstfil på systemet der InfoSphere DataStage kjører.
  • Navngi denne filen som productdataset.ds og noter hvor du lagret den.
  • DataStage vil skrive endringer til denne filen etter at den henter endringer fra CCD-tabellen.
  • Datasett eller filer som brukes til å flytte data mellom koblede jobber er kjent som vedvarende datasett. Det er representert av et DataSet-stadium.

Trinn 7) Åpne nå sceneredigereren i designvinduet, og dobbeltklikk på ikonet insert_into_a_dataset. Det vil åpne et annet vindu.

Angi egenskaper for DataStage-jobbene

Trinn 8) I dette vinduet,

Angi egenskaper for DataStage-jobbene

  • Under egenskapsfanen sørger for at Target mappen er åpen og egenskapen File = DATASETNAME er uthevet.
  • Til høyre vil du ha et filfelt
  • Skriv inn hele banen til productdataset.ds-filen
  • Klikk på "OK".

Du har nå oppdatert alle nødvendige egenskaper for produkt-CCD-tabellen. Lukk designvinduet og lagre alle endringer.

Trinn 9) Finn og åpne nå STAGEDB_ASN_INVENTORY_CCD_extract parallelljobb fra repository-ruten i Designer og gjenta trinn 3–8.

MERKNADER:

  • Du må laste tilkoblingsinformasjonen for kontrollserverdatabasen inn i sceneeditoren for å fåSynchPoints-stadiet. Hvis kontrollserveren din ikke er STAGEDB.
  • For STAGEDB_ST00_AQ00_getExtracParallelle jobber tRange og STAGEDB_ST00_AQ00_markRangeProcessed, åpne alle DB2-koblingstrinn. Bruk deretter innlastingsfunksjonen til å legge til tilkoblingsinformasjon for STAGEDB-databasen.

Alle egenskapene er nå angitt, slik at jobbene kan kompileres og utføres.

Kompilere og kjøre DataStage-jobbene

Når DataStage-jobben er klar til å kompileres, validerer designeren utformingen av jobben ved å se på input, transformasjoner, uttrykk og andre detaljer.

Når jobbkompileringen er fullført, er den klar til å kjøre. Vi vil kompilere alle fem jobbene, men vil kun kjøre "jobbsekvensen". Dette er fordi denne jobben kontrollerer alle de fire parallelle jobbene.

Trinn 1) Under SQLREP-mappen. Velg hver av de fem jobbene ved å (Cntrl+Shift). Høyreklikk deretter og velg kompileringsalternativet for flere jobber.

Kompilere og kjøre DataStage-jobbene

Trinn 2) Du vil se at fem jobber er valgt i DataStage Compilation Wizard. Klikk Neste.

Kompilere og kjøre DataStage-jobbene

Trinn 3) Kompileringen starter og viser en melding "Kompilert vellykket" når den er ferdig.

Kompilere og kjøre DataStage-jobbene

Trinn 4) Start nå DataStage og QualityStage Director. Velg Start > Alle programmer > IBM Informasjonsserver > IBM WebSphere DataStage og QualityStage Director.

Trinn 5) I prosjektnavigasjonsruten til venstre. Klikk på SQLREP-mappen. Dette bringer alle fem jobbene inn i direktørstatustabellen.

Trinn 6) Velg STAGEDB_AQ00_S00_sequence-jobben. Fra menylinjen klikker du på Jobb > Kjør nå.

Kompilere og kjøre DataStage-jobbene

Når kompileringen er ferdig, vil du se den ferdige statusen.

Kompilere og kjøre DataStage-jobbene

Sjekk nå om de endrede radene som er lagret i tabellene PRODUCT_CCD og INVENTORY_CCD var eks.tracted av DataStage og satt inn i de to datasettfilene.

Trinn 7) Gå tilbake til Designer og åpne STAGEDB_ASN_PRODUCT_CCD_extract jobb. For å åpne sceneredigereren Double-klikk på insert_into_a_dataset-ikonet. Klikk deretter vis data.

Trinn 8) Godta standardinnstillingene i vinduet for rader som skal vises. Klikk deretter OK. Et dataleservindu åpnes for å vise innholdet i datasettfilen.

Kompilere og kjøre DataStage-jobbene

Testing av integrasjon mellom SQL-replikering og DataStage

I forrige trinn kompilerte og utførte vi jobben. I denne delen vil vi sjekke integrasjonen av SQL-replikering og DataStage. For det vil vi gjøre endringer i kildetabellen og se om den samme endringen er oppdatert i DataStage.

Trinn 1) Naviger til mappen sqlrepl-datastage-scripts for operativsystemet ditt.

Trinn 2) Start SQL-replikering ved å følge trinnene:

  • Kjør startSQLCapture.bat (Windows)-filen for å starte Capture-programmet i SALES-databasen.
  • Kjør startSQLAply.bat (Windows)-filen for å starte Apply-programmet i STAGEDB-databasen.

Trinn 3) Åpne nå filen updateSourceTables.sql. For å koble til SALG-databasen, bytt ut og med bruker-ID og passord.

Trinn 4) Åpne et DB2-kommandovindu. Endre katalog til sqlrepl-datastage-tutorial\scripts, og kjør problemet med den gitte kommandoen:

db2 -tvf updateSourceTables.sql

SQL-skriptet vil utføre forskjellige operasjoner som Oppdater, Sett inn og slett på begge tabellene (PRODUCT, INVENTORY) i salgsdatabasen.

Trinn 5) På systemet der DataStage kjører. Åpne DataStage Director og utfør STAGEDB_AQ00_S00_sequence-jobben. Klikk Jobb > Kjør nå.

Integrasjon mellom SQL-replikering og DataStage

Når du kjører jobben vil følgende aktiviteter bli utført.

  • Capture-programmet leser endringene på seks rader i SALES-databaseloggen og setter dem inn i CD-tabellene.
  • Apply-programmet henter endringsradene fra CD-tabellene på SALES og setter dem inn i CCD-tabellene på STAGEDB.
  • De to DataStage-eksemplenetract-jobber plukker opp endringene fra CCD-tabellene og skriver dem til filene productdataset.ds og inventory dataset.ds.

Du kan sjekke at trinnene ovenfor fant sted ved å se på datasettene.

Trinn 6) Følg trinnene nedenfor,

  • Start designeren. Åpne STAGEDB_ASN_PRODUCT_CCD_extracikke jobb.
  • Deretter Double-klikk på insert_into_a_dataset-ikonet. I sceneredaktøren. Klikk på Vis data.
  • Godta standardinnstillingene i vinduet for rader som skal vises, og klikk OK.

Datasettet inneholder tre nye rader. Den enkleste måten å sjekke at endringene er implementert, er å rulle ned til høyre i dataleseren. Se nå på de tre siste radene (se bildet nedenfor)

Integrasjon mellom SQL-replikering og DataStage

Bokstaven I, U og D spesifiserer INSERT, UPDATE og DELETE operasjoner som resulterte i hver ny rad.

Du kan gjøre den samme sjekken for inventartabell.

DataStage vs. andre populære ETL-verktøy

Når den komplette flyten fungerer, er det neste spørsmålet vanligvis hvor DataStage ligger i forhold til alternativene et team allerede eier. Tabellen nedenfor sammenligner det med tre mye brukte plattformer basert på kriteriene som oftest avgjør et kjøp.

Kriterier IBM DataStage Informatikk Kraftsenter Talent SSIS
Prosesseringsmodell Rørledning pluss partisjonsparallellisme Metadatadrevet partisjonering Generert Java or Spark kode Dataflyt i minnet
Passer best Svært store arbeidsbelastninger for bedrifter, både batcher og CDC Komplekse eldre arkitekturer med tung styring Skybaserte og kostnadssensitive team Microsoft SQL Server eiendommer
Lisensiering Kommersiell, premium-nivå Næringseiendom Åpen kildekode-utgave pluss kommersielle nivåer Følger med SQL Server
Læringskurve Trenger bratte ETL-spesialister Steep Middels gode kodeferdigheter hjelper Moderat
Datakvalitet QualityStage inkludert i pakken Separat produkt for datakvalitet Talentdatakvalitet inkludert Tilleggskomponenter

Kort sagt, DataStage velges når rå gjennomstrømning, rekkevidde for stormaskiner og revisjonsklar avstamning er viktigere enn lisenskostnader. Team som hovedsakelig jobber i en sky datasjøarkitektur eller sammenligne f.eks.tracå bestille først kan finne avveiningene i ETL vs ELT mer relevant, og en bredere kortliste vises i oppsummeringen av ETL-verktøy og dataintegrasjonsverktøy.

Spørsmål og svar

En serverjobb kjører på en enkelt node ved hjelp av et begrenset scenesett. En parallelljobb kjører på den parallelle motoren, støtter partisjonering på tvers av noder og bruker en rikere scenepalett, slik at den skalerer til langt større volumer.

Ja. Ved siden av den lokale informasjonsserveren, IBM tilbyr DataStage som en administrert tjeneste på IBM Cloud Pak for Data og innenfor watsonx.data-integrasjon, slik at de samme flytdesignene kan kjøres uten lokal serveradministrasjon.

Det meste av arbeidet er grafisk. Nyttige tillegg er SQL for kildespørringer, skallskripting for jobbkontroll og uttrykksspråket DataStage BASIC som brukes i Transformer-trinnavledninger og -rutiner.

AI-assistenter i IBM Cloud Pak for Data foreslår kilde-til-mål-kartpings, generere transformasjonsuttrykk fra enkelt språk, oppdage skjemadrift og anbefale partisjoneringsendringer når en jobb kjører saktere enn grunnlinjen.

Nei. AI akselererer kartetping, dokumentasjon og forslag til finjustering, men utviklerne eier fortsatt datamodellering, forretningsregler, unntakshåndtering og produksjonsansvar. Rollen flyttes mot gjennomgang og design i stedet for å forsvinne.

Oppsummer dette innlegget med: