異構資料庫複製技術的
研究與實現
1引言網路技術的飛速發展和廣泛應用,特別是網際網路的普及,大大方便了企業的跨地域發展。同時,為了適應不斷增長的商業競爭環境,許多企業通過不斷重組和分散經營來提高效率,形成了分散、異構的環境特點。同時這些組織在地域上雖然分散,但在管理上相對集中,往往既要有各部門的區域性控制和分散管理,也要有整個組織的全域性控制和高層次的協同管理。這種協同管理要求各部門之間的資訊既能靈活交流和共享,又能統一管理和使用。
當前,分布式資料庫技術已經成熟,並且因計算機成本的下降以及通訊費用的降低而得到了廣泛的應用。然而,分布式資料庫系統既要提供區域性自治又要
實現全域性控制,帶來了很大的挑戰性。為此,引入資料庫複製機制,資料庫複製依賴於分布式資料庫技術但又可以提供分布式資料庫所不具備的功能,特別是由於在訪問資料時有可選的資料副本,因此可以改進系統的效能和保護應用的可用性。通過使用資料庫的複製技術可以
實現集中和自治相結合的控制機制,並可大大提高整個分布式資料庫系統的可靠性和響應速度。
現有的異構資料庫複製方案優勢突出,比如在執行效能和整體性方面都有著明顯的優勢,而且產商大多提供了一些輔助工具可以協助使用者更好地完成複製任務等;但同時問題也存在:資料庫產商提供的複製方案依賴於產商自己的dbms核心關係緊密的
實現技術,不一定適用於其它dbms,也就是說複製方案不是完全異構的。
為解決完全異構問題,本文提出一種新的複製技術:「基於sql重現法」複製技術,「基於sql重現法」複製技術的核心思想就是為源資料庫中的複製物件(源表或檢視)建立變更軌跡表,當源表發生變化時,變更軌跡表中記錄了變更情況,再通過事後從變更軌跡表中獲取sql語句,將源表中的資料複製到目標表中。這種方法可以獲得複製物件的淨變化,執行和傳輸效率很高,而且易於管理,彌補了解決複製衝突的不足。這種方法適合於除同步複製之外的各種複製形式。
本文將從工作原理、思維、實施過程以及技術特點等幾個方面介紹「基於sql重現法」複製技術。
資料庫複製就是通過將源資料庫中指定的資料複製到目標資料庫中,以保持源資料庫與目標資料庫中指定資料的同步。它應該由哪些部分組成,關於這一點目前還沒有很統一的看法。
本文後面的內容都將圍繞這兩個環節進行闡述。
2工作原理
(1)變化捕獲
變化捕獲是捕獲源表的變化序列的過程。「基於sql重現法」資料複製技術捕獲變化的核心思想是為多個相關源表(極端的情況可能是一張源表或整個資料庫的所有表,在這裡稱為乙個「源集」)建立乙個變更軌跡表,其中包含發生變更的序列號、變更時間以及還原後的sql語句等資訊,當源表發生變化時,就立刻在變更軌跡表中記錄下源表的變化情況,此時變更軌跡表相當於基於日誌法中的「日誌」,變更時間相當於基於時間戳法中的「時間戳」,但是由於這個過程不是由資料庫引擎本身
實現的,因而需要依靠觸發器來
實現。也就是說,需要為每個源表建立觸發器,當源表發生修改、插入和刪除操作時,觸發器被啟動,通過呼叫儲存過程,將源表發生的操作還原為sql語句,向該源表對應的變更軌跡表中插入變更時間和還原後的sql語句,工作原理如下圖所示。
圖1「基於sql重現的資料複製」變化捕獲工作原理
(2)資料分發
PXN防護技術的研究與繞過
阿里移動安全 2015 08 07 14 59 近些年來,由於android系統的興起,作為android底層實現的linux核心其安全問題也是越來越被人們所關注。為了減小漏洞給使用者帶來的危害和損失,linux核心增加了一系列的漏洞緩解技術。其中包括dep,alsr,更強的selinux,核心 段...
UDP的防火牆穿透技術研究與實現
udp的防火牆穿透技術研究與實現 作者 從良匪兵 檢視 142 發表時間 2007 6 29 13 14 論壇瀏覽 當然,此問題可以通過雙方先嘗試連線對方的內網ip來解決,但是這個 只是為了驗證原理,並沒有處理這些問題 後登入的計算機可以獲得先登入計算機的使用者名稱,後登入的計算機通過send us...
程序注入的研究與實現
程序注入的研究與實現 為了對記憶體中的某個程序進行操作,並且獲得該程序位址空間裡的資料,或者修改程序的私有資料結構,必須將自己的 放在目標程序的位址空間裡執行,這時就避免不了使用程序注入方法了。程序注入的方法分類如下 5.無dll注入 在第三中方法中,我們啟動遠端執行緒時,執行緒函式是我們從kern...