分散式資料庫如何控制資料重複 ?

tolywang發表於2010-06-24
Oracle 10.2.0.4   ,  Linux AS 5.3   

一個城市中兩個地點都設定有生產系統, 兩個地方生產的半成品需要出貨給同一個廠商, 上游的供應商(自己打條碼)分別是兩個
不同的公司, 曾經出現過提供的零件上的條碼重複的現象, A,B 兩個生產地的資料庫是獨立的, 所以不知道如何控制兩個庫
中的重複現象 。  

雖然有措施讓上游供應商控制他們彼此之間的條碼,不要重複,但是畢竟是別人,我們需要兩個生產地出貨到下一個廠商之前自己
就能檢查到兩地生產的產品條碼是否有重複(最好在生產過程中就發現,因為生產過程中才會掃描條碼) , 以免遭到投訴 。  

目前想到的只有兩種方式:

1.   由於兩個生產地在同一個城市,且有專線連線,速度也可以,那麼可以透過A,B 兩地的庫相互建立dblink,  分別check 兩邊
      庫中的生產表即可, 這樣就需要既check 本地的表, 也check 遠端庫的表, 速度會有一定的犧牲 。

2.   在A, B 兩地的庫建立物化檢視進行兩個掃描條碼錶的同步,以便在本地check 兩個表即可,這種方式由於還是有一定的時間
      差異,所以有可能兩邊同時插入同一個重複條碼的時候,也是check不出來的 。


是否還有其他更好的方式  ?

來自 “ ITPUB部落格 ” ,連結:http://blog.itpub.net/35489/viewspace-666114/,如需轉載,請註明出處,否則將追究法律責任。

相關文章