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

        ?

        基于流程驅(qū)動的數(shù)據(jù)比對的研究與應(yīng)用

        2013-11-30 05:32:02張國權(quán)武友新江恭和
        計算機(jī)工程與設(shè)計 2013年12期
        關(guān)鍵詞:字段引擎邏輯

        張國權(quán),武友新,江恭和

        (1.南昌大學(xué) 信息工程學(xué)院計算機(jī)科學(xué)與技術(shù)系,江西 南昌330031;2.思創(chuàng)數(shù)碼科技股份有限公司,江西南昌330096)

        0 引 言

        數(shù)據(jù)整合是大數(shù)據(jù)應(yīng)用的一個重要環(huán)節(jié),而如何保證來源不同部門有關(guān)聯(lián)數(shù)據(jù)的正確性和一致性至為關(guān)鍵。數(shù)據(jù)整合中需引入數(shù)據(jù)的清洗與比對來保證數(shù)據(jù)的正確性,數(shù)據(jù)清洗解決數(shù)據(jù)重復(fù)、大小寫不一致、前后矛盾等質(zhì)量問題,數(shù)據(jù)比對則保證了跨部門間的數(shù)據(jù)一致性。目前,對于這方面的處理辦法常用一些程序以及SQL存儲過程去實(shí)現(xiàn),但這種方法只能滿足一定的場景,一旦數(shù)據(jù)和邏輯變化則不能適應(yīng)新的變化。文獻(xiàn)[1]針對靈活性和可擴(kuò)展性問題提出了基于知識建模的數(shù)據(jù)清洗和比對模型,但該比對模型存在業(yè)務(wù)邏輯復(fù)雜和時間空間復(fù)雜度高的問題。而采用ETL工具實(shí)現(xiàn)數(shù)據(jù)清洗與比對除存在配置復(fù)雜問題,對于一些復(fù)雜的比對流程也難以支持。在分析以上問題的基礎(chǔ)上引入類似工作流的概念,提出基于流程驅(qū)動的數(shù)據(jù)比對方法,將數(shù)據(jù)清洗和數(shù)據(jù)比對中的功能定義成相應(yīng)的節(jié)點(diǎn),并將這些節(jié)點(diǎn)按照一定順序配置成比對流程,最后通過比對引擎執(zhí)行流程中節(jié)點(diǎn)完成比對,旨在提高數(shù)據(jù)比對的靈活性、通用性。

        1 基本概念

        1.1 節(jié) 點(diǎn)

        在數(shù)據(jù)比對過程中對數(shù)據(jù)的各種處理涉及到一些基礎(chǔ)操作,將這些基礎(chǔ)操作抽象成為節(jié)點(diǎn),不同的操作對應(yīng)不同的節(jié)點(diǎn)。如在數(shù)據(jù)比對流程中對數(shù)據(jù)的復(fù)制、清洗、比較等操作對應(yīng)有復(fù)制節(jié)點(diǎn)、清洗節(jié)點(diǎn)、比較節(jié)點(diǎn)等。數(shù)據(jù)在經(jīng)過節(jié)點(diǎn)時進(jìn)行數(shù)據(jù)處理并產(chǎn)生結(jié)果。

        1.2 比對流程

        比對流程類似工作流中的流程,是指比對工作事項(xiàng)的活動流向順序。它解決的主要問題是為了實(shí)現(xiàn)某個業(yè)務(wù)目標(biāo),將以上定義各個節(jié)點(diǎn)按照一定的順序連接起來并形成比對流程[2],在比對流程中,上一節(jié)點(diǎn)產(chǎn)生的結(jié)果即輸出作為下一節(jié)點(diǎn)的輸入。簡單地講,比對流程就是一組輸入轉(zhuǎn)化為輸出的過程,將數(shù)據(jù)的處理流程化。

        1.3 比對引擎

        比對引擎類似工作流引擎,包括流程解釋執(zhí)行和流程監(jiān)控兩部分。其中流程解釋執(zhí)行主要是指各節(jié)點(diǎn)根據(jù)業(yè)務(wù)需求按照一定的順序配置成比對流程后,比對引擎解釋執(zhí)行比對流程中定義的節(jié)點(diǎn)并產(chǎn)生結(jié)果,當(dāng)節(jié)點(diǎn)執(zhí)行完成后,該節(jié)點(diǎn)的下一節(jié)點(diǎn)方可執(zhí)行,直到整個比對流程執(zhí)行完成。流程監(jiān)控在整個流程執(zhí)行過程中,可監(jiān)控流程執(zhí)行到哪個節(jié)點(diǎn),并產(chǎn)生相應(yīng)的日志記錄。

        2 數(shù)據(jù)比對體系結(jié)構(gòu)

        比對體系結(jié)構(gòu)由節(jié)點(diǎn)、比對流程、比對引擎和表組成。其中,比對流程主要是定義各節(jié)點(diǎn),即定義復(fù)制節(jié)點(diǎn)、清洗節(jié)點(diǎn)、比較節(jié)點(diǎn)、更新節(jié)點(diǎn)和插入節(jié)點(diǎn),然后將這些定義好的節(jié)點(diǎn)根據(jù)業(yè)務(wù)需求按一定的順序配置成流程實(shí)例;比對引擎解釋比對流程中定義的節(jié)點(diǎn),驅(qū)動著流程的流轉(zhuǎn),產(chǎn)生結(jié)果數(shù)據(jù)并存儲在臨時表中;表包括臨時表和業(yè)務(wù)表,臨時表用于存儲在比對流程中節(jié)點(diǎn)產(chǎn)生的結(jié)果數(shù)據(jù),業(yè)務(wù)表用于支撐整個比對系統(tǒng)。數(shù)據(jù)比對體系結(jié)構(gòu)如圖1所示。

        圖1 數(shù)據(jù)比對體系結(jié)構(gòu)

        2.1 節(jié) 點(diǎn)

        節(jié)點(diǎn)由輸入表、處理邏輯和輸出表組成。輸入表由一個或兩個輸入表組成;處理邏輯即為該節(jié)點(diǎn)所對應(yīng)的基礎(chǔ)操作條件,如復(fù)制、清洗、比較等條件;輸出表也由一個或兩個輸出表組成。復(fù)制節(jié)點(diǎn)的輸入表和輸出表分別都只有一個,而清洗節(jié)點(diǎn)和比較節(jié)點(diǎn)的輸入表和輸出表分別有兩個。節(jié)點(diǎn)模型如圖2所示。

        2.1.1 復(fù)制節(jié)點(diǎn)

        圖2 節(jié)點(diǎn)模型

        復(fù)制節(jié)點(diǎn)是指對那些配置了抽取操作并具有抽取數(shù)據(jù)功能的節(jié)點(diǎn)。主要是通過源表與臨時表字段配對將數(shù)據(jù)源的待比對數(shù)據(jù)全表抽取到臨時表中。復(fù)制節(jié)點(diǎn)的輸出作為數(shù)據(jù)清洗節(jié)點(diǎn)的輸入,包括一個輸入表 (源表)、處理邏輯和一個輸出表 (目標(biāo)表),處理邏輯設(shè)置源表和目標(biāo)之間的對應(yīng)關(guān)系。復(fù)制節(jié)點(diǎn)使整個比對過程都在本地進(jìn)行,保證了數(shù)據(jù)源庫的安全性。

        2.1.2 清洗節(jié)點(diǎn)

        清洗節(jié)點(diǎn)是指對那些配置了清洗操作并具有清洗功能的節(jié)點(diǎn)。主要是通過配置的清洗操作將不符合需求的數(shù)據(jù)進(jìn)行過濾及清理,為比對提供 “干凈”的數(shù)據(jù)[3]。清洗節(jié)點(diǎn)包含一個輸入表 (源表)、處理邏輯 (清洗條件)和兩個輸出表 (規(guī)范數(shù)據(jù)表和異常數(shù)據(jù)表),主要是將源表數(shù)據(jù)通過處理邏輯中配置的清洗條件完成清洗,并將清洗結(jié)果分別輸出到規(guī)范數(shù)據(jù)表和異常數(shù)據(jù)表中,主要有對字段屬性清洗和重復(fù)記錄清洗。

        2.1.3 比較節(jié)點(diǎn)

        比較節(jié)點(diǎn)是指對那些配置了比較操作并具有比較功能的節(jié)點(diǎn)。執(zhí)行比較節(jié)點(diǎn)配置的比較操作檢測出清洗后的待比較數(shù)據(jù)并整合或修復(fù)為各部門一致的、正確的、最新的和統(tǒng)一共享的數(shù)據(jù)[5]。比較節(jié)點(diǎn)包含兩個輸入表 (源表和目標(biāo)表)、兩個輸出表 (成功表和失敗表)以及處理邏輯即設(shè)置比較條件。其中比較條件的設(shè)置是整個比較節(jié)點(diǎn)的核心,主要是設(shè)置表A和表B相對應(yīng)的字段的比較條件。如設(shè)置源表A字段attr1的值等于目標(biāo)表B字段attr1的值即A.attr1=B.attr1。將比較成功的數(shù)據(jù)輸出到比較成功表中,比較失敗表輸出到比較失敗表中,最后通過更新節(jié)點(diǎn)或插入節(jié)點(diǎn)將比較結(jié)果數(shù)據(jù)插入或更新到目標(biāo)庫中。

        2.1.4 更新節(jié)點(diǎn)

        更新節(jié)點(diǎn)是指對那些配置了更新操作并具有更新功能的節(jié)點(diǎn)。更新節(jié)點(diǎn)將比對成功的數(shù)據(jù)更新到目標(biāo)庫中。依據(jù)源表和目標(biāo)表之間的更新條件,如果源表數(shù)據(jù)與目標(biāo)表數(shù)據(jù)主鍵相同,則將該源表數(shù)據(jù)更新到目標(biāo)表中。更新節(jié)點(diǎn)包含兩個輸入表 (源表和目標(biāo)表)、處理邏輯和一個輸出表 (目標(biāo)表)。處理邏輯包括設(shè)置源表數(shù)據(jù)和目標(biāo)表數(shù)據(jù)中主鍵的對應(yīng)關(guān)系以及設(shè)置更新字段。插入節(jié)點(diǎn)的處理邏輯則是設(shè)置目標(biāo)表和目標(biāo)表中字段的對應(yīng)關(guān)系。輸出表為被更新的目標(biāo)表。

        2.1.5 插入節(jié)點(diǎn)

        插入節(jié)點(diǎn)是指對那些配置了插入條件并具有插入功能的節(jié)點(diǎn)。插入節(jié)點(diǎn)將比對成功的數(shù)據(jù)全部插入到目標(biāo)庫中,但不用更新目標(biāo)庫中數(shù)據(jù)。插入節(jié)點(diǎn)包含兩個輸入表 (源表和目標(biāo)表)、處理邏輯和一個輸出表 (目標(biāo)表),處理邏輯設(shè)置目標(biāo)表和目標(biāo)表中字段的對應(yīng)關(guān)系,輸出表為被插入的目標(biāo)表。

        2.2 比對流程

        在比對流程中,上一節(jié)點(diǎn)的輸出對應(yīng)著下一節(jié)點(diǎn)的輸入源表,節(jié)點(diǎn)間通過表數(shù)據(jù)共享機(jī)制驅(qū)動著流程向下一節(jié)點(diǎn)執(zhí)行。下一節(jié)點(diǎn)的執(zhí)行必須要以另一個節(jié)點(diǎn)執(zhí)行行為為前提,下一節(jié)點(diǎn)能否執(zhí)行依賴上一節(jié)點(diǎn)的執(zhí)行狀態(tài)。多個節(jié)點(diǎn)按照一定的順序連接在一起執(zhí)行,形成比對流程,通過比對引擎使節(jié)點(diǎn)產(chǎn)生結(jié)果數(shù)據(jù),驅(qū)動著向下一節(jié)點(diǎn)執(zhí)行。以工商部門數(shù)據(jù)和質(zhì)監(jiān)部門數(shù)據(jù)的比對為例,具體比對流程如圖3所示。

        首先通過復(fù)制節(jié)點(diǎn)將工商部門和質(zhì)監(jiān)部門數(shù)據(jù)抽取到臨時表中,再通過清洗節(jié)點(diǎn)完成對兩部門數(shù)據(jù)的清洗,將清洗后的各自規(guī)范數(shù)據(jù)作為比較節(jié)點(diǎn)的兩個輸入表,完成兩部門間數(shù)據(jù)的比較,并將比較成功的輸出表作為更新節(jié)點(diǎn)的源表,與企業(yè)基礎(chǔ)信息庫進(jìn)行比較,最終將比較成功的數(shù)據(jù)更新到企業(yè)基礎(chǔ)信息庫中。

        2.3 比對引擎

        在形成比對流程后,比對引擎通過流程解釋執(zhí)行功能驅(qū)動比對流程執(zhí)行。通過讀取比對流程對應(yīng)的XML配置信息使流程開始執(zhí)行,并將流程中節(jié)點(diǎn)對應(yīng)的XML解釋生成相應(yīng)的SQL語句執(zhí)行,執(zhí)行完節(jié)點(diǎn)操作后的輸出數(shù)據(jù)存儲在臨時表中,并作為下一處理節(jié)點(diǎn)的輸入表,通過表共享機(jī)制驅(qū)動流程中節(jié)點(diǎn)向下一步執(zhí)行,直到比對流程結(jié)束為止。在流程執(zhí)行過程中,比對引擎還提供流程監(jiān)控功能用于監(jiān)控流程的執(zhí)行情況,并產(chǎn)生日志記錄方便查詢[6]。

        3 關(guān)鍵實(shí)現(xiàn)

        3.1 節(jié)點(diǎn) XML

        將節(jié)點(diǎn)配置的各種操作抽象成用XML語言來表示,使比對流程變的更為靈活、通用。圖3中比較節(jié)點(diǎn)gszjbj對應(yīng)的XML如下:

        圖3 工商和質(zhì)監(jiān)部門數(shù)據(jù)比對流程

        3.2 比對流程XML

        將多個不同類型的節(jié)點(diǎn)XML組成一個比對流程,從而形成一個完整的流程XML實(shí)例。流程的執(zhí)行順序按照XML中標(biāo)簽<Queue>中的值升序執(zhí)行,圖3中的流程用XML描述如下。

        3.3 解釋節(jié)點(diǎn)XML成SQL

        通過比對引擎解釋圖3中 比較節(jié)點(diǎn)gszjbj的XML得到SQL語句如下。

        //將比較成功的數(shù)據(jù)插入到成功表GSDJXX_SUCCESS中

        insert into CENTER.GSDJXX _SUCCESS(qyzch,qymc,qyfr,qydm)select source.qyzch,source.qymc,source.qyfr,source.qydm

        from comparetemp.GSDJXX source ,CENTER.GSDJXX target

        where(source.qyzch=target.qyzch);

        //將比較失敗的數(shù)據(jù)插入到失敗表GSDJXX_FAIL中

        insert into CENTER.GSDJXX _FAIL(qyzch,qymc,qyfr, qydm ) select source.qyzch, source.qymc,source.qyfr,source.qydm

        from comparetemp.GSDJXX source

        where not exists(select qyzch,qymc,qyfr,qydm from CENTER.GSDJXX target

        where(source.qyzch=target.qyzch));

        4 結(jié)束語

        基于流程驅(qū)動的數(shù)據(jù)比對方法,將數(shù)據(jù)清洗和數(shù)據(jù)比對中的功能定義成相應(yīng)的節(jié)點(diǎn),并將這些節(jié)點(diǎn)按照一定順序配置成比對流程,最后通過比對引擎解釋執(zhí)行流程及流程中的節(jié)點(diǎn)操作。在比對流程的執(zhí)行過程中,比對流程都解析成為SQL執(zhí)行,而非程序進(jìn)行數(shù)據(jù)處理,速度得到保證。實(shí)踐證明,該方法與SQL存儲過程執(zhí)行效率大體一致,但更具靈活性和通用性,是一種比較實(shí)用、可行的方法。由于該方法會創(chuàng)建很多中間臨時表用于存儲每一節(jié)點(diǎn)執(zhí)行后的結(jié)果數(shù)據(jù),存儲環(huán)節(jié)過多,下一步的工作是進(jìn)行性能優(yōu)化,減少過多的存儲環(huán)節(jié)。

        [1]SHI Yanhua.Data sharing knowledge based on modeling[D].Xi'an:Shanxi Normal University, College of Information Science and Engineering,2011 (in Chinese).[石彥華,基于知識建模的數(shù)據(jù)共享研究[D].西安:陜西師范大學(xué)信息科學(xué)與工程學(xué)院,2011.]

        [2]FAN Yushun.Workflow management technology foundation[M].Beijing:Tsinghua University Press,2007 (in Chinese).[范玉順.工作流管理技術(shù)基礎(chǔ)[M].北京:清華大學(xué)出版社,2001.]

        [3]DENG Shasha,CHEN Songqiao.Research on metadata based on model of heterogeneous data extracting and cleaning[J].Computer Engineering and Applications,2004,40 (30):175-177(in Chinese).[鄧莎莎,陳松喬.基于異構(gòu)數(shù)據(jù)抽取清洗模型的元數(shù)據(jù)的研究[J].計算機(jī)工程與應(yīng)用,2004,40(30):175-177.]

        [4]BI Jianxiu.The design and implementation of the enterprise basis information to share and apply system[D].Jinan:College of Information Science and Engineering of Shandong University,2008 (in Chinese).[畢建秀.企業(yè)基礎(chǔ)信息共享與應(yīng)用系統(tǒng)的設(shè)計與實(shí)現(xiàn)[D].濟(jì)南:山東大學(xué)信息科學(xué)與工程學(xué)院,2008.]

        [5]JIANG Yixun,WU Jian,LEI Yaolin.Design and implementation of a business credit information's data matching and integration[J].Microcomputer Applications,2011,27 (1):62-64(in Chinese).[姜詣勛,吳健,雷耀麟.企業(yè)信用信息數(shù)據(jù)比對和整合的設(shè)計與實(shí)現(xiàn)[J].微型電腦應(yīng)用,2011,27(1):62-64.]

        [6]YE Zhou,WANG Dong.Rules engine based data cleaning[J].Computer Engineering,2006 (23):52-54 (in Chinese).[葉舟,王東.基于規(guī)則引擎的數(shù)據(jù)清洗[J].計算機(jī)工程,2006(23):52-54.]

        [7]LI Huajun,SONG Shunlin.Research and implementation of heterogeneous database integration system[J].Computer Engineering and Designsssss,2008,29 (15):4025-4028 (in Chinese).[栗華軍,宋順林.異構(gòu)數(shù)據(jù)庫集成系統(tǒng)的研究與實(shí)現(xiàn)[J].計算機(jī)工程與設(shè)計,2008,29 (15):4025-4028.]

        [8]SUN Jingyi.The research and application of complex and related compare method based on the different constructional data[D].Shenyang:College of Information Science and Engineering of Shenyang Ligong University,2008 (in Chinese).[孫靖怡.基于異構(gòu)數(shù)據(jù)的復(fù)雜關(guān)聯(lián)比對方法的研究與應(yīng)用[D].沈陽:沈陽理工大學(xué)信息科學(xué)與工程學(xué)院,2008.]

        [9]CHANG Cheng.ETL-based solution for integrating data[D].Zhejiang:College of Computer Science of Zhejiang University,2010(in Chinese).[萇程.基于ETL的數(shù)據(jù)集成過程模型[D].浙江:浙江大學(xué)計算機(jī)學(xué)院,2010.]

        [10]CHEN Yifang,CHEN Qingkui,XU Fuyuan.Application integration and data conformity method in E-government[J].Computer Engineering,2008,34 (24):263-265 (in Chinese).[陳一方,陳慶奎,徐福緣.電子政務(wù)中的應(yīng)用集成與數(shù) 據(jù) 整 合 方 法[J]. 計 算 機(jī) 工 程,2008,34 (24):263-265.]

        猜你喜歡
        字段引擎邏輯
        刑事印證證明準(zhǔn)確達(dá)成的邏輯反思
        法律方法(2022年2期)2022-10-20 06:44:24
        圖書館中文圖書編目外包數(shù)據(jù)質(zhì)量控制分析
        邏輯
        創(chuàng)新的邏輯
        女人買買買的神邏輯
        37°女人(2017年11期)2017-11-14 20:27:40
        藍(lán)谷: “涉藍(lán)”新引擎
        商周刊(2017年22期)2017-11-09 05:08:31
        無形的引擎
        河南電力(2015年5期)2015-06-08 06:01:46
        基于Cocos2d引擎的PuzzleGame開發(fā)
        CNMARC304字段和314字段責(zé)任附注方式解析
        無正題名文獻(xiàn)著錄方法評述
        三级4级全黄60分钟| 国产一区二区三区精品毛片| 中文字幕亚洲综合久久综合| 无码小电影在线观看网站免费| 任你躁国产自任一区二区三区| 精品乱码一区二区三区四区| 亚洲AV无码精品色午夜超碰| 蜜桃av观看亚洲一区二区| 亚洲精品乱码久久麻豆| 五月婷婷开心五月激情| 国产自拍高清在线观看| 免费a级毛片无码a∨中文字幕下载 | 亚洲精品国产av天美传媒| 国产成人vr精品a视频| 免费视频一区二区| 无码高潮久久一级一级喷水| 大又黄又粗又爽少妇毛片| 中文字幕一区二区综合| av天堂午夜精品一区| 亚洲色婷婷一区二区三区| 久久精品夜夜夜夜夜久久| 亚洲国产一区二区三区最新| av资源吧首页在线观看| 日韩麻豆视频在线观看| 隔壁老王国产在线精品| 日日鲁鲁鲁夜夜爽爽狠狠视频97| 国产精品日韩欧美一区二区区| 亚洲精品国产福利在线观看| 成人av在线免费播放| 亚洲综合久久精品少妇av| 丁香婷婷激情视频在线播放 | 国产日产韩国级片网站| 国产精品沙发午睡系列| a级毛片免费完整视频| 性一乱一搞一交一伦一性| 国产91色在线|亚洲| 亚洲伊人久久综合精品| 国产精品髙潮呻吟久久av| 日本人妻系列中文字幕| 色噜噜亚洲男人的天堂| 99久久婷婷国产综合精品青草免费|