You are on page 1of 82

<Insert Picture Here>

Oracle PTS GoldenGate Workshop for partners

Agenda
Introduction Use Cases Break / VirtualBox Installation & Import Architecture Configuration Overview ands!on "a#s

Oracle $olden$ate %volution


Company Strength and Ser ice 1c2uired +y Oracle in 3$$0

GoldenGate Soft"are esta+lished in /00#

Glo+al sales and support

!apid Gro"th in Strategic Partners

*sta+lished, -oyal Customer .ase

#$$% customers&&& '$$$% solutions implemented( in )# countries

$olden$ate is &trategic to Oracle


' .est4in4class leader in real4time data solutions ' Complements e5isting Oracle products ' Continuous 1 aila+ility for heterogeneous systems ' !eal4time data access for !eporting ' !eal4time data for .I, *P6, *5adata ' 7ero4do"ntime migrations 8 upgrades to Oracle 9ata+ase and 1pplications ' Over 400 customers with 4,000+ implementations across Fortune 500 companies: Financial Services, Communications, Healthcare, Public Sector, Retail !tilities in"ustries ' Top ) of # largest commercial +anks ' Top ) of ) +usiest 1T6 net"orks ' Top : of /$ financial data ser ices companies ' Top ' of # telecommunications pro iders ' Top ) of # largest food ; drug stores

'

Industr( )roof )oints


#Oracle will become more competitive in "ata inte$ration tools an" ma% enhance its hi$h&availabilit% pro"ucts b% bu%in$ 'ol"en'ate() *e" Frie"man, 'artner

<*his is a critical re+uirement to enable hi$h volume "ata e,traction to support real&time "ata warehousin$ an" -., as well as master "ata mana$ement an" other operational use cases() Rob /arel, Forrester0

#.t1s +uite a catch 2or Oracle in that it1s a si$ni2icant a""ition to its "ata warehousin$ an" -. port2olio() 3ames /obielus, Forrester

Customers *emand Continuous +eal ,ime *ata


4hile -o"ering IT Costs and Gaining Operational *fficiencies

!eal4Time .usiness Operations


Continuous 1 aila+ility of Critical 1pplications and 9ata
' Continuous Uptime in event of disaster ' .o downtime during planned outage ' "oad #alancing & *ata distri#ution

!eal4Time Information 1ccess for Intelligence ; 9ecisioning


