Oracle FAQ Your Portal to the Oracle Knowledge Grid
HOME | ASK QUESTION | ADD INFO | SEARCH | E-MAIL US
 

Home -> Community -> Usenet -> c.d.o.misc -> Re: Is Replication Data Ownership a joke?

Re: Is Replication Data Ownership a joke?

From: Thomas J. Kyte <tkyte_at_us.oracle.com>
Date: 1996/12/05
Message-ID: <32a63a11.1591498@dcsun4>#1/1

On Wed, 04 Dec 1996 16:12:04 -0500, Bob Yeh <ryeh_at_juno.com> wrote:

>Hi,
>
>Oracle Replication document keep mentioning the Dynamic Ownership and
>Shared Ownership of replicated data. But it does NOT do anything for
>you. You still have to code your application to stop or allow the user
>to update the data. Is there anyone share the same thought out there?
>
>Bob

Using the advanced update anywhere replication, you introduce the potential for an update conflict (same row gets updated in two places at the same time by two different people). Dynamic Ownership and Shared Ownership are two methodoligies you can use in such an environment (methodology, algorithm, method; not code).

Dynamic Ownership is a methodology by which you allow a row to be updated on multiple nodes BUT only one node at any given point in time may update the row. One site 'owns' the row, at some point in time, some other site 'owns' the row. Yes, you implement the ownership mechanism (what determines who owns a row; does an entire site and all of its users own the row, does a group of users at that site own the row, does one person at that site own the row). Since there are literally hundreds of variations on Dynamic Ownership, Oracle can't "implement" it for you. We don't know how/what it is you want to do.

Shared Ownership is a methodology by which you allow a row to be updated on multiple nodes and MORE THAN one node may update it at any point in time. This introduces update conflict for which we supply the code to automatically detect. Once detected, you have to tell us how to deal with it. 5 or so generic routines are given to you if you want to use them (last updated, site priority, etc); or you may develop your own.

There also exists vertical and horizontal partitioning (eg: dept 10 can be updated here, dept 20 over there is an example of horizontal partitioning, OR the (ename, empno, addr) fields are maintained at site 1, the (sal, bonus, comm) fields are maintained at site 2, site 3 creates the records is an example of vertical partitioning).

Dynamic Ownership and vertical/horizontal partitioning take advantage of update anywhere (as the row may be updated on different nodes over time) but they explicitly avoid update conflict.

Shared Ownership takes advantage of update anywhere and the update conflict detection/resolution routines. The row can be updated anywhere and in many places at a time.

These concepts (dynamic/shared ownership) are implementation paths you may follow. Think about it the way you would the examples we use in the application developers guide. They discuss various ways to implement an application but they don't actually do it for you.

Thomas Kyte
Oracle Government
tkyte_at_us.oracle.com                          

http://govt.us.oracle.com


statements and opinions are mine and do not necessarily reflect the opinions of Oracle Corporation Received on Thu Dec 05 1996 - 00:00:00 CST

Original text of this message

HOME | ASK QUESTION | ADD INFO | SEARCH | E-MAIL US