Re: Oracle vs Informix comparison
Posted in 1996
On Sat, 7 Dec 1996 10:35:27 +0000, David Williams <djw@smooth1.demon.co.uk> wrote: >In article <589udr$mgk@svna0001.clipper.ssb.com>, Stephen A Tahmosh ><tahmossx@itd.ssb.com> writes >>Why is replication off of the logs automatically better than that provided via >>stored procedures and triggers? >>All data (almost) is logged - not all data is replicated (usually). >>Triggers/Stored Procedures can be defined only on objects which need >>replication. >> > > With stored procedures replication happens as follows. > Actually what really happens is: 1. Application updates one table. 2. Trigger fires to record the fact that some replication will need to be done. 3. Application commits and end user happily continues work. At some point in time after the application commits, the system will pick up the changes, transmit the transaction (not individual statements but the whole transaction) to other sites to be replayed. The end user is not waiting for this to happen, the 2pc is used by the system to ensure a transaction gets sent to a remote site at least once and at most once. the 2pc is never used by the client application in this scenario. the 2pc is used to gaurantee the data gets propagated correctly. Oracle's replication works with disconnected (no network available) users as well as connected users. If the following, wrong, timeline where accurate, disconnected users could never update information. what you have described is syncronous replication. While Oracle supports that if you want, our replication uses asyncronous replication techniques. You have to go out of your way to do syncronous replication. > Application updates one table. > Triggers fires > Procedure fires > Procdures sends update to remote site > Remote site performs update > Remote site replys update ok. > ... > Application commits. > Commit send to remote site (2 phase commit protocal followed). > > Application continues. > > > I.e. 6 steps per table update (including 2 x network messages). > several steps for the commit (2phase commit). > + transaction logging. > > With logical log replication the 6 steps per update do not happen > and neither does to two phase commit. Instead the transaction logging > is sent across the network. This can contain the whole transaction > in less network messages (since >1 update can be put in one message). with stored procedure based replication, 6 steps per update do not happen either. neither does the 2pc. With stored procedure based replication, >1 update (in fact the entire transaction) is transmitted in one call to be replayed in it's entirity at the other site. > Also the application can update and data replication replicate but > they do not have to happen in sync. Only when a commit/checkpoint > occurs do they have to sync. same here. > > > > >-- >David Williams Thomas Kyte Oracle Government http://govt.us.oracle.com -------------------==== Posted via Deja News ====----------------------- http://www.dejanews.com/ Search, Read, Post to Usenet