' Instantl( availa#le *ata for +eporting ' Access to -e( Information for Anal(sis ' Across eterogeneous &(stems

-o"er IT Spend ; Impro e *fficiencies


' Choose #est s(stem for need ' /oderni0e "egac( &(stems ' Offload for reporting

Oracle $olden$ate
The Solution for *nterprise4"ide !eal Time 9ata =eeds

5atabase an" applications, 6i,e" sources, "istribute" s%stems, le$ac%, O7*P, O78P

!eal4time information

6ission Critical 8pplications 5ata, -usiness .ntelli$ence, Reportin$ 2or Customers, Partners 9mplo%ees

!eal4time 1ccess Oracle 'ol"en'ate "elivers real&time access o2 real&time in2ormation, enablin$ companies to "ramaticall% improve the availabilit%, reliabilit%, an" per2ormance o2 critical "ata across enterprise s%stems(

Oracle )roducts for *ata /ovement


Comparing Ho" They Work

9isaster !eco ery ; 9ata Protection !edo in 6emory .uffer


9irect 6emory 1ccess

1cti e 9ata Guard

9irect Write to -ogs

H*T*!OG*=*OAS

!eal Time 9ata Integration ; High 1 aila+ility


!ead On49isk -ogs

GoldenGate

?ast S@-

9ata Integration for 9ata Warehouse ; SO1

S@- @uery

9ata Integrator

Set4+ased, Comple5 S@-

>

Complementar( and Used ,ogether


1cti e 9ata Guard and GoldenGate

Heterogeneous 9istri+uted Oracle Su+set GoldenGate !eplicas Oracle 9. Primary

Oracle 1cti e 9ata Guard

Oracle 9. Stand+y

9ata 9istri+ution 8 SynchroniCation


' *nterprise4"ide heterogeneous replication ' 7ero do"ntime operations ' =on4in asi e +y reading data+ase logs ' Supports acti e4acti e scenarios ' *nsures transactional consistency ' High olumeB lo" latency ' Guaranteed deli ery across "ide area net"orks Oracle GoldenGate

9isaster !eco ery ; 9ata Protection


' ?ast failo er to physical stand+y data+ase ' ?astest solution for Oracle ' Oracle 9ata+ase only ' 1llo"s stand+y to +e open for reads to le erage customer in estment ' Transparent data protection to repair corrupted +locks on primary or stand+y

Oracle 1cti e 9ata Guard

Complementar( and Used ,ogether


1cti e 9ata Guard and GoldenGate
Central Hub 8ctive 5ata 'uar" Ph%sical Stan"b%

'ol"en'ate *ar$ets 'ol"en'ate Source *ar$et

*5ample of ho" a glo+al hu+ ; spoke manufacturing operation may +e deployed using +oth 1cti e 9ata Guard and GoldenGate

'ol"en'ate Source *ar$et

'ol"en'ate *ar$et

/$

Complementar( and Used ,ogether


9ata Integrator *nterprise *dition and GoldenGate
Oracle 9ata Integrator *nterprise *dition

Oracle GoldenGate

*4-T Transformation
Heterogeneous Targets

!eal4time 9ata
Heterogeneous Sources

!eal4Time 9ata Integration and !eplication


' ' ' ' 1astest real!time solution &u#!second latenc( for real!time feeds $uarantee deliver( eliminates data loss %liminates down!time for migration and upgrades ' "east intrusive to source s(stems ' "everage %",/%," for complex transformation

.ulk 9ata 6o ement and Transformation


' $UI design environment for %," developers ' 1astest %!", &olution ' Optimi0ed &%,!#ased transformation for high volume transformations ' *ata lineage for improved managea#ilit( ' Integrates to *ata 2ualit(

Oracle GoldenGate

Oracle 9ata Integrator *nterprise *dition

//

Oracle +eal ,ime *ata Integration


OracleDs Ani2ue Offering for !eal Time .usiness Intelligence
Oracle GoldenGate ' +eal time extracts from
Source / *6P 9*PT

Oracle 9ata Integrator ** ' igh )erformance 3%!",4 on


target data warehouse
' )eriodic mini!#atches 567 min8 ' ,ransform in the *ata#ase ' .ever go #ack to sources

transactional s(stems
' .on!invasive on sources

' Continuous streaming load into


O*& &chema of target
' "atenc( in seconds

Oracle 9ata Integrator

On49isk -ogs

Oracle GoldenGate

Source 3 *6P 9*PT

9I6 ?1CT

9I6

Oracle GoldenGate
On49isk -ogs

*6P

9*PT

9I6

9I6

O9S Schema

9W Schema

/3

+eal!time Business *elivers Value & +OI


0$E reduced reco ery time for mission4critical transactional application WorldDs .usiest 1T6 =et"ork !emains Continuously 1 aila+le

Bank of America

VocaLINK

Processing > / .illion Transactions each year, and Cero outages

/$$E paperless en ironment dri es efficiency and impro es patient care across hospital
Montefiore

Swedbank

/$$E a aila+ility during phased upgrade for 3'5: critical C!6 application
HSN

FG producti ity gains in manufacturing plant "ith real4 time data


AMD

Oracle $olden$ate Advantages


6o ement 6anagement Integration

Speed H Su+second -atency Iolume H Thousands of TPS -og4+ased Capture =ati e, -ocal 1pply *fficient IO and .and"idth Asage .idirectional Group Transactions .ulk Operations Compression One4to46any, 6any4to4One Cascade

Transaction Integrity Transparent Capture Guaranteed 9eli ery Conflict 9etection, !esolution 9ynamic !oll+ack Incremental T96 Initial 9ata -oad GAI4+ased 6onitoring and Configuration Proacti e 1lerts *ncryption !eal4Time 9eferred or .atch * ent 6arkers

Heterogeneous 9ata Sources 6apping Transformation *nrichment 9ecoupled 1rchitecture Ta+le, !o", Column ?iltering G6-, 1SCII, S@?ormats @ueue Interface Stored Procedures Aser *5its *T- Integration Ja a8J6S Integration

Oracle $olden$ate9 *ata#ases and )latforms


9ata+ases O8S and Platforms

Capture9 Oracle IB/ *B: /icrosoft &2" &erver &(#ase A&% Ingres ,eradata %nscri#e &2"//) &2"//; *eliver(9 All listed a#ove /(&2"< ) .eoview< .ete00a An( O*BC compati#le data#ases %," products =/& message >ueues or topics

?indows :@@@< :@@A< ;) "inux &un &olaris ) .on&top )!U; ) ,+UBC ) OpenV/& IB/ AI; IB/ 0/O& IB/ O&/AD@ IB/ O&/C@@

Oracle $olden$ate ,echnolog( *ifferentiators


Oracle GoldenGate provides low-impact capture, routing, transformation, and delivery of database transactions across heterogeneous environments in realtime Key 9ifferentiatorsL
Performance =on4intrusi e, -o" Impact, Su+4second latency Open, modular architecture 4 Heterogeneous sources ; Targets 6aintains Transactional Integrity 4 !esilient against interruptions and failures

*5tensi+le ; ?le5i+le

!elia+le

16

/F

Agenda
Introduction Use Cases Break / VirtualBox Installation & Import Architecture Configuration Overview ands!on "a#s

Oracle $olden$ate Use Cases %nterprise!wide &olution for +eal ,ime *ata .eeds
' &tandardi0e on &ingle ,echnolog( for /ultiple .eeds ' *eplo( for Continuous Availa#ilit( and +eal!time *ata Access for +eporting / BI

9isaster !eco ery, 9ata Protection Stand+y

MOpen ; 1cti eN

7ero 9o"ntime 6igration and Apgrades


7o$ -ase", Real& *ime Chan$e 5ata Capture

Operational !eporting

OGG

!eporting 9ata+ase

*TO9S *T*9W

Heterogeneous Source Systems

!eal4time .I

*9W

@uery Offloading

' ighl( 1lexi#le ' 1ast *eplo(ments ' "ower ,CO & Improved +OI

9ata 9istri+ution

-e( )la(s for Oracle $olden$ate

/0

2uer( Offloading Use Case


9ata+ase TieringL Sa e 6illions and 9ri e !e enue
Business Challenges9 %nsure continuous availa#ilit( of Air ,ravel &hopping %ngine 5A,&%8 throughout upgrades and migrations Optimi0e s(stem performance to handle growth and scale< while reducing ,CO via platform changes "ow latenc( data movement #etween O",) 5E#ookersF8 and search data#ase 5ElookersF8 $olden$ate &olutions9 Gero *ata#ase *owntime during hardware and data#ase migration for A,&% *ata#ase ,iering insures high availa#ilit(< top performance and lower costs +eal!,ime *ata Integration for ElookersF >uer( activit( on lower cost platform +esults9 H@I ,CO reduction J millions of dollars in savings igher customer satisfaction ! improved response times and availa#ilit(

9ata+ase Tiering *na+les Top Performance, Anlimited Scala+ility


8ir *ravel Shoppin$ Sche"ule 8vailabilit% Chan$es 8ccounts -illin$

Oracle 9ata+ases

Sche"ule 8vailabilit% !p"ates

Fare

Rule !p"ates

GoldenGate Transaction Apdates Ap to >$$,$$$ p8hour, /&F T.8day

<-ookupsO

/#F 6yS@- 9ata+ases on -inu5

GoldenGateprovided the glue to move the data across systems, evolving our overall approach in parallel with the future of online travel commerce. - James arding, !" of #ystems "lanning $ "erformance, #abre

3$

Continuous Availa#ilit( Use Case


9ata 9istri+ution ; *nterprise4Wide 9ata 6o ement
CO6P1=P OI*!II*W Head2uartered in 7urich and .asel, S"itCerland, A.S is one of the "orldQs leading financial firms& It ser es a discerning, international client +ase for "ealth management, in estment +anking and asset management& In S"itCerland, A.S is the market leader in retail and commercial +anking& Oracle P!OII9*SL ' 9ata distri+ution among internal applications ' 9ata distri+ution for read4only archi ing and reporting ' 9ata+ase High 1 aila+ility and 9isaster Tolerance ' 9ata+ase rolling upgrade8acti e migration ' Topology includes one4"ay and multi4master on Oracle instances !*SA-TS !eplaced Sy+ase !eplication Ser er product and standardiCed on GoldenGate for all data mo ement !educed costs +y eliminating mid4tier ser ers !eplicating all heterogeneous data+ases across the enterprise protects against do"ntime&

CH1--*=G*S 8 OPPO!TA=ITI*S -arge, Comple5 ; Heterogeneous en ironment for /$$ +ack office applications =umerous installations that re2uire a fle5i+le solution& MOracle, Sy+ase ; 6S S@- Ser erN for +oth production and de elopment&

3/

+eal!time *ata Integration Use Case


Operational +eporting & BI
.usiness ChallengesL Common real4time reporting functionality across 19P product suites 1+ility to do cross4product reporting Incremental re enue opportunity and impro ed customer ser ice !eporting gets mo ed off from <productionO data+ases GoldenGate SolutionL -i e !eporting for real4time data consolidation from '$% source systems into a centraliCed target 6inimal footprint and data latency 6aintains data integrity 1+ility to support data transformations and data security

<19P !eportingO R Consolidate Product -ine 9ata to Off4load !eal4Time !eporting


40+ Source S%stems in 8SP 9nvironment: HR, Pa%roll, -ene2its Pro"ucts

Oracle

Oracle

Oracle

S@Ser er

Oracle 9ata 6art

!eportingL .usiness O+Sects, Crystal

%ith GoldenGate it was boom, boom, boom & full speed ahead. - 'mit (u)her*ee, #enior +irector of ,eporting #ervices, '+"

33

+eal ,ime Business Intelligence Use Case


Active *ata ?arehouse Improves Customer &ervice Active %nterprise Intelligence
.usiness ChallengesL

)rovide up!to!second data in centrali0ed

Operational Systems 9.3 6ainframe 9.3 -AW

enterprise data warehouse for #usiness users 5customer claims processing for maMor incidents8 Integrate data from multiple operational s(stems 5*B: on 0/O& and "U?8 "everage existing %," investment to achieve near real!time data feedsL

GoldenGate SolutionL

+eal!,ime *ata ?arehousing captures NC@

million transactions per da( from heterogeneous operational sourcesL +eal!,ime C*C co!exists with Informatica %," for data re>uiring heav( transformationsL

5ual 8ctive

Customer Claims Processing MS1S .IN

!esultsL

+educed claims litigation costs #( :@I !

Teradata Warehouse

ena#led #( faster and more responsive emplo(ee intelligence on claims dataL Improved resource utili0ation efficienc( #( 7I /anagement team can now d(namicall( monitor reserve threshold to increase profita#ilit(L

*ata is not a #usiness pro#lemK It is the foundation of our a#ilit( to #e profita#le in a rapidl( changing marketplaceL - -ric "ost, +irector of +ata %arehousing, .iberty (utual

3)

Agenda

Introduction Use Cases Break / VirtualBox Installation & Import Architecture Configuration Overview ands!on "a#s

VirtualBox Installation & Import

Cop( #oth ?orkshop *V*s to a single director( on (our local harddrive *ownload and install lateset VirtualBox version from http9//virtual#oxLorg
.ote9 Virtual#ox vAL:LH for ?indows ;) is included on *V*

After Installation9
Start Iirtual.+o5 ?ile 4> Import 1ppliance Choose &o f file

Agenda

Introduction Use Cases Break / VirtualBox Installation & Import Architecture Configuration Overview ands!on "a#s

Oracle $olden$ate *ata Capture and *eliver(

Oracle $olden$ate,ransactional *ata /anagement9 )rimaril( used for change data capture and deliver( from data#ase transaction logs Can optionall( #e used for initial load directl( from data#ase ta#les %speciall( useful for s(nchroni0ing heterogeneous data#ases *ata#ase!specific methods ma( #e prefera#le for homogeneous configurations

ow It ?orks9 /odular Architecture


Capture: Committed c$an" es are captured (and can %e !i&tered) as t$e occur % readin" t$e trans action &o" s # Trai& !i&es : ' ta" es and (ueues data !or routin" # Route: Data is compres s ed, encr pted !or routin" to tar" ets # De&i)er : App&ies data *it$ trans action inte" rit , trans !ormin" t$e data as re(uired#

Capture

' ource Trai&

LAN / WAN / Internet


(TCP/IP)

Tar" et Trai&

De&i)er

Sour ce Dat abase( s)


3>

D e&i)er

Tar" et Trai&

' ource Trai&

Capture

Bi di r ect i onal

Tar get Dat abase( s)

Change *ata Capture & *eliver(

'ource Data%ase

Net*or. (TCP/IP) +,tract Transaction Lo" 'er)er Co&&ector Rep&icat

Tar"et Data%ase Trai&

-ana"er

-ana"er

Change *ata Capture & *eliver( using a *ata )ump

'ource Data%ase

Net*or. (TCP/IP) +,tract Transactio n Lo" Loca& Trai& Data Pump 'er)er Co&&ector Remote Trai& Rep&icat

Tar"et Data%ase

-ana"er

-ana"er

)repare %nvironment9 /anager ! Overview

-ana"er

)erforms s(stem management and monitoring tasks


&tarting $olden$ate &erver Collector processes &tarting *(namic &erverCollector< +eplicat or $$&CI processes %rror and lag reporting $olden$ate trail management / purging

)arameter 1ile
mgrLprm file in $$& L/dirprm director(

%vent information written to ggserrLlog file &tart with9


GGSCI> START MANAGER

Change Capture9 %xtract ! Overview


%xtract can #e configured to9

+,tract

Capture changed data from data#ase logs *istri#ute data from local trails to remote s(stems 5data pump8 Capture data directl( from source ta#les for initial data load

Configuration ,asks J Change Capture


&ource &(stem Add a primar( %xtract 5reading from source transaction logs8 with an associated parameter file Optionall(< add a local trail and a data pump %xtract 5reading from the local trail8 with an associated parameter file Add a remote trail &tart the %xtract5s8

*ata )umps ! Overview

Data Pump

*ata is stored in a local trail file on the source s(stem A second %xtract process< the *ata )ump9
+eads this trail and sends to one or more targets /anipulates the data or passes it through without change

+easons for using9


A safeguard against network or target failures ,o #reak complex filtering and transformation into phases ,o consolidate data from man( sources ,o s(nchroni0e one source with multiple targets

*ata )umps J One to /an( ,rails

Trai&

Primar +,tract

Trai&

Data Pump

Trai&

Trai&

*ata )umps J One to /an( ,arget &(stems

Data Pump 1

Trai&

Primar +,tract

Trai&

Data Pump /

Trai&

Data Pump 0

Trai&

Change *eliver(9 &erver Collector


On the ,arget &(stem9

'er)er Co&&ector

A &erver Collector process reassem#les and writes the data to a $olden$ate remote trail A +eplicat process reads this trail and applies it to the target data#ase

Change *eliver(9 +eplicat


+eplicat can9
+ead data out of $olden$ate trail files )erform *ata 1iltering ,a#le< row< operation )erform data transformation )erform data#ase operations Must as (our application performed them

Rep&icat

Change *eliver( Configuration ,asks ,arget &(stem


Create a checkpoint ta#le in the target data#ase
*B"O$I. A** C %C-)OI.,,AB"%
.est Practice

Create a parameter file for +eplicat


%*I, )A+A/&

Add (our initial +eplicat checkpoint into $olden$ate trails


A** +%)"ICA,

&tart the +eplicat process


&,A+, +%)"ICA,

)0

%xtract ,rails and 1iles ! Overview


%xtract writes data to an( of9
+emote trail 5+/,,+AI"8 +emote file 5+/,1I"%8 "ocal trail 5%;,,+AI"8 "ocal file 5%;,1I"%8

%xtract trails and files are unstructured< with varia#le length records
I/O performed using large #lock writes

%xtract writes checkpoints for trails during change capture9


$uarantees no data lost during restart /ultiple +eplicat processes ma( process the same trail

%xtract does not write checkpoints for files

'$

%xtract ,rails and 1iles ! *istri#ution


%xtract can write
,o local trails< then distri#ute over I) with a *ata )ump to remote trails ,o multiple trails 1or distri#ution to multiple s(stems/disk storage devices 1or parallel processing #( downstream processes

,rails and files can #e transported online using ,C)/I) or sent in #atch using an( file transfer method

'/

%xtract ,rails and 1iles ! Contents


%ach record in the trail contains an operation that has #een committed in the source data#ase ,ransactions are output in commit order Operations in the transaction are grouped together< in the order the( were applied
B( default< onl( the primar( ke( and changed columns are recorded

1lags indicate the first and last records in each transaction

'3

%xtract ,rails and 1iles ! Cleanup

,rail files can #e purged once consumed


,emporar( storage re>uirement is small if processes keep pace .est Configure /anager to purge used trail data
Practice

,rails ! $olden$ate *ata 1ormat


B( default< trails are formatted in the $olden$ate *ata 1ormat %ach ,rail file has a trail file header and trail records eader Info9 Compati#ilit( "evel
Identifies the trail file format #( $olden$ate version num#ers Allows customers to use different versions of $olden$ate %xtract< trail files< and +eplicat together

*ata 1ormat9 Commit &e>uence .um#er 5C&.8


Identifies the se>uence in which transactions were committed *ata#ase platform independent /ore efficient than using heterogeneous data#ase!supplied transaction num#ers

''

Viewing ,rail 1ile Contents J "ogdump utilit(


,he "ogdump utilit( allows (ou to
*ispla( or search for information that is stored in $olden$ate trail files &ave a portion of a $olden$ate trail to a separate trail file

&tart "ogdump from $olden$ate installation director( using logdump command "ogdump is documented in the Oracle $olden$ate ,rou#leshooting and ,uning $uide %xample9
Logdump> open dirdat/rt00000

Initial "oad
'ource Data%ase Ta%&es +,tract Net*or. (TCP/IP) Rep&icat 2r D3 3u&. Load 4ti&it Tar"et Data%ase

'er)er Co&&ector

1i&es

-ana"er

-ana"er

$olden$ate initial load methods9


*irect "oad ! %xtract sends data directl( to +eplicat to appl( concurrentl( using &2" *irect Bulk "oad 5Oracle8 ! +eplicat uses Oracle &2"O"oader A)I to improve performance 1ile to +eplicat 5%xtract writes to a file that +eplicat applies using &2"8 1ile to data#ase utilit( 5%xtract writes to a file formatted for a *B #ulk load utilit(8

Initial "oad9 *irect "oad

6anager Source 9ata+ase *5tract

6anager Target 9ata+ase !eplicat

199 *GT!1CT <name>, SOA!C*IST1.-* *5tract parametersL !6TT1SK !*P-IC1T, G!OAP <name>

199 !*P-IC1T <name>, SP*CI1-!A=

Initial "oad9 *irect Bulk "oad 5to Oracle8

6anager Source 9ata+ase Source 9ata+ase *5tract

6anager Oracle Target !eplicat S@-T-oader 1PI

199 *GT!1CT <name>, SOA!C*IST1.-* *5tract parametersL !6TT1SK !*P-IC1T, G!OAP <name>

199 !*P-IC1T <name>, SP*CI1-!A= !eplicat parametersL .A-K-O19

Initial "oad9 1ile to +eplicat

6anager Source 9ata+ase *5tract ?iles !eplicat Target 9ata+ase

199 *GT!1CT <name> *5tract parametersL SOA!C*IST1.-* !6TT!1I-<name>

Initial "oad9 1ile to *ata#ase Utilit(


S@-T -oader Target 9ata+ase .CP

6anager Source 9ata+ase *5tract

?ile

?ile

?ile SSIS

199 *GT!1CT <name> *5tract parametersL SOA!C*IST1.-* !6T?I-* <name> ?O!61T1SCII .CP or S@--O19*!

Online versus Batch "oad


Change data capture & deliver( can #e run either continuousl( 5online8 or as a special run 5#atch run8 to capture changes for a specific period of timeL Initial load is alwa(s a special run 5#atch run8L

Checkpointing
Capture< )ump< and *eliver( save positions to a checkpoint file so the( can recover in case of failure
.egin, TG / Insert, TG / .egin, TG 3 Apdate, TG / Insert, TG 3 Commit, TG 3 .egin, TG ) Insert, TG ) .egin, TG ' Commit, TG ) 9elete, TG ' .egin, TG 3 Insert, TG 3 Commit, TG 3 .egin, TG ) Insert, TG ) Commit, TG )

Start of Oldest Open MAncommittedN Transaction

Capture Checkpoint

Current Write Position Current !ead Position

Source 9ata+ase

Capture

Commit Ordered Source Trail

Checkpointing
Capture< )ump< and *eliver( save positions to a checkpoint file so the( can recover in case of failure
.egin, TG / Insert, TG / .egin, TG 3 Apdate, TG / Insert, TG 3 Commit, TG 3 .egin, TG ) Insert, TG ) .egin, TG ' Commit, TG ) 9elete, TG ' .egin, TG 3 Insert, TG 3 Commit, TG 3 .egin, TG ) Insert, TG ) Commit, TG )

Start of Oldest Open MAncommittedN Transaction Pump Checkpoint

.egin, TG 3 Insert, TG 3 Commit, TG 3

Capture Checkpoint

Current !ead Position

Current Write Position

Current Write Position Current !ead Position

Source 9ata+ase

Capture

Commit Ordered Source Trail

Pump

Commit Ordered Target Trail

Checkpointing
Capture< )ump< and *eliver( save positions to a checkpoint file so the( can recover in case of failure
.egin, TG / Insert, TG / .egin, TG 3 Apdate, TG / Insert, TG 3 Commit, TG 3 .egin, TG ) Insert, TG ) .egin, TG ' Commit, TG ) 9elete, TG ' .egin, TG 3 Insert, TG 3 Commit, TG 3 .egin, TG ) Insert, TG ) Commit, TG )

Start of Oldest Open MAncommittedN Transaction Pump Checkpoint 9eli ery Checkpoint

.egin, TG 3 Insert, TG 3 Commit, TG 3

Capture Checkpoint

Current !ead Position

Current Write Position

Current !ead Position

Current Write Position Current !ead Position

Source 9ata+ase

Capture

Commit Ordered Source Trail

Pump

Commit Ordered Target Trail

9eli ery

Target 9ata+ase

Agenda
Introduction Use Cases Break / VirtualBox Installation & Import Architecture Configuration Overview ands!on "a#s

Configuring Oracle $olden$ate

'ource Data%ase

1# Prepare t$e +n)ironment (Insta&& 2rac&e 5o&den5ate, +na%&e Transaction Lo""in")

0# Per!orm Initia& Load ()arious met$ods)

Tar"et Data%ase

Transaction Lo" -ocal Trail 9ata Pump !emote Trail

*5tract

Rep&icat 6# Con!i"ure 7 'tart C$an"e De&i)er

3& Configure ; Start Change Capture

)repare the %nvironment


&et up each s(stem9 Install Oracle $olden$ate software on source and target Configure and start $olden$ate /anager on source and target If heterogeneous source/target< generate source definitions and cop( to target )repare the data#ase
%nsure data#ase access #( $olden$ate %na#le transaction logging

$olden$ate Installation
Access the /edia )ack

Access the product media pack 5software and documentation8 at http9//edeliver(LoracleLcom &elect )roduct )ack9 Oracle 1usion /iddleware Identif( the proper release of $olden$ate for (our source and target environments9
Operating s(stem and version *ata#ase and version

$olden$ate Installation
$olden$ate *irectories
*irector( dirchk dirdat dirdef dirpcs dirprm dirrpt dirs>l dirtmp Contents $olden$ate checkpoint files $olden$ate trail and extract files *ata definitions produced #( *%1$%. and used to translate heterogeneous data )rocess status files )arameter files )rocess report files &2" scripts ,emporar( storage for transactions that exceed allocated memor(

$olden$ate Configuration
)arameters< )rocess $roups and Commands
$olden$ate processes are configured #( A&CII parameter filesL A process group consists of9 An %xtract or +eplicat process Associated parameter file Associated checkpoint file An( other files associated with that process %ach process group on a s(stem must have a uni>ue group nameL )rocesses are added and started using the $olden$ate &oftware Command Interface 5$$&CI8 with the group nameL $$&CI commands also add trails< check process status< etcL

$olden$ate Configuration
$$&CI %xamples
&tart a /anager process
GGSCI> START MGR

Add an %xtract group


GGSCI> ADD EXTRACT myext TRANL!G "EGIN N!#

Add a local trail


GGSCI> ADD EXTTRAIL /gg$/dirdat/rt EXTRACT myext

&tart an %xtract group


GGSCI> START EXTRACT myext Use OB%P command to run text command files9 GGSCI> !"E% $tartmgr&o'y

$olden$ate Configuration
$"OBA"& versus )rocess )arameters $"OBA"& parameters appl( to all processes
&et when /anager starts +eside in Q$olden$ate install director(R/$"OBA"&

)rocess parameters appl( to a specific process 5/anager< %xtract< &erver Collector< +eplicat< Utilities8
&et when the process starts Override $"OBA"& settings +eside #( default in the dirprm director( in files named QprocessnameRLprm /ost appl( to all ta#les processed #ut some can #e specified at the ta#le level

$olden$ate Configuration
%diting )arameter 1iles
%dit parameter files to configure $olden$ate processes ,he $"OBA"& parameter file is identified #( its file path
GGSCI> EDIT (ARAMS &/GL!"ALS

/anager and utilit( parameter files are identified #( ke(words


GGSCI> EDIT (ARAMS MGR GGSCI> EDIT (ARAMS DE)GEN

%xtract and +eplicat parameter files are identified #( the process group name
GGSCI> EDIT (ARAMS *group name>

$olden$ate Configuration
1unctions ! *ata ,ransformation $olden$ate provides the capa#ilit( to transform columns #( using a set of #uilt!in functions ,ransformation functions can #e applied for either %xtract or +eplicat If (ou re>uire more complex functions< (ou also have the a#ilit( to call (our own logic through user exits

$olden$ate Configuration
1unctions ! *ata ,ransformation Using column conversion functions (ou can9
)erform string and num#er conversions %xtract portions of strings or concatenate columns Compare strings or num#ers )erform a variet( of date mappings Use single or nested I1 statements to evaluate num#ers< strings< and other column values to determine the appropriate value and format of target columns

1unctions are identified with the S prefix

$olden$ate Configuration
&ource *efinition Configuration
Problem J Understanding source and target la(outs across disparate s(stems and data#ases Solution J the *%1$%. utilit( program
*%1$%. produces a file containing la(out definitions of the source files and ta#les ,his source definition file is used to interpret la(outs for data stored in $olden$ate trails At start up +eplicat reads the definition file specified with the &OU+C%*%1& parameter &erver Collector uses the Jd argument to specif( which definition file to read at startup

Can also capture target definitions on target s(stem and cop( to source s(stem for %xtract to use

Agenda
Introduction Use Cases Break / VirtualBox Installation & Import Architecture Configuration Overview ands!on "a#s

-a+ *5ercise /L Getting Started Setup en ironment and data+ase schemas

"a# 69 $etting &tarted


6yS@6yS@- OS -oginL mys2l 8 oracle GG OS -oginL mygg 8 oracle GG HomeL 8u$/8mys2lgg 6yS@Source 9ata+aseL 6P.1=K
Ta+le 1CCOA=T 1CCOA=TUT!1=S .!1=CH .!1=CHU1T6 !o"s /F$$ V/#$$$ '$ VF$/3 >$$ VF$'3

Oracle Oracle OS -oginL oracle 8 oracle GG OS -oginL orgg 8 oracle GG HomeL 8u$/8oraclegg Oracle Target SchemaL orgg
Ta+le 1CCOA=T 1CCOA=TUT!1=S .!1=CH .!1=CHU1T6 T*--*! T*--*!UT!1=S !o"s $ $ $ $ $ $

Transaction Lo"

T*--*! T*--*!UT!1=S

Redo Lo"

-a+ *5ercise 3L Installing and Configuring Oracle GoldenGate Soft"are

"a# :9 $olden$ate Install & Configuration


6yS@6yS@- OS -oginL mys2l 8 oracle GG OS -oginL mygg 8 oracle GG HomeL 8u$/8mys2lgg GG 9. -oginL mygg8mygg 8u$/8mys2lgg 6yS@Source
8dirchk 8dirdat 8dirdef 8dirpcs 8dirprm 8dirrpt 8dirs2l 8dirtmp
!o"s /F$$ V/#$$$ .!1=CH .!1=CH .!1=CHU1T6 '$ VF$/3 >$$ VF$'3 $ GGSUCH*CKPO=T $ .!1=CHU1T6 T*--*! $ $ $ $

Oracle Oracle OS -oginL oracle 8 oracle GG OS -oginL orgg 8 oracle GG HomeL 8u$/8oraclegg GG 9. -oginL orgg8orgg 8u$/8oraclegg
8dirchk 8dirdat 8dirdef 8dirpcs 8dirprm 8dirrpt 8dirs2l 8dirtmp SchemaL orgg
Ta+le 1CCOA=T 1CCOA=TUT!1=S !o"s $ $

Oracle Target

9ata+aseL 6P.1=K
Ta+le 1CCOA=T 1CCOA=TUT!1=S

Transaction Lo"

T*--*! T*--*!UT!1=S GGSUCH*CKPOI=T

T*--*!UT!1=S

Redo Lo"

-a+ *5ercise )L Setting up the Initial -oad Process M6yS@- to OracleN

"a# A9 Initial "oad & Change Capture


6yS@6yS@- OS -oginL mys2l 8 oracle GG OS -oginL mygg 8 oracle GG HomeL 8u$/8mys2lgg GG 9. -oginL mygg8mygg Oracle Oracle OS -oginL oracle 8 oracle GG OS -oginL orgg 8 oracle GG HomeL 8u$/8oraclegg GG 9. -oginL orgg8orgg

+,tract +L2AD

/& Initial -oad M arious methodsN

Rep&icat RL2AD

2rac&e Tar"et

+,tract +-A'TR

Data Pump P-A'TR

'er)er Co&&ector Remote Trai&

Rep&icat R-A'TR

Transaction Lo"

Loca& Trai&

3& Change Capture


-ana"er -5R

)& Change 9eli ery


-ana"er -5R

!edo -og

-a+ *5ercise 'L Setting up One4"ay !eplication M6yS@- to OracleN

"a# C9 One!?a( +eplication


6yS@6yS@- OS -oginL mys2l 8 oracle GG OS -oginL mygg 8 oracle GG HomeL 8u$/8mys2lgg GG 9. -oginL mygg8mygg
- '8L 'ource 2rac&e Tar"et
'er)er Co&&ector Rep&icat R-A'TR

Oracle Oracle OS -oginL oracle 8 oracle GG OS -oginL orgg 8 oracle GG HomeL 8u$/8oraclegg GG 9. -oginL orgg8orgg

+,tract +-A'TR

Data Pump P-A'TR

Transaction Lo"

Loca& Trai&

Remote Trai&

!edo -og

-ana"er -5R

-ana"er -5R

-a+ *5ercise #L Setup .i4directional !eplication

"a# 79 Bi!*irectional +eplication


6yS@6yS@- OS -oginL mys2l 8 oracle GG OS -oginL mygg 8 oracle GG HomeL 8u$/8mys2lgg GG 9. -oginL mygg8mygg Oracle Oracle OS -oginL oracle 8 oracle GG OS -oginL orgg 8 oracle GG HomeL 8u$/8oraclegg GG 9. -oginL orgg8orgg

6yS@9ata+ase

!eplicat M6P!TN

!emote Trail

9ata Pump MO!9PN

-ocal Trail

Transaction -og
*5tract MO!GTN

Transaction -og
-ocal Trail 9ata Pump M6P9PN !emote Trail

Oracle 9ata+ase
!eplicat MO!!TN

*5tract M6PGTN

-a+ *5ercise FL -e eraging Oracle GoldenGate Transformations

"a# B9 ,ransformations
6yS@6yS@- OS -oginL mys2l 8 oracle GG OS -oginL mygg 8 oracle GG HomeL 8u$/8mys2lgg GG 9. -oginL mygg8mygg
WG*T*=I M<GGH*19*!O, <CO66ITTI6*ST16PON

Oracle Oracle OS -oginL oracle 8 oracle GG OS -oginL orgg 8 oracle GG HomeL 8u$/8oraclegg GG 9. -oginL orgg8orgg O!GG&1CCOA=TU.1-UHISTO!P ' 1CCOA=TU=A6.*!
' T!1=SUTS ' 1CCOA=TU.1-1=C*

6P.1=K&1CCOA=T ' 1CCOA=TU=A6.*!


' 1CCOA=TU.1-1=C*

6P.1=K&1CCOA=TUT!1=S ' 1CCOA=TU=A6.*!


' T!1=SU=A6.*! ' 1CCOA=TUT!1=SUTS ' 1CCOA=TUT!1=SUTPP* ' 1CCOA=TUT!1=SU-OC ' 1CCOA=TUT!1=SU16T

O!GG&1CCOA=TUT!1=SUHISTO!P ' 1CCOA=TU=A6.*!


' T!1=SU=A6.*! ' T!1=SUTS ' T!1=SUTPP* ' T!1=SU-OC ' T!1=SU16T

-a+ *5ercise :L -e eraging Oracle GoldenGate ?iltering

"a# T9 1iltering
6yS@6yS@- OS -oginL mys2l 8 oracle GG OS -oginL mygg 8 oracle GG HomeL 8u$/8mys2lgg GG 9. -oginL mygg8mygg Oracle Oracle OS -oginL oracle 8 oracle GG OS -oginL orgg 8 oracle GG HomeL 8u$/8oraclegg GG 9. -oginL orgg8orgg

6P.1=K&1CCOA=T ' 1CCOA=TU=A6.*!


' 1CCOA=TU.1-1=C*

O!GG&OI*!9!1?T HISTO!P ' 1CCOA=TU=A6.*!


' T!1=SUTS

<$

' 1CCOA=TU.1-1=C*