亚洲免费av电影一区二区三区,日韩爱爱视频,51精品视频一区二区三区,91视频爱爱,日韩欧美在线播放视频,中文字幕少妇AV,亚洲电影中文字幕,久久久久亚洲av成人网址,久久综合视频网站,国产在线不卡免费播放

        ?

        淺析分布式數(shù)據(jù)庫同步技術(shù)理論

        2009-07-02 08:36:02郭哲鋒
        消費(fèi)導(dǎo)刊 2009年11期

        郭哲鋒

        [摘 要]如何高效、安全地保持?jǐn)?shù)據(jù)庫之間數(shù)據(jù)同步是當(dāng)前數(shù)據(jù)庫技術(shù)研究熱點(diǎn)問題。本文對于分布式數(shù)據(jù)庫系統(tǒng)同步傳輸技術(shù),通過數(shù)據(jù)庫同步機(jī)制研究解決了多級(jí)數(shù)據(jù)庫信息交換過程中上下級(jí)數(shù)據(jù)庫數(shù)據(jù)不一致問題。

        [關(guān)鍵詞]分布式數(shù)據(jù)庫 同步傳輸 MobiLink 觸發(fā)器

        隨著企業(yè)的不斷發(fā)展和壯大,企業(yè)的各子部門地處于不同區(qū)域的情況越來越多,為了使企業(yè)異地使用相同的數(shù)據(jù),大多數(shù)企業(yè)都采用了數(shù)據(jù)庫提供的同步技術(shù)來解決這一問題,但該方法操作難度較大,而數(shù)據(jù)庫提供的同步技術(shù)也會(huì)因網(wǎng)絡(luò)、電力等原因造成時(shí)間同步無法進(jìn)行,引起數(shù)據(jù)的丟失等[1]。本文就如何高效、安全地保持分布式數(shù)據(jù)庫之間數(shù)據(jù)同步進(jìn)行研究,以期解決以上問題。

        一、分布式數(shù)據(jù)庫同步技術(shù)理論概述

        (一)分布式數(shù)據(jù)庫概述及特點(diǎn)

        分布式數(shù)據(jù)庫(Distributed Database, DDB)是計(jì)算機(jī)網(wǎng)絡(luò)環(huán)境中各場地(Site)或結(jié)點(diǎn)(Node)上數(shù)據(jù)庫的邏輯集合。一般稱傳統(tǒng)方式的數(shù)據(jù)庫為集中式數(shù)據(jù)庫(Centralized Database, CDB);稱分布式數(shù)據(jù)庫系統(tǒng)中的各場地?cái)?shù)據(jù)庫為局部數(shù)據(jù)庫(Local Database, LDB),是物理的數(shù)據(jù)庫;稱分布式數(shù)據(jù)庫為全局?jǐn)?shù)據(jù)庫(Global Database, GDB),是邏輯的數(shù)據(jù)庫。分布式數(shù)據(jù)庫具有分布性和邏輯協(xié)調(diào)性。分布性是指數(shù)據(jù)不是存放在單一場地為單個(gè)計(jì)算機(jī)配置的存儲(chǔ)設(shè)備上,而是按全局需要將數(shù)據(jù)劃分成一定結(jié)構(gòu)的數(shù)據(jù)子集,分散地存儲(chǔ)在各個(gè)場地上;邏輯協(xié)調(diào)性是指各場地上的數(shù)據(jù)子集,相互間由嚴(yán)密的約束規(guī)則加以限定而在邏輯上是一個(gè)整體。

        (二)數(shù)據(jù)庫同步技術(shù)

        通過交換每個(gè)成員中所有已更新的記錄和對象, 來更新一個(gè)副本集的兩個(gè)成員的過程。當(dāng)每個(gè)副本集內(nèi)的更改都相互應(yīng)用于另一個(gè)副本集時(shí), 兩個(gè)副本集成員就實(shí)現(xiàn)了同步。數(shù)據(jù)庫同步又分三種[2]:直接同步,即用于在直接連接到局域網(wǎng)的副本之間對數(shù)據(jù)進(jìn)行同步的方法, 可通過共享的網(wǎng)絡(luò);文件夾使用間接同步,即一種用于斷開連接環(huán)境中( 如帶著便攜式計(jì)算機(jī)外出時(shí)) 的同步方法,必須用“復(fù)制管理器”來配置間接同步;Internet 同步,用于將已配置了 Internet 服務(wù)器的脫機(jī)環(huán)境中的副本同步。必須使用“復(fù)制管理器”來配置 Internet 同步。

        (三)緩沖池技術(shù)

        一個(gè)緩沖池是與單個(gè)數(shù)據(jù)庫相關(guān)聯(lián)的,可以被多個(gè)表空間使用。當(dāng)考慮將緩沖池用于一個(gè)或多個(gè)表空間時(shí),必須保證表空間頁大小和緩沖池頁大小對于緩沖池所“服務(wù)”的所有表空間而言都是一樣的。一個(gè)表空間只能使用一個(gè)緩沖池。數(shù)據(jù)庫連接緩沖池,其實(shí)就是保存數(shù)據(jù)庫連接的一個(gè)集合。需要數(shù)據(jù)庫連接緩沖池是因?yàn)槊看螌?shù)據(jù)庫的開閉都是非常耗時(shí)耗資源的,如果并發(fā)請求過大,可能就導(dǎo)致系統(tǒng)反應(yīng)緩慢甚至造成崩潰。

        (四) 觸發(fā)器實(shí)現(xiàn)算法簡介

        當(dāng)前數(shù)據(jù)庫應(yīng)用的一個(gè)普遍要求是數(shù)據(jù)庫管理系統(tǒng)能夠在一些數(shù)據(jù)庫相關(guān)事件發(fā)生時(shí)觸發(fā)預(yù)先定義的操作,實(shí)現(xiàn)信息管理的自動(dòng)化,因此引進(jìn)了觸發(fā)器機(jī)制。觸發(fā)器可以增強(qiáng)引用完整性,加強(qiáng)復(fù)雜業(yè)務(wù)的規(guī)則,或者監(jiān)控?cái)?shù)據(jù)庫的變動(dòng),并執(zhí)行一定的數(shù)據(jù)操作。觸發(fā)器機(jī)制實(shí)現(xiàn)主要涉及觸發(fā)事件的檢測以及觸發(fā)條件的判決等關(guān)鍵技術(shù)問題,以及對觸發(fā)器的編譯存儲(chǔ)和調(diào)用執(zhí)行等具體操作。

        觸發(fā)器事件檢測機(jī)制包括對事件的檢測和存儲(chǔ),是實(shí)現(xiàn)觸發(fā)器的關(guān)鍵。觸發(fā)器的條件判決機(jī)制是觸發(fā)器的核心,根據(jù) SQL99 標(biāo)準(zhǔn)的定義,可以將觸發(fā)器分為前觸發(fā)、約束判定和后觸發(fā)三種類型。觸發(fā)器的更新操作是對一個(gè)觸發(fā)器進(jìn)行編譯后,替換已存在的作用在同一個(gè)表上的同名觸發(fā)器,基本操作與觸發(fā)器的創(chuàng)建是一致的;觸發(fā)器的刪除操作步驟主要是在數(shù)據(jù)字典中對指定的觸發(fā)器進(jìn)行查詢并刪除。

        二、需求分析

        (一)系統(tǒng)功能

        分布式數(shù)據(jù)庫同步系統(tǒng)主要完成對于網(wǎng)絡(luò)中數(shù)據(jù)庫系統(tǒng)的數(shù)據(jù)同步操作及相關(guān)設(shè)置,通過編寫程序?qū)崿F(xiàn)網(wǎng)絡(luò)中對于 Oracle,MS SQL Sever 等數(shù)據(jù)庫之間數(shù)據(jù)的同步操作。利用緩沖池技術(shù)提供數(shù)據(jù)交換的安全保障,確保數(shù)據(jù)在同步過程中保持?jǐn)?shù)據(jù)的一致性。采用標(biāo)準(zhǔn)的數(shù)據(jù)通訊方式,以及標(biāo)準(zhǔn)的同步交換協(xié)議。實(shí)現(xiàn)主數(shù)據(jù)庫對結(jié)點(diǎn)Oracle 數(shù)據(jù)庫,MS SQL Sever 數(shù)據(jù)庫數(shù)據(jù)的同步。觸發(fā)同步機(jī)制,使得主數(shù)據(jù)庫與結(jié)點(diǎn)數(shù)據(jù)庫數(shù)據(jù)保持一致性。 定制對異構(gòu)數(shù)據(jù)庫自動(dòng)同步操作,可以實(shí)現(xiàn)按預(yù)定規(guī)則實(shí)現(xiàn)定時(shí)更新數(shù)據(jù)庫數(shù)據(jù)。

        (二)總體設(shè)計(jì)

        分布式數(shù)據(jù)庫數(shù)據(jù)同步系統(tǒng)由變化捕獲、日志還原、同步觸發(fā)、通訊和數(shù)據(jù)更新等 5 個(gè)模塊組成。變化捕獲模塊負(fù)責(zé)捕獲變化并記錄日志;日志還原模塊把變更操作還原成數(shù)據(jù)庫語句;同步觸發(fā)模塊根據(jù)同步策略激活通訊發(fā)送;通訊模塊負(fù)責(zé)數(shù)據(jù)的發(fā)送與接收;數(shù)據(jù)更新模塊負(fù)責(zé)把傳送過來的數(shù)據(jù)更新到目標(biāo)數(shù)據(jù)庫。

        對于整個(gè)系統(tǒng)功能模塊來講,分布式數(shù)據(jù)庫同步系統(tǒng)包含五個(gè)基本功能模塊:啟動(dòng) ORA 同步,啟動(dòng) MMS 同步,自動(dòng)同步,同步 ORA,同步 SQL。(1)啟動(dòng) ORA 同步,在主機(jī)數(shù)據(jù)庫所在服務(wù)器啟動(dòng) ORA 同步服務(wù);(2)啟動(dòng) MMS 同步,在主機(jī)數(shù)據(jù)庫所在服務(wù)器啟動(dòng) SQL 同步服務(wù);(3)自動(dòng)同步,在主機(jī)數(shù)據(jù)庫所在服務(wù)器啟動(dòng)自動(dòng)同步服務(wù),使得同步工作按照預(yù)定設(shè)置的條件進(jìn)行自動(dòng)同步服務(wù);(4)同步 ORA,對于網(wǎng)絡(luò)中主機(jī)數(shù)據(jù)庫與 ORA 的結(jié)點(diǎn)數(shù)據(jù)庫進(jìn)行同步工作,同步以后使得主數(shù)據(jù)庫與 ORA 的結(jié)點(diǎn)數(shù)據(jù)庫數(shù)據(jù)保持一致;(5)同步 SQL,對于網(wǎng)絡(luò)中主機(jī)數(shù)據(jù)庫與 SQL 結(jié)點(diǎn)數(shù)據(jù)庫進(jìn)行同步工作,同步以后使得主數(shù)據(jù)庫與 SQL 的結(jié)點(diǎn)數(shù)據(jù)庫數(shù)據(jù)保持一致。

        三、系統(tǒng)設(shè)計(jì)關(guān)鍵技術(shù)分析

        (一)系統(tǒng)配置介紹

        通用數(shù)據(jù)傳輸平臺(tái)基于選定的 MobiLink 技術(shù)作為軟件開發(fā)的技術(shù)支持,使用Sybase ASA8.0 作為 MobiLink 的客戶端與同步服務(wù)器。通用數(shù)據(jù)傳輸平臺(tái)系統(tǒng)具有傳輸對象的配置與定義功能,采用基于傳輸緩沖池的數(shù)據(jù)同步傳輸與日志傳輸技術(shù),以撥號(hào)網(wǎng)絡(luò)作為主要應(yīng)用環(huán)境,同時(shí)支持實(shí)時(shí)網(wǎng)絡(luò)傳輸環(huán)境。通用數(shù)據(jù)傳輸平臺(tái)體現(xiàn)了通用性、高效性、安全性和穩(wěn)定性。

        (二)MobiLink 技術(shù)概述

        MobiLink 技術(shù)一種基于發(fā)布/訂閱方式的異步消息中間件技術(shù)[3]。主要是以MobiLink 客戶端在建立 MobiLink 用戶的基礎(chǔ)上完成單向的同步發(fā)布/同步預(yù)訂,MobiLink 同步服務(wù)器只需要處于啟動(dòng)的狀態(tài),使 MobiLink 客戶端通過 MobiLink 同步服務(wù)器來進(jìn)行同步。

        1.MobiLink 的同步過程技術(shù)

        同步會(huì)話是 MobiLink 客戶端和同步服務(wù)器之間的雙向數(shù)據(jù)交換過程,始終由客戶端開始進(jìn)行同步過程。在此過程中,客戶端必須建立并維護(hù)與同步服務(wù)器的連接。如果成功,此會(huì)話將使遠(yuǎn)程數(shù)據(jù)庫和統(tǒng)一數(shù)據(jù)庫保持相互一致的狀態(tài)。同步過程中包括上載和下載兩部分。 對于數(shù)據(jù)行的上載,MobiLink 客戶端準(zhǔn)備并發(fā)送一個(gè)上載流,它包含從上次同步后在 MobiLink 客戶端經(jīng)過更新、插入或刪除的所有行的列表。類似地,對于數(shù)據(jù)行的下載,MobiLink 同步服務(wù)器準(zhǔn)備并發(fā)送一個(gè)下載流,它包含插入、更新和刪除的列表。

        2.MobiLink 的同步腳本

        MobiLink 同步邏輯由存儲(chǔ)在統(tǒng)一數(shù)據(jù)庫中的腳本組成,這些腳本可以是單個(gè)語句,也可以是存儲(chǔ)過程調(diào)用。在同步過程中,MobiLink 同步服務(wù)器將讀取這些腳本,并對統(tǒng)一數(shù)據(jù)庫執(zhí)行這些腳本。腳本為您提供了在同步過程中的不同時(shí)間點(diǎn)執(zhí)行任務(wù)的機(jī)會(huì)。您可以使用 Sybase Central,也可以使用存儲(chǔ)過程將腳本添加到統(tǒng)一數(shù)據(jù)庫中。

        每個(gè)腳本對應(yīng)于同步過程中的一個(gè)特定事件。僅當(dāng)某個(gè)操作必須發(fā)生時(shí)才編寫腳本。所有不必要的事件都無需定義。同步過程的兩個(gè)主要部分是處理上載的信息和準(zhǔn)各要下載的行。MobiLink同步服務(wù)器將在首次需要某一校本時(shí)讀取它進(jìn)行準(zhǔn)各,只讀取和準(zhǔn)備一次。只要一個(gè)事件被激活,便執(zhí)行與其關(guān)聯(lián)的腳本。大多數(shù)同步腳本都接受來自MobiLink同步服務(wù)器的參數(shù)您可以在腳本中使用這些參數(shù),通過在腳本中放置問號(hào)即可做到這一點(diǎn)。腳本是以組的方式進(jìn)行組織的,這些組被稱為腳本版本。通過指定特定的版本,MobiLink 客戶端可以選擇使用哪一組同步腳本來處理上載流及準(zhǔn)備下載流。

        3.MobiLink 的同步方式

        MobiLink 的同步方式可以分為兩種[4]:1.基于時(shí)間戳的同步。時(shí)間戳方法是可以進(jìn)行高效的同步的最實(shí)用的通用技術(shù)。此項(xiàng)技術(shù)涉及跟蹤每個(gè)用戶上次進(jìn)行同步的時(shí)間,并使用此信息控制下載到每個(gè)遠(yuǎn)程數(shù)據(jù)庫的行。MobiLink保留了一個(gè)用以說明每個(gè) MobiLink 用戶上一次下載數(shù)據(jù)的時(shí)間的時(shí)間戳值。該值被稱為上次下載的時(shí)間戳。上次下載的時(shí)間戳將作為一個(gè)參數(shù)被提供給許多事件,該時(shí)間戳還可以在同步腳本中使用。2.快照同步。基于時(shí)間戳的同步適合于大多數(shù)同步。不過,有時(shí)候可能需要更新數(shù)據(jù)快照。表的快照同步是指完全下載表中的所有相關(guān)行,而不考慮這些行以前是否已經(jīng)下載。這是最簡單的同步方法,但會(huì)引起大量的不必要的數(shù)據(jù)集交換,從而導(dǎo)致性能下降??梢允褂每煺胀较螺d表中的所有行,或者將此方法與在遠(yuǎn)程數(shù)據(jù)庫之間對行進(jìn)行分區(qū)中描述的行分區(qū)方法結(jié)合使用??煺胀阶钸m合用于同時(shí)具有以下兩種特征的表:(1)行數(shù)相對較少:當(dāng)表中行數(shù)比較少時(shí),下載所有行所產(chǎn)生的開銷也會(huì)相對較小。(2)行信息經(jīng)常更改:當(dāng)表中的大多數(shù)行頻繁進(jìn)行更改時(shí),采用顯式排除上次同步后未發(fā)生更改的行的方法就沒有太大的必要。

        (三)數(shù)據(jù)庫設(shè)計(jì)

        分布式數(shù)據(jù)同步系統(tǒng)采用緩沖池技術(shù)來確保數(shù)據(jù)傳輸?shù)陌踩院鸵恢滦?,根?jù)系統(tǒng)分析:(1)主機(jī)數(shù)據(jù)庫主要由三部分組成:用戶信息表,本地?cái)?shù)據(jù)庫表,傳輸緩沖池表;(2)子機(jī)數(shù)據(jù)庫主要有兩部分組成:本地?cái)?shù)據(jù)庫表和傳輸緩沖池表。

        (四)數(shù)據(jù)庫同步過程分析

        數(shù)據(jù)庫同步系統(tǒng)同步數(shù)據(jù)總體同步過程如下:(1)用戶登陸,根據(jù)用戶信息表進(jìn)行登陸操作;(2)啟動(dòng)同步,針對不同的數(shù)據(jù)庫啟動(dòng)對應(yīng)的同步服務(wù);(3)同步數(shù)據(jù),同步操作開始;(4)比較緩沖池?cái)?shù)據(jù),如果相同說明雙方數(shù)據(jù)一致,同步結(jié)束;如果不同則更新緩沖池當(dāng)中的數(shù)據(jù),直到兩個(gè)緩沖池當(dāng)中的數(shù)據(jù)再次達(dá)到一致;(5)更新緩沖池?cái)?shù)據(jù);(6)更新本地?cái)?shù)據(jù)庫數(shù)據(jù);(7)同步結(jié)束。

        四、結(jié)論

        隨著分布式數(shù)據(jù)庫廣泛應(yīng)用于各個(gè)行業(yè),異構(gòu)數(shù)據(jù)庫海量數(shù)據(jù)傳輸成為計(jì)算機(jī)研究人員關(guān)注的焦點(diǎn),本文研究了分布式數(shù)據(jù)庫之間數(shù)據(jù)同步,采用傳輸緩沖池同步技術(shù),確保發(fā)送數(shù)據(jù)庫與接收數(shù)據(jù)庫數(shù)據(jù)的一致性。

        參考文獻(xiàn)

        [1]宋俊蘇。分布式數(shù)據(jù)庫在高職院校辦公自動(dòng)化管理系統(tǒng)中的應(yīng)用[J]電腦知識(shí)與技術(shù), 2009,08

        [2]邵佩英。分布式數(shù)據(jù)庫系統(tǒng)及其應(yīng)用(第二版)北京:科學(xué)出版社,2005:10~11

        [3]Richard Staehli,F(xiàn)rank Eliassen,Sten Amundsen。Designing Adaptive Middleware for Reuse[A]Middleware 2004 Companion[C]Toronto: IFIP International Federation for Information Processing, 2004: pp.153~157

        [4]馬新娜,牛存良,石玉晶等。異構(gòu)數(shù)據(jù)庫互動(dòng)中間件的設(shè)計(jì)與應(yīng)用。微機(jī)發(fā)展,2004(4)

        在线日韩中文字幕乱码视频| 亚洲av综合久久九九| 久久久久99精品国产片| 日韩av中出在线免费播放网站| 伊人狼人大香线蕉手机视频| 天天做天天爱夜夜爽毛片毛片| 韩国无码av片在线观看网站| 成年女人vr免费视频| 最新亚洲精品国偷自产在线| 精品91精品91精品国产片| 免费国产不卡在线观看| 高潮内射主播自拍一区| 人妻少妇偷人精品久久性色av | 一级一片内射视频网址| 亚洲成人中文字幕在线视频| 国产精品日本一区二区在线播放| 亲子乱aⅴ一区二区三区下载| 99re6久精品国产首页| 国产丝袜美腿一区二区三区| 久久理论片午夜琪琪电影网| 女人夜夜春高潮爽a∨片| 午夜无码无遮挡在线视频| 99久久国产免费观看精品| 狠狠人妻久久久久久综合蜜桃| 99久久综合狠狠综合久久| 极品美女尤物嫩模啪啪| 免费黄片小视频在线播放| 一本一道波多野结衣av中文| 国产精品大屁股1区二区三区| 日本特殊按摩在线观看| 极品粉嫩嫩模大尺度无码视频 | 精品国产人妻一区二区三区| 国内成人精品亚洲日本语音| 亚洲综合精品一区二区| 精品久久久bbbb人妻| 国产精品露脸视频观看| 丝袜美腿一区二区在线观看 | 国产三级精品视频2021| 午夜福利92国语| 丰满熟妇人妻av无码区| 婷婷色精品一区二区激情|