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

        ?

        基于物理隔離技術(shù)的觸發(fā)式數(shù)據(jù)庫同步方案

        2010-07-03 07:05:06祝永晉
        電力工程技術(shù) 2010年1期
        關(guān)鍵詞:數(shù)據(jù)表日志增量

        尹 飛,熊 政,祝永晉

        (江蘇方天電力技術(shù)有限公司,江蘇 南京 211102)

        江蘇電網(wǎng)電能量計(jì)量系統(tǒng)是江蘇省電力公司為加強(qiáng)內(nèi)部管理和輸電網(wǎng)內(nèi)部成本核算,實(shí)現(xiàn)集約化經(jīng)營的需要,并為電力市場的進(jìn)一步發(fā)展提供技術(shù)與數(shù)據(jù)儲(chǔ)備而建。該系統(tǒng)主要用于完成下網(wǎng)側(cè)計(jì)量關(guān)口點(diǎn)的電能量采集、處理,系統(tǒng)的采集全部在II區(qū)調(diào)度數(shù)據(jù)網(wǎng),而在此基礎(chǔ)上做的應(yīng)用基本都在III/IV區(qū)甚至要面向Internet,因此數(shù)據(jù)庫的同步是必須的環(huán)節(jié)。電能量采集涉及的電能表數(shù)量多、采集周期短,數(shù)據(jù)容量較大,不適宜采用全量同步的方式,因此需要研究增量式的數(shù)據(jù)抽取和數(shù)據(jù)裝載。

        1 數(shù)據(jù)增量更新方法比較

        為了有效捕捉增量數(shù)據(jù)變化,對已有數(shù)據(jù)的掃描是必須面對的問題[1]。目前有5種技術(shù)可以達(dá)到數(shù)據(jù)增量更新的要求,如圖1所示。

        方法1是掃描已經(jīng)打上時(shí)間戳的數(shù)據(jù)。當(dāng)一個(gè)應(yīng)用對記錄的最近一次修改打上時(shí)間戳?xí)r,同步程序掃描就能夠很有效地進(jìn)行。

        圖1 幾種數(shù)據(jù)增量更新方法

        方法2是掃描增量文件。增量文件僅記錄應(yīng)用中所發(fā)生的改變,有了增量文件,掃描的過程就會(huì)高效。增量文件的生成可以由改造應(yīng)用來完成,但所帶來的問題是增加了數(shù)據(jù)庫容量,且不方便人工干預(yù)。

        方法3是掃描日志文件或?qū)徲?jì)文件。利用日志文件的一個(gè)問題就是它的內(nèi)部格式是針對系統(tǒng)用途構(gòu)建的,必須使用某種技術(shù)手段作為日志文件內(nèi)容輸出的接口,因而使用完全依賴于專門的數(shù)據(jù)庫廠商,依賴性太大,不靈活。

        方法4就是修改所有應(yīng)用程序的數(shù)據(jù)更新代碼,統(tǒng)一生成增量數(shù)據(jù)拷貝。但是,這種方法通常行不通,主要是因?yàn)榛跀?shù)據(jù)的應(yīng)用太多,要實(shí)現(xiàn)此方法必須修改所有程序。

        方法5是將“前”,“后”兩個(gè)映像文件進(jìn)行比較。使用此方法需在第1次抽取時(shí)就對數(shù)據(jù)庫進(jìn)行快照(Snapshot)。進(jìn)行另外一個(gè)抽取時(shí),就進(jìn)行另外一個(gè)快照。再將兩個(gè)快照逐次比較來確定數(shù)據(jù)的修改。

        根據(jù)電能量計(jì)量系統(tǒng)數(shù)據(jù)庫的現(xiàn)狀,結(jié)合了第1和第2這2種方法,制定了增量數(shù)據(jù)識(shí)別方案。

        2 方案概述

        2.1 總體思路

        在全量數(shù)據(jù)源上打時(shí)間戳,在數(shù)據(jù)插入、更新時(shí)寫入時(shí)間戳,在刪除數(shù)據(jù)時(shí)記錄下該條記錄的刪除時(shí)間戳、表名、主鍵,根據(jù)系統(tǒng)的配置定期掃描表內(nèi)時(shí)間戳和刪除記錄時(shí)間戳,判斷時(shí)間順序優(yōu)化生成增量數(shù)據(jù),生成數(shù)據(jù)包,在目標(biāo)數(shù)據(jù)處匹配/裝載。由于基于結(jié)果的同步方式,數(shù)據(jù)裝載時(shí)的順序可能不滿足源數(shù)據(jù)庫數(shù)據(jù)表之間的約束條件,在目標(biāo)數(shù)據(jù)庫上應(yīng)當(dāng)關(guān)閉數(shù)據(jù)表之間的約束[2]。程序框架如圖2所示。

        圖2 程序框架

        2.2 基本原則

        不影響源數(shù)據(jù)安全,盡可能少影響源數(shù)據(jù)庫性能;數(shù)據(jù)同步過程可以控制,同步時(shí)間粒度由用戶自行設(shè)置,同步進(jìn)程可以監(jiān)控;要同步的數(shù)據(jù)表可配置,同步時(shí)間粒度可單獨(dú)設(shè)置;支持物理隔離裝置和網(wǎng)絡(luò)兩種方式同步,支持向多個(gè)目標(biāo)數(shù)據(jù)庫同步;支持監(jiān)視新建的數(shù)據(jù)表,自動(dòng)在目標(biāo)數(shù)據(jù)庫上新建新表,默認(rèn)同步新表。同步程序分為服務(wù)端程序和客戶端程序兩個(gè)部分,服務(wù)端程序負(fù)責(zé)增量數(shù)據(jù)規(guī)則設(shè)置、自動(dòng)創(chuàng)建觸發(fā)器、自動(dòng)添加時(shí)戳字段、定期自動(dòng)抽取數(shù)據(jù)、優(yōu)化抽取的數(shù)據(jù)、生成同步數(shù)據(jù)包,客戶端程序負(fù)責(zé)定期獲取同步數(shù)據(jù)包、解析同步數(shù)據(jù)包、匹配/裝載同步數(shù)據(jù)。程序數(shù)據(jù)流程見圖3。

        圖3 程序數(shù)據(jù)流程

        3 方案介紹

        3.1 現(xiàn)有數(shù)據(jù)庫改動(dòng)

        為了能在現(xiàn)有數(shù)據(jù)庫上捕獲數(shù)據(jù)改動(dòng),知道數(shù)據(jù)更新時(shí)間,需對現(xiàn)有的數(shù)據(jù)庫進(jìn)行改動(dòng),增加對應(yīng)的域及觸發(fā)器。各種改動(dòng)情況的說明如表1所示。

        表1 數(shù)據(jù)庫改動(dòng)情況

        (1)更新管理表:表中記錄數(shù)據(jù)表的Schema、名稱、是否需同步、同步時(shí)間粒度、最后同步時(shí)間,配合定期掃描數(shù)據(jù)庫中的新建表,可自動(dòng)同步建新表到目標(biāo)數(shù)據(jù)庫。

        (2)刪除記錄表:因?yàn)椴皇腔谌罩痉绞?,所以必須記錄下被刪除的記錄,相對于日志方式的優(yōu)勢在于無需記錄下該條記錄的所有信息,只要記錄下主鍵信息。我們仔細(xì)研究了電能量計(jì)量系統(tǒng)中所有數(shù)據(jù)表的結(jié)構(gòu),只有極個(gè)別表沒有主鍵,因此只需對一兩張表進(jìn)行改動(dòng)。此表將根據(jù)系統(tǒng)的配置要求僅保留一段時(shí)間以免數(shù)據(jù)量大而影響性能。

        (3)時(shí)間戳字段:為了能提取出增量,時(shí)間戳是必須的,配合刪除記錄表就可以抽取出完整的增量數(shù)據(jù),同時(shí)也可以實(shí)現(xiàn)人工抽取增量。

        3.2 增量數(shù)據(jù)抽取

        針對電能量計(jì)量系統(tǒng)的DB2數(shù)據(jù)庫的增量數(shù)據(jù)抽取可以采用2種方法:DB2提供的Export方法和語句生成法[3]。

        (1)Export方法:適用于增量數(shù)據(jù)非常大,對同步速度要求非常高的情況,將增量的數(shù)據(jù)用DB2的CLI指令Export導(dǎo)出到文件,再將文件中的數(shù)據(jù)通過Import命令導(dǎo)入到目標(biāo)數(shù)據(jù)庫中,從而完成數(shù)據(jù)從數(shù)據(jù)源到目標(biāo)庫的同步,一旦有數(shù)據(jù)插入失敗,后面的數(shù)據(jù)將無法繼續(xù)。

        (2)語句生成法:此方法是將增量數(shù)據(jù)逐條生成語句,并對其中具有相關(guān)性的進(jìn)行優(yōu)化合并,生成一個(gè)Command List,在目標(biāo)數(shù)據(jù)庫上,分組采用事務(wù)的方式提交,對于執(zhí)行失敗的語句將記錄在日志中,后面的語句繼續(xù)執(zhí)行。

        對比2種方法,其中Export方法對數(shù)據(jù)庫的結(jié)合較緊,性能較好,但不具有通用性,同時(shí)程序可控性較差,因此采用語句生成法,便于對數(shù)據(jù)同步的全過程控制。

        3.3 同步數(shù)據(jù)包

        考慮到同步可能面對隔離裝置和網(wǎng)絡(luò)兩種情況,統(tǒng)一采用數(shù)據(jù)包文件的方式來同步數(shù)據(jù)。同步數(shù)據(jù)包中主要包括生成的Command List和大值字段(LOB)文件。CommandList包括2種格式,一種是標(biāo)準(zhǔn)的SQL語句,客戶端拿到后直接執(zhí)行即可,一種是約定格式的裝載大值字段的語句,該語句需要客戶端程序進(jìn)行解析后執(zhí)行。為了提高執(zhí)行效率,建議兩種格式的語句分開以指定的文件名單獨(dú)存放。

        3.4 數(shù)據(jù)裝載

        客戶端程序拿到數(shù)據(jù)包之后,需對指定文件名的Command List進(jìn)行解析,順序是先執(zhí)行純SQL的List,再執(zhí)行加載大值字段的List。在執(zhí)行過程中出現(xiàn)錯(cuò)誤的語句記錄在日志中,在整個(gè)過程結(jié)束后統(tǒng)一在監(jiān)控界面顯示,可重試裝載,并可根據(jù)用戶配置自動(dòng)重試及重試失敗后發(fā)送相關(guān)反饋至服務(wù)端。

        4 方案特點(diǎn)

        (1)基于結(jié)果的增量抽取,無需對原有的應(yīng)用程序做改動(dòng),沒有基于過程同步時(shí)的順序性,減少了不同數(shù)據(jù)表之間的干擾。

        (2)由于各個(gè)數(shù)據(jù)表之間同步的相對獨(dú)立性,可以對要同步表進(jìn)行個(gè)性化配置,設(shè)置是否同步及同步的時(shí)間粒度。

        (3)采用同步數(shù)據(jù)包來傳遞同步數(shù)據(jù),兼容了物理隔離裝置及網(wǎng)絡(luò)方式,適用范圍更廣。

        (4)采用語句生成法同步數(shù)據(jù),具有較強(qiáng)的可控性,同時(shí)也具有較強(qiáng)的通用性。

        5 結(jié)束語

        基于結(jié)果的數(shù)據(jù)庫增量同步,抓住了數(shù)據(jù)變動(dòng)的源頭,考慮了電能量計(jì)量系統(tǒng)應(yīng)用現(xiàn)狀,提高了抽取的準(zhǔn)確性、數(shù)據(jù)裝載的效率,同時(shí)提供了健壯的異常處理能力,并且具有很強(qiáng)的靈活性和適用性。當(dāng)然數(shù)據(jù)裝載的效率還需要進(jìn)一步提高以便滿足數(shù)據(jù)量日益增加的需要。

        [1]史晶波.在DB2中提取增量數(shù)據(jù)的一種方法[J].計(jì)算機(jī)與數(shù)字工程,2004,32(6):15-16.

        [2]薩師煊.數(shù)據(jù)庫系統(tǒng)概論(第3版)[M].北京:高等教育出版社,2002.

        [3]李志偉.DB2基礎(chǔ)教程[M].北京:清華大學(xué)出版社,2003.

        猜你喜歡
        數(shù)據(jù)表日志增量
        提質(zhì)和增量之間的“辯證”
        一名老黨員的工作日志
        扶貧日志
        心聲歌刊(2020年4期)2020-09-07 06:37:14
        湖北省新冠肺炎疫情數(shù)據(jù)表
        黨員生活(2020年2期)2020-04-17 09:56:30
        “價(jià)增量減”型應(yīng)用題點(diǎn)撥
        基于列控工程數(shù)據(jù)表建立線路拓?fù)潢P(guān)系的研究
        游學(xué)日志
        基于均衡增量近鄰查詢的位置隱私保護(hù)方法
        德州儀器(TI)發(fā)布了一對32位增量-累加模數(shù)轉(zhuǎn)換器(ADC):ADS1262和ADS126
        圖表
        色伦专区97中文字幕| 亚洲av少妇一区二区在线观看| 国产无套一区二区三区久久| 国产女人好紧好爽| 日本亚洲欧美色视频在线播放| 亚洲欧美日韩中文无线码| 免费一级欧美大片久久网| 国产一级一片内射视频在线| 亚洲天堂av福利在线| 18禁免费无码无遮挡不卡网站| 久久久久无码精品国产app| 一卡二卡三卡视频| 亚洲成a人片77777kkkkk| 人妻被公上司喝醉在线中文字幕| 懂色av一区二区三区尤物| 一区二区三区av波多野结衣| 国产精品.xx视频.xxtv| 欧美巨大xxxx做受中文字幕 | 中文字幕丰满人妻被公强| 久久在一区二区三区视频免费观看| 狠狠的干性视频| 亚洲国产精品特色大片观看完整版| 91精品国产91久久综合桃花| 女同另类专区精品女同| 国产免费av手机在线观看片| 无码少妇一区二区性色av| 国产精品女视频一区二区| 日韩在线中文字幕一区二区三区| 中文字幕一区二区av| 亚洲av乱码一区二区三区按摩 | 亚洲av无码片在线播放| 国产成人夜色在线视频观看| 日韩一区二区三区久久精品| 国产精品成人免费视频一区| 久久久久亚洲av无码a片软件| 极品人妻少妇一区二区| 亚洲丰满熟女乱一区二区三区| 国产美女爽到喷出水来视频| 亚洲欧美日韩综合久久| 久久精品熟女亚洲av艳妇| 女优av一区二区在线观看|