Oracle FAQ Your Portal to the Oracle Knowledge Grid

Home -> Community -> Mailing Lists -> Oracle-L -> RE: Oracle Streams vs Advanced Replication

RE: Oracle Streams vs Advanced Replication

From: Marquez, Chris <>
Date: Fri, 20 May 2005 18:39:22 -0400
Message-ID: <B30C2483766F9342B6AEF108833CC84E0450BB94@ecogenemld50.Org.Collegeboard.local>

"Data/Transaction Replication" in even a modest complex environment can be a nightmare.
"Data/Transaction Replication" works best in system with few internal constraints/dependencies and external programs.

Pushing the same 300 inserts into two databases in two like tables is simple.

But have one database send 150 inserts to one db, while the other db 150 inserts the other way and the both later do updates, on all the data, while all using internal or external triggers, while pulling form individual sequences, and maintaining data validity/consistency, all done Asynchronously is where the idea of "Data Replication" "falls down". I'm not just talking Oracle constraints and triggers...I mean other dependent transactional programs/validation and the middle tier too.

Oracle Advanced "Data/Transaction" Replication is can work very well...I have used it...used if for Fialover too. I hear that Quests SharPlex "Data/Transaction" can work well to.

The problem is that most systems are built and run serially. When we have a "final" result data set and try to "push it" through a like serially system we must un-do or halt many of the serial process that normally would effect that (now complete) transaction...this becomes a head ache and why so few are ever able to us "Data/Transaction Replication" as a Disaster Recovery option. The ofther major issue is "Asynchronously Bi-directional Replication". Even in very simple system with NO dependences/constraints/triggers we still need to maintain data duplicate transactions/data. "(Data) Conflict Resolution" rules/plans is a painful idea in itself. The final issue is *change*...we tried 100% replication on db for two years and never got there. The db/schema changed so much and so often that we were always un-doing and re-doing the replication...a good idea that was not practical it implement and maintain. So how well "Data/Transaction Replication" works fo  r your system depends on how much manipulation, constraints, dependences, and consistency your data/transaction will/must incur through the serial process.

Also, "Data/Transaction Replication" is administratively intense for both day to day data issues and application upgrades and often doesn't support rolling upgrades.

Not to turn you off to "Data/Transaction Replication", but few see the hurdles until they are knee deep into it. The simpler, static, Uni-directional the system, the better chance you have with successful "Data/Transaction Replication".

Performance and Overhead of Replication is a concern but can a the admin stuff that is a killer.


Chris Marquez
Oracle DBA

-----Original Message-----
From: on behalf of David Turner Sent: Fri 5/20/2005 5:45 PM
Subject: Oracle Streams vs Advanced Replication  

I'm working on a project that will use Oracle with some type of replication, either at the application layer, using advanced rep, or Oracle Streams.

I've heard Advanaced Rep is resource intensive and often slow to propagate changes at high volumes of transactions. Is there anyone out there using Oracle Streams in a production environment with transaction rates approaching 300 inserts a second?

If so, what are do you like about Streams and what problems have you encountered using Streams?

I've also heard about people replicating using advanced queues and their own home grown utilties. If you're happy with what you're doing I'd like to hear about it.

I kind of feel like Oracle falls down on replication and would like to be proven wrong.

Thx, Dave                 

Do you Yahoo!?
Yahoo! Mail - Helps protect you from nasty viruses.

Received on Fri May 20 2005 - 18:48:27 CDT

Original text of this message