數據庫同步有很多方法,這里不討論了,我這里只針對異構數據庫.那什么是異構數據庫呢,我們先看下定義(引用)
異構數據庫系統是相關的多個數據庫系統的集合,可以實現數據的共享和透明訪問,每個數據庫系統在加入異構數據庫系統之前本身就已經存在,擁有自己的DMBS。異構數據庫的各個組成部分具有自身的自治性,實現數據共享的同時,每個數據庫系統仍保有自己的應用特性、完整性控制和安全性控制。異構數據庫系統的異構性主要體現在以下幾個方面:
計算機體系結構的異構
各個參與的數據庫可以分別運行在大型機、小型機、工作站、PC或嵌入式系統中。
基礎操作系統的異構
各個數據庫系統的基礎操作系統可以是Unix、Windows NT、 Linux等。
DMBS本身的異構
可以是同為關系型數據庫系統的Oracle、 SQL Server等,也可以是不同數據模型的數據庫,如關系、模式、層次、網絡、面向對象,函數型數據庫共同組成一個異構數據庫系統。
在轉換的過程中,有時要想實現嚴格的等價轉換是比較困難的。首先要確定兩種模型中所存在的各種語法和語義上的沖突,這些沖突可能包括:
命名沖突:即源模型中的標識符可能是目的模型中的保留字,這時就需要重新命名。
格式沖突:同一種數據類型可能有不同的表示方法和語義差異,這時需要定義兩種模型之間的變換函數。
結構沖突:如果兩種數據庫系統之間的數據定義模型不同,如分別為關系模型和層次模型,那么需要重新定義實體屬性和聯系,以防止屬性或聯系信息的丟失。
異構數據庫同步的解決方法主要有以下幾種:
1.建立觸發器記錄表的變化情況,在源數據庫建立增、刪、改觸發器,然后根據變化登記表進行處理.優點是充分結合業務進行處理,保持數據的一致性、完整性,實時性較強,對多個數據源合并有非常大的優勢,我們現在也是采用這種方式來同步的。
2.日志:通過分析源數據庫日志,來獲得源數據庫中的變化的數據。ORCLE 的 異步 CDC (Asynchronized CDC) 就是使用這種方式,但缺點是有一定延時.
3.可以使用中間件(PlusWell Data Replication 軟件)的方式實現:http://www.cnblogs.com/seed_lee/archive/2011/02/13/1953068.html
引自: http://hi.baidu.com/fly_ch/blog/item/361dbbc7ba6b18d9d000604a.html
更多文章、技術交流、商務合作、聯系博主
微信掃碼或搜索:z360901061

微信掃一掃加我為好友
QQ號聯系: 360901061
您的支持是博主寫作最大的動力,如果您喜歡我的文章,感覺我的文章對您有幫助,請用微信掃描下面二維碼支持博主2元、5元、10元、20元等您想捐的金額吧,狠狠點擊下面給點支持吧,站長非常感激您!手機微信長按不能支付解決辦法:請將微信支付二維碼保存到相冊,切換到微信,然后點擊微信右上角掃一掃功能,選擇支付二維碼完成支付。
【本文對您有幫助就好】元
