OCI GoldenGate Data Transforms entdecken
Hier erfahren Sie, wie Sie OCI GoldenGate-Datenreplikations- und Datentransformations-Deployments zusammen verwenden, um Daten zwischen zwei autonomen KI-Datenbanken zu laden und zu transformieren.
Bevor Sie beginnen
Um diesen Schnellstart erfolgreich abzuschließen, benötigen Sie:
-
Eine autonome KI-Quelldatenbank mit geladenen Beispieldaten und aktiviertem ergänzendem Logging.
Tipp:
Sie können die OCI GoldenGate-Beispieldaten herunterladen, wenn Sie Beispieldaten für die Arbeit benötigen.
-
Verwenden Sie das SQL-Tool für Datenbankaktionen der autonomen KI-Datenbank, um die beiden Skripte zum Erstellen des Benutzerschemas und der Tabellen auszuführen.
-
Mit dem SQL-Tool können Sie zusätzliches Logging aktivieren.
Befolgen Sie die Schritte unter Übung 1, Aufgabe 3: Verfügbarkeitsschema laden, um weitere Details zu erhalten.
-
-
GGADMIN-Benutzer in der autonomen KI-Quelldatenbankinstanz entsperren
-
Wählen Sie auf der Seite "Details zur autonomen KI-Datenbank" im Menü Datenbankaktionen die Option Datenbankbenutzer aus.
Tipp: Verwenden Sie die Zugangsdaten des Autonomen KI-Datenbankadministrators, die Sie bei der Erstellung der Instanz zur Anmeldung angegeben haben, wenn Sie dazu aufgefordert werden.
-
Suchen Sie den Benutzer GGGADMIN, und wählen Sie im Menü mit den Auslassungspunkten (drei Punkte) die Option Bearbeiten aus.
-
Geben Sie im Bereich "Benutzer bearbeiten" ein Kennwort ein, bestätigen Sie das Kennwort, und deaktivieren Sie die Option Account ist gesperrt.
-
Wählen Sie Apply Changes aus.
-
Aufgabe 1: Umgebung einrichten
-
Erstellen Sie eine OracleAutonomous AI Transaction Processing-(ATP-)Quellverbindung.
-
Erstellen Sie eine targetAutonomous AI Lakehouse(ALK)-Verbindung.
-
Mit dem SQL-Tool können Sie zusätzliches Logging aktivieren:
ALTER DATABASE ADD SUPPLEMENTAL LOG DATA -
Führen Sie die folgende Abfrage im SQL-Tool aus, um sicherzustellen, dass
support_mode=FULLfür alle Tabellen in der Quelldatenbank gilt:select * from DBA_GOLDENGATE_SUPPORT_MODE where owner = 'SRC_OCIGGLL';
Aufgabe 2: Integrierten Extract erstellen
Ein integrierter Extract erfasst fortlaufende Änderungen an der Quelldatenbank.
-
Wählen Sie auf der Seite "Deployment-Details" die Option Konsole starten.
-
Geben Sie bei Bedarf oggadmin als Benutzernamen und Kennwort ein, das Sie beim Erstellen des Deployments verwendet haben, und wählen Sie Anmelden aus.
-
Transaktionsdaten und Checkpoint-Tabelle hinzufügen:
-
Rufen Sie das Navigationsmenü auf, und wählen Sie DB-Verbindungen aus.
-
Wählen Sie Verbindung zu Datenbank-SourceDB herstellen aus.
-
Wählen Sie im Navigationsmenü Trandata und dann Trandata hinzufügen (Plussymbol).
-
Geben Sie unter Schemaname
SRC_OCIGGLLein, und wählen Sie Weiterleiten aus. -
Geben Sie zur Prüfung
SRC_OCIGGLLin das Suchfeld ein, und wählen Sie Suchen aus. -
Rufen Sie das Navigationsmenü auf, und wählen Sie DB-Verbindungen aus.
-
Wählen Sie Verbindung zur Datenbank-TargetDB herstellen aus.
-
Wählen Sie im Navigationsmenü Checkpoint, Checkpoint hinzufügen (Plussymbol) aus.
-
Geben Sie unter Checkpoint-Tabelle
"SRCMIRROR_OCIGGLL"."CHECKTABLE"ein, und wählen Sie Weiterleiten aus.
-
-
Fügen Sie einen Extract hinzu.
Hinweis: Weitere Informationen zu Parametern, mit denen Sie Quelltabellen angeben können, finden Sie unter Zusätzliche Exportparameteroptionen.
Hängen Sie die folgenden Zeilen auf der Seite "Extract-Parameter" unter
EXTTRAIL <trail-name>an:-- Capture DDL operations for listed schema tables ddl include mapped -- Add step-by-step history of -- to the report file. Very useful when troubleshooting. ddloptions report -- Write capture stats per table to the report file daily. report at 00:01 -- Rollover the report file weekly. Useful when IE runs -- without being stopped/started for long periods of time to -- keep the report files from becoming too large. reportrollover at 00:01 on Sunday -- Report total operations captured, and operations per second -- every 10 minutes. reportcount every 10 minutes, rate -- Table list for capture table SRC_OCIGGLL.*; -
Prüfen Sie, ob Transaktionen mit langer Ausführungszeit vorliegen. Führen Sie das folgende Skript in der Quelldatenbank aus:
select start_scn, start_time from gv$transaction where start_scn < (select max(start_scn) from dba_capture);Wenn die Abfrage Zeilen zurückgibt, müssen Sie die SCN der Transaktion suchen und die Transaktion anschließend festschreiben oder zurücksetzen.
Aufgabe 3: Daten mit Oracle Data Pump (ExpDP) exportieren
Mit Oracle Data Pump (ExpDP) können Sie Daten aus der Quelldatenbank in Oracle Object Storage exportieren.
-
Erstellen Sie einen Oracle Object Storage-Bucket.
Notieren Sie sich den Namespace und den Bucket-Namen für die Export- und Importskripte.
-
Erstellen Sie ein Authentifizierungstoken, kopieren Sie die Tokenzeichenfolge, und fügen Sie sie zur späteren Verwendung in einen Texteditor ein.
-
Erstellen Sie Zugangsdaten in der Quelldatenbank, und ersetzen Sie
<user-name>und<token>durch den Benutzernamen Ihres Oracle Cloud-Accounts und die Tokenzeichenfolge, die Sie im vorherigen Schritt erstellt haben:BEGIN DBMS_CLOUD.CREATE_CREDENTIAL( credential_name => 'ADB_OBJECTSTORE', username => '<user-name>', password => '<token>' ); END; -
Führen Sie das folgende Skript in der Quelldatenbank aus, um den Job "Daten exportieren" zu erstellen. Stellen Sie sicher, dass Sie
<region>,<namespace>und<bucket-name>in der Objektspeicher-URI entsprechend ersetzen.SRC_OCIGGLL.dmpist eine Datei, die bei der Ausführung dieses Skripts erstellt wird.DECLARE ind NUMBER; -- Loop index h1 NUMBER; -- Data Pump job handle percent_done NUMBER; -- Percentage of job complete job_state VARCHAR2(30); -- To keep track of job state le ku$_LogEntry; -- For WIP and error messages js ku$_JobStatus; -- The job status from get_status jd ku$_JobDesc; -- The job description from get_status sts ku$_Status; -- The status object returned by get_status BEGIN -- Create a (user-named) Data Pump job to do a schema export. h1 := DBMS_DATAPUMP.OPEN('EXPORT','SCHEMA',NULL,'SRC_OCIGGLL_EXPORT','LATEST'); -- Specify a single dump file for the job (using the handle just returned) -- and a directory object, which must already be defined and accessible -- to the user running this procedure. DBMS_DATAPUMP.ADD_FILE(h1,'https://objectstorage.<region>.oraclecloud.com/n/<namespace>/b/<bucket-name>/o/SRC_OCIGGLL.dmp','ADB_OBJECTSTORE','100MB',DBMS_DATAPUMP.KU$_FILE_TYPE_URIDUMP_FILE,1); -- A metadata filter is used to specify the schema that will be exported. DBMS_DATAPUMP.METADATA_FILTER(h1,'SCHEMA_EXPR','IN (''SRC_OCIGGLL'')'); -- Start the job. An exception will be generated if something is not set up properly. DBMS_DATAPUMP.START_JOB(h1); -- The export job should now be running. In the following loop, the job -- is monitored until it completes. In the meantime, progress information is displayed. percent_done := 0; job_state := 'UNDEFINED'; while (job_state != 'COMPLETED') and (job_state != 'STOPPED') loop dbms_datapump.get_status(h1,dbms_datapump.ku$_status_job_error + dbms_datapump.ku$_status_job_status + dbms_datapump.ku$_status_wip,-1,job_state,sts); js := sts.job_status; -- If the percentage done changed, display the new value. if js.percent_done != percent_done then dbms_output.put_line('*** Job percent done = ' \|\| to_char(js.percent_done)); percent_done := js.percent_done; end if; -- If any work-in-progress (WIP) or error messages were received for the job, display them. if (bitand(sts.mask,dbms_datapump.ku$_status_wip) != 0) then le := sts.wip; else if (bitand(sts.mask,dbms_datapump.ku$_status_job_error) != 0) then le := sts.error; else le := null; end if; end if; if le is not null then ind := le.FIRST; while ind is not null loop dbms_output.put_line(le(ind).LogText); ind := le.NEXT(ind); end loop; end if; end loop; -- Indicate that the job finished and detach from it. dbms_output.put_line('Job has completed'); dbms_output.put_line('Final job state = ' \|\| job_state); dbms_datapump.detach(h1); END;
Aufgabe 4: Zieldatenbank mit Oracle Data Pump (ImpDP) instanziieren
Mit Oracle Data Pump (ImpDP) können Sie Daten aus der Datei SRC_OCIGGLL.dmp, die aus der Quelldatenbank exportiert wurde, in die Zieldatenbank importieren.
-
Erstellen Sie Zugangsdaten in der Zieldatenbank für den Zugriff auf Oracle Object Storage (mit denselben Informationen wie im vorherigen Abschnitt).
BEGIN DBMS_CLOUD.CREATE_CREDENTIAL( credential_name => 'ADB_OBJECTSTORE', username => '<user-name>', password => '<token>' ); END; -
Führen Sie das folgende Skript in der Zieldatenbank aus, um Daten aus
SRC_OCIGGLL.dmpzu importieren. Stellen Sie sicher, dass Sie<region>,<namespace>und<bucket-name>in der Objektspeicher-URI entsprechend ersetzen:DECLARE ind NUMBER; -- Loop index h1 NUMBER; -- Data Pump job handle percent_done NUMBER; -- Percentage of job complete job_state VARCHAR2(30); -- To keep track of job state le ku$_LogEntry; -- For WIP and error messages js ku$_JobStatus; -- The job status from get_status jd ku$_JobDesc; -- The job description from get_status sts ku$_Status; -- The status object returned by get_status BEGIN -- Create a (user-named) Data Pump job to do a "full" import (everything -- in the dump file without filtering). h1 := DBMS_DATAPUMP.OPEN('IMPORT','FULL',NULL,'SRCMIRROR_OCIGGLL_IMPORT'); -- Specify the single dump file for the job (using the handle just returned) -- and directory object, which must already be defined and accessible -- to the user running this procedure. This is the dump file created by -- the export operation in the first example. DBMS_DATAPUMP.ADD_FILE(h1,'https://objectstorage.<region>.oraclecloud.com/n/<namespace>/b/<bucket-name>/o/SRC_OCIGGLL.dmp','ADB_OBJECTSTORE',null,DBMS_DATAPUMP.KU$_FILE_TYPE_URIDUMP_FILE); -- A metadata remap will map all schema objects from SRC_OCIGGLL to SRCMIRROR_OCIGGLL. DBMS_DATAPUMP.METADATA_REMAP(h1,'REMAP_SCHEMA','SRC_OCIGGLL','SRCMIRROR_OCIGGLL'); -- If a table already exists in the destination schema, skip it (leave -- the preexisting table alone). This is the default, but it does not hurt -- to specify it explicitly. DBMS_DATAPUMP.SET_PARAMETER(h1,'TABLE_EXISTS_ACTION','SKIP'); -- Start the job. An exception is returned if something is not set up properly. DBMS_DATAPUMP.START_JOB(h1); -- The import job should now be running. In the following loop, the job is -- monitored until it completes. In the meantime, progress information is -- displayed. Note: this is identical to the export example. percent_done := 0; job_state := 'UNDEFINED'; while (job_state != 'COMPLETED') and (job_state != 'STOPPED') loop dbms_datapump.get_status(h1, dbms_datapump.ku$_status_job_error + dbms_datapump.ku$_status_job_status + dbms_datapump.ku$_status_wip,-1,job_state,sts); js := sts.job_status; -- If the percentage done changed, display the new value. if js.percent_done != percent_done then dbms_output.put_line('*** Job percent done = ' \|\| to_char(js.percent_done)); percent_done := js.percent_done; end if; -- If any work-in-progress (WIP) or Error messages were received for the job, display them. if (bitand(sts.mask,dbms_datapump.ku$_status_wip) != 0) then le := sts.wip; else if (bitand(sts.mask,dbms_datapump.ku$_status_job_error) != 0) then le := sts.error; else le := null; end if; end if; if le is not null then ind := le.FIRST; while ind is not null loop dbms_output.put_line(le(ind).LogText); ind := le.NEXT(ind); end loop; end if; end loop; -- Indicate that the job finished and gracefully detach from it. dbms_output.put_line('Job has completed'); dbms_output.put_line('Final job state = ' \|\| job_state); dbms_datapump.detach(h1); END;
Aufgabe 5: Nicht integriertes Replicat hinzufügen und ausführen
-
Fügen Sie ein Replicat hinzu, und führen Sie es aus.
Ersetzen Sie auf der Seite Parameterdatei
MAP *.*, TARGET *.*;durch das folgende Skript:-- Capture DDL operations for listed schema tables ddl include mapped -- Add step-by-step history of ddl operations captured -- to the report file. Very useful when troubleshooting. ddloptions report -- Write capture stats per table to the report file daily. report at 00:01 -- Rollover the report file weekly. Useful when PR runs -- without being stopped/started for long periods of time to -- keep the report files from becoming too large. reportrollover at 00:01 on Sunday -- Report total operations captured, and operations per second -- every 10 minutes. reportcount every 10 minutes, rate -- Table map list for apply DBOPTIONS ENABLE_INSTANTIATION_FILTERING; MAP SRC_OCIGGLL.*, TARGET SRCMIRROR_OCIGGLL.*;Hinweis:
DBOPTIONS ENABLE_INSTANTIATION_FILTERINGermöglicht die CSN-Filterung in Tabellen, die mit Oracle Data Pump importiert wurden. Weitere Informationen finden Sie in der Referenz zu DBOPTIONS. -
Inserts in die Quelldatenbank ausführen:
-
Kehren Sie zur Oracle Cloud-Konsole zurück, und navigieren Sie über das Navigationsmenü zurück zu Oracle AI Database, Autonomous AI Transaction Processing und dann zu SourceDB.
-
Wählen Sie auf der Seite "SourceDB Details" die Option Database actions aus, und wählen Sie SQL aus.
-
Geben Sie die folgenden Einfügevorgänge ein, und wählen Sie Skript ausführen aus:
Insert into SRC_OCIGGLL.SRC_CITY (CITY_ID,CITY,REGION_ID,POPULATION) values (1000,'Houston',20,743113); Insert into SRC_OCIGGLL.SRC_CITY (CITY_ID,CITY,REGION_ID,POPULATION) values (1001,'Dallas',20,822416); Insert into SRC_OCIGGLL.SRC_CITY (CITY_ID,CITY,REGION_ID,POPULATION) values (1002,'San Francisco',21,157574); Insert into SRC_OCIGGLL.SRC_CITY (CITY_ID,CITY,REGION_ID,POPULATION) values (1003,'Los Angeles',21,743878); Insert into SRC_OCIGGLL.SRC_CITY (CITY_ID,CITY,REGION_ID,POPULATION) values (1004,'San Diego',21,840689); Insert into SRC_OCIGGLL.SRC_CITY (CITY_ID,CITY,REGION_ID,POPULATION) values (1005,'Chicago',23,616472); Insert into SRC_OCIGGLL.SRC_CITY (CITY_ID,CITY,REGION_ID,POPULATION) values (1006,'Memphis',23,580075); Insert into SRC_OCIGGLL.SRC_CITY (CITY_ID,CITY,REGION_ID,POPULATION) values (1007,'New York City',22,124434); Insert into SRC_OCIGGLL.SRC_CITY (CITY_ID,CITY,REGION_ID,POPULATION) values (1008,'Boston',22,275581); Insert into SRC_OCIGGLL.SRC_CITY (CITY_ID,CITY,REGION_ID,POPULATION) values (1009,'Washington D.C.',22,688002); -
Wählen Sie in der OCI GoldenGate-Deployment-Konsole den Extraktnamen (UAEXT) aus, und wählen Sie Statistiken aus. Prüfen Sie, ob SRC_OCIGGLL.SRC_CITY mit 10 Einfügungen aufgeführt ist.
-
Kehren Sie zum Bildschirm "Überblick" zurück, wählen Sie Replikatname (REP) und dann Statistiken aus. Prüfen Sie, ob SRCMIRROR_OCIGGLL.SRC_CITY mit 10 Einfügungen aufgeführt ist
-
Aufgabe 6: Ressourcen für Datentransformationen erstellen
-
Generische Verbindung erstellen.
Hinweis: Beispiel: Für autonome KI-Datenbanken in US East (Ashburn) werden die folgenden Werte verwendet:
-
Geben Sie unter Host
adb.us-ashburn-1.oraclecloud.com:1522ein. -
Wählen Sie unter Subnetz dasselbe Subnetz wie das Deployment aus der Dropdown-Liste aus.
-
-
Erstellen Sie TRG_CUSTOMER in SRCMIRROR_OCIGGLL in Ihrer Autonomous AI Lakehouse-(ADW-)Instanz:
-
Öffnen Sie in der Oracle Cloud-Konsole das Navigationsmenü, navigieren Sie zu Oracle AI Database, und wählen Sie Autonomous AI Lakehouse aus.
-
Wählen Sie auf der Seite Autonome Datenbanken die Option für Ihre ADW-Instanz aus.
-
Wählen Sie auf der Detailseite der autonomen KI-ADW-Datenbank die Option Datenbankaktionen aus, und wählen Sie dann SQL aus der Dropdown-Liste aus. Wenn das Menü "Datenbankaktionen" zu lange dauert, können Sie Datenbankaktionen direkt auswählen und dann auf der Seite "Datenbankaktionen" die Option "SQL" auswählen.
-
Geben Sie Folgendes in das Arbeitsblatt ein, und wählen Sie Anweisung ausführen aus.
create table SRCMIRROR_OCIGGLL.TRG_CUSTOMER ( CUST_ID NUMBER(10,0) not null, DEAR VARCHAR2(4 BYTE), CUST_NAME VARCHAR2(50 BYTE), ADDRESS VARCHAR2(100 BYTE), CITY_ID NUMBER(10,0), PHONE VARCHAR2(50 BYTE), AGE NUMBER(3,0), AGE_RANGE VARCHAR2(50 BYTE), SALES_PERS VARCHAR2(50 BYTE), CRE_DATE DATE, UPD_DATE DATE, constraint PK_TRG_CUSTOMER primary key (CUST_ID) );
-
-
Starten Sie die Deployment-Konsole für Datentransformationen:
-
Navigieren Sie zurück zur Seite "Deployments", und wählen Sie das Deployment aus, das Sie in Aufgabe 6 erstellt haben.
-
Wählen Sie auf der Seite "Deployment" die Option Konsole starten aus.
-
Melden Sie sich bei der Deployment-Konsole für Datentransformationen an.
-
-
ADW-Verbindung erstellen:
-
Öffnen Sie das Navigationsmenü, wählen Sie Verbindungen und dann Verbindung erstellen aus.
-
Wählen Sie auf der Seite "Typ auswählen" unter "Datenbanken" die Option Oracle und dann Weiter aus.
-
Füllen Sie auf der Seite "Verbindungsdetails" die Formularfelder wie folgt aus, und wählen Sie Erstellen aus:
-
Geben Sie als Namen ADW_IAD ein.
-
Wählen Sie Zugangsdatendatei verwenden.
-
Laden Sie für Wallet File Ihre (ADW-)Wallet-Datei hoch.
Hinweis: Um die ADW-Wallet-Datei herunterzuladen, wählen Sie auf der Seite "ADW-Details" die Option Datenbankverbindung aus.
-
Wählen Sie im Dropdown-Menü "Services" die Option <name>_low aus.
-
Geben Sie als Benutzer ADMIN ein.
-
Geben Sie als Kennwort Ihr ADW-Kennwort ein.
-
-
-
Datenentity importieren:
-
Öffnen Sie das Navigationsmenü, wählen Sie Datenentitys und dann Datenentity importieren aus.
-
Wählen Sie für die Verbindung in der Dropdown-Liste die Option ADW_IAD aus.
-
Wählen Sie für Schema in der Dropdown-Liste die Option SRCMIRROR_OCIGGLL aus.
-
Wählen Sie Start.
-
-
Projekt erstellen:
-
Öffnen Sie das Navigationsmenü, und wählen Sie Projekte aus.
-
Wählen Sie in der Seite "Projekte" die Option Projekt erstellen.
-
Geben Sie im Dialogfeld "Projekt erstellen" unter "Name" Demo-Pipeline ein, und wählen Sie Erstellen aus.
-
Aufgabe 7: Workflow erstellen und ausführen
-
Datenfluss erstellen:
Hinweis: Weitere Informationen zum Data Flow Editor.
-
Wählen Sie den Namen Ihres Projekts aus.
-
Wählen Sie auf der Seite "Projektdetails" unter "Ressourcen" die Option Datenflüsse und dann Datenfluss erstellen aus.
-
Geben Sie im Dialogfeld "Datenfluss erstellen" unter "Name" TRG_CUSTOMER laden und optional eine Beschreibung ein. Wählen Sie Erstellen. Die Designleinwand wird geöffnet.
-
Füllen Sie im Dialogfeld "Schema hinzufügen" die Formularfelder wie folgt aus, und wählen Sie OK aus:
-
Wählen Sie für die Verbindung in der Dropdown-Liste die Option ADW_IAD aus.
-
Wählen Sie für Schema in der Dropdown-Liste die Option SRCMIRROR_OCIGGLL aus.
-
-
Ziehen Sie die folgenden Datenentitys und Komponenten auf die Design-Leinwand:
-
Blenden Sie im Bereich "Datenentitys" das Schema SRCMIRROR_OCIGGLL ein. Ziehen Sie die Datenentity SRC_AGE_GROUP auf die Designleinwand.
-
Blenden Sie im Bereich "Datenentitys" das Schema SRCMIRROR_OCIGGLL ein. Ziehen Sie die Datenentity SRC_SALES_PERSON auf die Designleinwand.
-
Ziehen Sie die Komponente Lookup in der Symbolleiste "Datentransformation" auf die Designleinwand.
-
Ziehen Sie die Komponente Verknüpfen in der Symbolleiste "Datentransformation" auf die Entwurfsleinwand.
-
Ziehen Sie im Bereich "Datenentitys" unter SRCMIRROR_OCIGGLL die Datenentity SRC_CUSTOMER auf die Designleinwand.
-
-
Verbinden Sie die folgenden Datenentitys mit der Lookup-Komponente:
-
Wählen Sie das Connector-Symbol SRC_AGE_GROUP aus, und ziehen Sie das Symbol in die Komponente Lookup.
-
Wählen Sie das Connector-Symbol SRC_CUSTOMER aus, und ziehen Sie das Symbol in die Komponente Lookup.
-
-
Wählen Sie auf der Designleinwand Lookup aus, um den Suchbereich zu öffnen. Wechseln Sie im Suchbereich zur Registerkarte Attribute, und fügen Sie die folgende Abfrage in die Suchbedingung ein:
SRC_CUSTOMER.AGE between SRC_AGE_GROUP.AGE_MIN and SRC_AGE_GROUP.AGE_MAX -
Verbinden Sie die folgenden Komponenten mit der Join-Komponente:
-
Wählen Sie das Connector-Symbol SRC_SALES_PERSON aus, und ziehen Sie das Symbol auf die Komponente Beitreten.
-
Wählen Sie im Connector-Symbol Lookup aus, und ziehen Sie das Symbol auf die Komponente Beitreten.
-
-
Wählen Sie auf der Designleinwand Join aus, um den Join-Bereich zu öffnen. Wechseln Sie im Join-Bereich zur Registerkarte Attribute, und fügen Sie die folgende Abfrage in Join-Bedingung ein:
SRC_CUSTOMER.SALES_PERS_ID=SRC_SALES_PERSON.SALES_PERS_ID -
Ziehen Sie die folgende Datenentity und -komponente auf die Entwurfsleinwand:
-
Ziehen Sie im Bereich "Datenentitys" unter SRCMIRROR_OCIGGLL die Datenentity TRG_CUSTOMER auf die Designleinwand.
-
Wählen Sie das Connector-Symbol Join aus, und ziehen Sie das Symbol auf die Datenentity TRG_CUSTOMER.
-
Wählen Sie auf der Entwurfsleinwand TRG_CUSTOMER aus, und blenden Sie die Datenentity ein.
-
-
Aktivieren Sie auf der Registerkarte Attribute den Schlüssel für CUST_ID, deaktivieren Sie "Aktualisieren" für CRE_DATE, und deaktivieren Sie "Einfügen" für UPD_DATE.
-
Stellen Sie auf der Registerkarte Spaltenzuordnung sicher, dass der Name mit dem Ausdruck übereinstimmt:
-
KUNDEN-ID
SRC_CUSTOMER.CUSTID -
DEAR
CASE WHEN SRC_CUSTOMER.DEAR = 0 THEN 'Mr' WHEN SRC_CUSTOMER.DEAR = 1 THEN 'Mrs' ELSE 'Ms' END -
KUNDENNAME
SRC_CUSTOMER.FIRST_NAME \|\| ' ' \|\| UPPER(SRC_CUSTOMER.LAST_NAME) -
VERTRIEBSMITARBEITER
SRC_SALES_PERSON.FIRST_NAME \|\| ' ' \|\|UPPER(SRC_SALES_PERSON.LAST_NAME) -
CRE_DATE
SYSDATE -
AKTUALISIERUNGSDATUM
SYSDATE -
Andere Mappings unverändert verwenden.
-
-
Wählen Sie auf der Registerkarte Optionen unter "Modus" in der Dropdown-Liste die Option Inkrementelle Aktualisierung aus.
-
Blenden Sie TRG_CUSTOMER aus.
-
Wählen Sie Datenfluss speichern aus.
-
-
Workflow erstellen:
-
Wählen Sie den Namen des Projekts, Workflows, Workflow erstellen aus.
-
Geben Sie als Namen Data Warehouse-Laden orchestrieren ein. Wählen Sie Erstellen.
-
Ziehen Sie das SQL-Symbol auf die Designleinwand.
-
Doppelklicken Sie im Editor auf den SQL-Schritt, um die Seite "Schritteigenschaften" zu öffnen.
-
Geben Sie auf der Registerkarte Allgemein als Namen Datenbereinigung ein.
-
Wählen Sie die Registerkarte Attribute für die Verbindung aus, und wählen Sie ADW_IAD aus der Dropdown-Liste aus.
-
Kopieren Sie für SQL die folgende Abfrage:
delete from SRCMIRROR_OCIGGLL.TRG_CUSTOMER where CITY_ID > 110 -
Blenden Sie SQL aus.
-
Ziehen Sie unter "Datenflüsse" den Datenfluss TRG_CUSTOMER auf die Designleinwand.
-
Wählen Sie in der SQL-Workflowzeile Datenbereinigung aus, und ziehen Sie das Symbol "OK" (grüner Pfeil) in den Datenfluss TRG_CUSTOMER.
-
Wählen Sie Workflow speichern, Workflow starten aus.
-