異構(gòu)數(shù)據(jù)的整合方法以及裝置的制造方法
【專利摘要】本發(fā)明公開了一種異構(gòu)數(shù)據(jù)的整合方法以及裝置。其中方法包括:分別預(yù)先建立至少一個(gè)目標(biāo)表與多源表之間的二維關(guān)系;根據(jù)二維關(guān)系生成至少一個(gè)目標(biāo)表的訂閱規(guī)則,其中,訂閱規(guī)則用于指示目標(biāo)表中目標(biāo)數(shù)據(jù)的來源;實(shí)時(shí)從多源表中采集針對(duì)目標(biāo)事物的源數(shù)據(jù),并基于至少一個(gè)目標(biāo)表的訂閱規(guī)則對(duì)實(shí)時(shí)采集到的源數(shù)據(jù)進(jìn)行匯總并緩存;按照預(yù)設(shè)策略將匯總并緩存后的源數(shù)據(jù)裝載至對(duì)應(yīng)的至少一個(gè)目標(biāo)表中。實(shí)現(xiàn)了源數(shù)據(jù)的一次抽取、多次寫入的效果,避免同一張表的相同數(shù)據(jù)被重復(fù)抽取多次的情況,提高了數(shù)據(jù)同步效率,并提高了數(shù)據(jù)實(shí)時(shí)性。
【專利說明】
異構(gòu)數(shù)據(jù)的整合方法以及裝置
技術(shù)領(lǐng)域
[0001]本發(fā)明涉及計(jì)算機(jī)技術(shù)領(lǐng)域,尤其涉及一種異構(gòu)數(shù)據(jù)的整合方法以及裝置。
【背景技術(shù)】
[0002]在數(shù)據(jù)整合過程中,需要經(jīng)過數(shù)據(jù)抽取、數(shù)據(jù)轉(zhuǎn)換清洗以及數(shù)據(jù)裝載三個(gè)過程,SP簡稱為ETL(數(shù)據(jù)倉庫技術(shù))O目前,在處理多表對(duì)多表,即目標(biāo)表數(shù)據(jù)來源于源端多張表,源端數(shù)據(jù)表被多個(gè)目標(biāo)表所依賴的情況下,通常采用先將源端數(shù)據(jù)表中的數(shù)據(jù)導(dǎo)入目標(biāo)前置庫中,之后再通過存儲(chǔ)過程或者其他工具將該目標(biāo)前置庫中的源端數(shù)據(jù)寫入該多個(gè)目標(biāo)表中。
[0003]但是,目前存在的問題是,通過上述數(shù)據(jù)整合方法在寫入不同的目標(biāo)表時(shí),需要按照目標(biāo)表依賴的源表進(jìn)行數(shù)據(jù)抽取、轉(zhuǎn)換清洗和裝載,因此存在同一張表的相同數(shù)據(jù)被重復(fù)抽取多次的問題,影響數(shù)據(jù)同步效率,從而影響數(shù)據(jù)實(shí)時(shí)效果。
【發(fā)明內(nèi)容】
[0004]本發(fā)明的目的旨在至少在一定程度上解決上述的技術(shù)問題之一。
[0005]為此,本發(fā)明的第一個(gè)目的在于提出一種異構(gòu)數(shù)據(jù)的整合方法。該方法實(shí)現(xiàn)了源數(shù)據(jù)的一次抽取、多次寫入的效果,避免同一張表的相同數(shù)據(jù)被重復(fù)抽取多次的情況,提高了數(shù)據(jù)同步效率,并提高了數(shù)據(jù)實(shí)時(shí)性。
[0006]本發(fā)明的第二個(gè)目的在于提出一種異構(gòu)數(shù)據(jù)的整合裝置。
[0007]為了實(shí)現(xiàn)上述目的,本發(fā)明第一方面實(shí)施例的異構(gòu)數(shù)據(jù)的整合方法,包括:分別預(yù)先建立至少一個(gè)目標(biāo)表與多源表之間的二維關(guān)系;根據(jù)所述二維關(guān)系生成所述至少一個(gè)目標(biāo)表的訂閱規(guī)則,其中,所述訂閱規(guī)則用于指示目標(biāo)表中目標(biāo)數(shù)據(jù)的來源;實(shí)時(shí)從所述多源表中采集針對(duì)目標(biāo)事物的源數(shù)據(jù),并基于所述至少一個(gè)目標(biāo)表的訂閱規(guī)則對(duì)實(shí)時(shí)采集到的源數(shù)據(jù)進(jìn)行匯總并緩存;按照預(yù)設(shè)策略將匯總并緩存后的源數(shù)據(jù)裝載至對(duì)應(yīng)的所述至少一個(gè)目標(biāo)表中。
[0008]根據(jù)本發(fā)明實(shí)施例的異構(gòu)數(shù)據(jù)的整合方法,可預(yù)先分別建立至少一個(gè)目標(biāo)表與多源表之間的二維關(guān)系,并根據(jù)二維關(guān)系生成至少一個(gè)目標(biāo)表的訂閱規(guī)則,在數(shù)據(jù)同步的過程中,可實(shí)時(shí)從多源表中采集針對(duì)目標(biāo)事物的源數(shù)據(jù),之后,基于至少一個(gè)目標(biāo)表的訂閱規(guī)則對(duì)實(shí)時(shí)采集到的源數(shù)據(jù)進(jìn)行匯總并緩存,最后,按照預(yù)設(shè)策略將匯總并緩存后的源數(shù)據(jù)裝載至對(duì)應(yīng)的至少一個(gè)目標(biāo)表中。即通過目標(biāo)表的訂閱規(guī)則,并基于該目標(biāo)表的訂閱規(guī)則對(duì)實(shí)時(shí)采集到的源數(shù)據(jù)進(jìn)行匯總并緩存,實(shí)現(xiàn)了源數(shù)據(jù)的一次抽取、多次寫入的效果,避免同一張表的相同數(shù)據(jù)被重復(fù)抽取多次的情況,提高了數(shù)據(jù)同步效率,并提高了數(shù)據(jù)實(shí)時(shí)性。
[0009]為了實(shí)現(xiàn)上述目的,本發(fā)明第二方面實(shí)施例的異構(gòu)數(shù)據(jù)的整合裝置,包括:建立模塊,用于分別預(yù)先建立至少一個(gè)目標(biāo)表與多源表之間的二維關(guān)系;生成模塊,用于根據(jù)所述二維關(guān)系生成所述至少一個(gè)目標(biāo)表的訂閱規(guī)則,其中,所述訂閱規(guī)則用于指示目標(biāo)表中目標(biāo)數(shù)據(jù)的來源;采集模塊,用于實(shí)時(shí)從所述多源表中采集針對(duì)目標(biāo)事物的源數(shù)據(jù);數(shù)據(jù)匯總模塊,用于基于所述至少一個(gè)目標(biāo)表的訂閱規(guī)則對(duì)實(shí)時(shí)采集到的源數(shù)據(jù)進(jìn)行匯總并緩存;裝載模塊,用于按照預(yù)設(shè)策略將匯總并緩存后的源數(shù)據(jù)裝載至對(duì)應(yīng)的所述至少一個(gè)目標(biāo)表中。
[0010]根據(jù)本發(fā)明實(shí)施例的異構(gòu)數(shù)據(jù)的整合裝置,可通過建立模塊分別預(yù)先建立至少一個(gè)目標(biāo)表與多源表之間的二維關(guān)系,生成模塊根據(jù)二維關(guān)系生成至少一個(gè)目標(biāo)表的訂閱規(guī)貝1J,采集模塊可實(shí)時(shí)從多源表中采集針對(duì)目標(biāo)事物的源數(shù)據(jù),數(shù)據(jù)匯總模塊基于至少一個(gè)目標(biāo)表的訂閱規(guī)則對(duì)實(shí)時(shí)采集到的源數(shù)據(jù)進(jìn)行匯總并緩存,裝載模塊按照預(yù)設(shè)策略將匯總并緩存后的源數(shù)據(jù)裝載至對(duì)應(yīng)的至少一個(gè)目標(biāo)表中。即通過目標(biāo)表的訂閱規(guī)則,并基于該目標(biāo)表的訂閱規(guī)則對(duì)實(shí)時(shí)采集到的源數(shù)據(jù)進(jìn)行匯總并緩存,實(shí)現(xiàn)了源數(shù)據(jù)的一次抽取、多次寫入的效果,避免同一張表的相同數(shù)據(jù)被重復(fù)抽取多次的情況,提高了數(shù)據(jù)同步效率,并提高了數(shù)據(jù)實(shí)時(shí)性。
[0011]本發(fā)明附加的方面和優(yōu)點(diǎn)將在下面的描述中部分給出,部分將從下面的描述中變得明顯,或通過本發(fā)明的實(shí)踐了解到。
【附圖說明】
[0012]本發(fā)明上述的和/或附加的方面和優(yōu)點(diǎn)從下面結(jié)合附圖對(duì)實(shí)施例的描述中將變得明顯和容易理解,其中,
[0013]圖1是根據(jù)本發(fā)明一個(gè)實(shí)施例的異構(gòu)數(shù)據(jù)的整合方法的流程圖;
[0014]圖2(a)和(b)是根據(jù)本發(fā)明一個(gè)實(shí)施例的異構(gòu)數(shù)據(jù)的整合方法的示例圖;
[0015]圖3是根據(jù)本發(fā)明一個(gè)實(shí)施例的異構(gòu)數(shù)據(jù)的整合裝置的結(jié)構(gòu)框圖;
[0016]圖4是根據(jù)本發(fā)明一個(gè)具體實(shí)施例的異構(gòu)數(shù)據(jù)的整合裝置的結(jié)構(gòu)框圖;
[0017]圖5是根據(jù)本發(fā)明另一個(gè)具體實(shí)施例的異構(gòu)數(shù)據(jù)的整合裝置的結(jié)構(gòu)框圖。
【具體實(shí)施方式】
[0018]下面詳細(xì)描述本發(fā)明的實(shí)施例,所述實(shí)施例的示例在附圖中示出,其中自始至終相同或類似的標(biāo)號(hào)表示相同或類似的元件或具有相同或類似功能的元件。下面通過參考附圖描述的實(shí)施例是示例性的,旨在用于解釋本發(fā)明,而不能理解為對(duì)本發(fā)明的限制。
[0019]下面參考附圖描述根據(jù)本發(fā)明實(shí)施例的異構(gòu)數(shù)據(jù)的整合方法以及裝置。
[0020]圖1是根據(jù)本發(fā)明一個(gè)實(shí)施例的異構(gòu)數(shù)據(jù)的整合方法的流程圖。如圖1所示,該異構(gòu)數(shù)據(jù)的整合方法可以包括:
[0021 ] SI 10,分別預(yù)先建立至少一個(gè)目標(biāo)表與多源表之間的二維關(guān)系。其中,在本發(fā)明的實(shí)施例中,“至少一個(gè)”可理解為一個(gè)或多個(gè)。
[0022]需要說明的是,在本發(fā)明的實(shí)施例中,在預(yù)先建立目標(biāo)表與多源表之間的二維關(guān)系的前提是:目標(biāo)表已與源表進(jìn)行過數(shù)據(jù)同步,即,確保目標(biāo)表中的所有目標(biāo)數(shù)據(jù)都來源于源表。
[0023]具體而言,在本發(fā)明的一個(gè)實(shí)施例中,分別確定至少一個(gè)目標(biāo)表中各個(gè)目標(biāo)數(shù)據(jù)所對(duì)應(yīng)的數(shù)據(jù)組合來源并根據(jù)至少一個(gè)目標(biāo)表中各個(gè)目標(biāo)數(shù)據(jù)所對(duì)應(yīng)的數(shù)據(jù)組合來源以建立至少一個(gè)目標(biāo)表與多源表之間的二維關(guān)系??梢岳斫?,上述二維關(guān)系可理解為目標(biāo)表與源表之間的關(guān)系,也就是說目標(biāo)表中的目標(biāo)數(shù)據(jù)都來源于哪些源表。
[0024]更具體地,可先獲取目標(biāo)表中的所有目標(biāo)數(shù)據(jù),并針對(duì)每個(gè)目標(biāo)數(shù)據(jù),確定每個(gè)目標(biāo)數(shù)據(jù)所對(duì)應(yīng)的數(shù)據(jù)組合來源,即該目標(biāo)數(shù)據(jù)是由哪個(gè)或哪些源表中的數(shù)據(jù)組合而成的,之后,可根據(jù)該目標(biāo)數(shù)據(jù)的數(shù)據(jù)組合來源建立該目標(biāo)表與多源表之間的二維關(guān)系,即該目標(biāo)表與哪個(gè)或哪些源表之間存在對(duì)應(yīng)關(guān)系可以理解,在本發(fā)明的實(shí)施例中,該源表的個(gè)數(shù)為多個(gè)。其中,在本發(fā)明的實(shí)施例中,該二維關(guān)系可包括目標(biāo)表中目標(biāo)數(shù)據(jù)的來源于哪些源表、以及目標(biāo)表中各個(gè)字段與該源表中各個(gè)字段的轉(zhuǎn)換關(guān)系。
[0025]舉例而言,假設(shè)目標(biāo)表I中包含數(shù)據(jù)列Al,確定該目標(biāo)表I中數(shù)據(jù)列Al是由數(shù)據(jù)列Al I和數(shù)據(jù)列A12組合而成,并確定該數(shù)據(jù)列Al I來源源表A、數(shù)據(jù)列A12來源源表B。之后,可根據(jù)該數(shù)據(jù)列Al的數(shù)據(jù)組合來源以建立該目標(biāo)表I與多源表之間的二維關(guān)系,即目標(biāo)表I與源表A、與源表B存在二維關(guān)系。
[0026]S120,根據(jù)二維關(guān)系生成至少一個(gè)目標(biāo)表的訂閱規(guī)則,其中,該訂閱規(guī)則用于指示目標(biāo)表中目標(biāo)數(shù)據(jù)的來源。
[0027]具體地,針對(duì)各個(gè)目標(biāo)表,在建立該目標(biāo)表與多源表之間的二維關(guān)系之后,可根據(jù)該二維關(guān)系確定該目標(biāo)表中的目標(biāo)數(shù)據(jù)依賴于哪個(gè)或哪些源表的哪個(gè)或哪些源數(shù)據(jù),并根據(jù)該依賴關(guān)系來生成該目標(biāo)表的訂閱規(guī)則。例如,假設(shè)目標(biāo)表I中包含數(shù)據(jù)列Al、A2和Cl,確定數(shù)據(jù)列Al是由源數(shù)據(jù)AU和源數(shù)據(jù)A12組合而成,并確定該源數(shù)據(jù)AU來源源表A、源數(shù)據(jù)A12來源源表B,數(shù)據(jù)列Cl由源表C的源數(shù)據(jù)Cll組合而成的,之后,可將所依賴的屬于同一個(gè)源表的源數(shù)據(jù)集合在一起,并以源表為維度,可以生成該目標(biāo)表I的訂閱規(guī)則為:目標(biāo)表1 =源表A(All)+源表B(A12)+源表C(Cll)。
[0028]S130,實(shí)時(shí)從多源表中采集針對(duì)目標(biāo)事物的源數(shù)據(jù),并基于至少一個(gè)目標(biāo)表的訂閱規(guī)則對(duì)實(shí)時(shí)采集到的源數(shù)據(jù)進(jìn)行匯總并緩存。
[0029]具體而言,在本發(fā)明的實(shí)施例中,可先確定多源表的類型信息,并根據(jù)類型信息確定多源表對(duì)應(yīng)的采集方式,之后,可根據(jù)采集方式實(shí)時(shí)從多源表中采集針對(duì)目標(biāo)事物的源數(shù)據(jù)。其中,在本發(fā)明的實(shí)施例中,該類型信息可理解為該多源表所在數(shù)據(jù)庫的類型,如Oracle數(shù)據(jù)庫、MySQL、BD2等;該類型信息還可理解為多源表中表結(jié)構(gòu),該表結(jié)構(gòu)包括如字段、類型、主鍵、外鍵、索引等。其中,該目標(biāo)事物即可理解為目標(biāo)數(shù)據(jù)庫事物。
[0030]也就是說,可確定該多源表的類型,并針對(duì)不同類型的多源表采用不同的采集方式,并根據(jù)不同的采集方式實(shí)時(shí)從多源表中采集針對(duì)目標(biāo)事物的源數(shù)據(jù)。
[0031 ]在本發(fā)明的一個(gè)實(shí)施例中,根據(jù)采集方式實(shí)時(shí)從多源表中采集針對(duì)目標(biāo)事物的源數(shù)據(jù)的具體實(shí)現(xiàn)過程可如下:針對(duì)目標(biāo)事物,根據(jù)多源表所對(duì)應(yīng)的數(shù)據(jù)庫日志判斷是否存在有變更動(dòng)作的源表;如果存在有變更動(dòng)作的源表,則根據(jù)采集方式從有變更動(dòng)作的源表中采集變更動(dòng)作對(duì)應(yīng)的源數(shù)據(jù)。應(yīng)當(dāng)理解,該數(shù)據(jù)庫日志中記載了該數(shù)據(jù)庫中數(shù)據(jù)表的數(shù)據(jù)變化過程。
[0032]更具體地,針對(duì)該目標(biāo)事物,可先獲取該目標(biāo)事物所涉及到的多源表對(duì)應(yīng)的數(shù)據(jù)庫日志文件,并讀取該多源表對(duì)應(yīng)的數(shù)據(jù)庫日志文件以判斷是否存在有變更動(dòng)作的源表,若存在,則根據(jù)該有變更動(dòng)作的源表所對(duì)應(yīng)的采集方式,從該有變更動(dòng)作的源表中采集該變更動(dòng)作對(duì)應(yīng)的源數(shù)據(jù)。其中,在本發(fā)明的實(shí)施例中,該變更動(dòng)作可包括但不限于增加記錄、修改記錄以及刪除記錄等。
[0033]在實(shí)時(shí)從多源表中采集針對(duì)該目標(biāo)事物的源數(shù)據(jù)之后,可基于目標(biāo)表的訂閱規(guī)則對(duì)實(shí)時(shí)采集到的源數(shù)據(jù)進(jìn)行匯總并緩存。也就是說,基于目標(biāo)表的訂閱規(guī)則,可將實(shí)時(shí)采集到的源數(shù)據(jù)匯總到該目標(biāo)表對(duì)應(yīng)的緩存池中并進(jìn)行緩存,即基于訂閱規(guī)則,可將采集到的源數(shù)據(jù)匯總到訂閱了該源數(shù)據(jù)的目標(biāo)表對(duì)應(yīng)的緩存池中。例如,假設(shè)采集到的源數(shù)據(jù)為Al,該源數(shù)據(jù)Al可分別對(duì)應(yīng)目標(biāo)表I和目標(biāo)表2,也就是目標(biāo)表I和目標(biāo)表2中的目標(biāo)數(shù)據(jù)均與源數(shù)據(jù)Al有依賴關(guān)系,當(dāng)基于目標(biāo)表I和目標(biāo)表2的訂閱規(guī)則,可將采集到的源數(shù)據(jù)Al匯總到目標(biāo)表I對(duì)應(yīng)的緩存池中并進(jìn)行緩存,同將采集到的源數(shù)據(jù)Al匯總到目標(biāo)表2對(duì)應(yīng)的緩存池中并進(jìn)行緩存。由此,通過對(duì)采集到的源數(shù)據(jù)進(jìn)行匯總并緩存,實(shí)現(xiàn)了源數(shù)據(jù)的一次抽取、多次寫入的效果,提升了數(shù)據(jù)實(shí)時(shí)性。
[0034]S140,按照預(yù)設(shè)策略將匯總并緩存后的源數(shù)據(jù)裝載至對(duì)應(yīng)的至少一個(gè)目標(biāo)表中。
[0035]具體地,可先確定目標(biāo)表中目標(biāo)數(shù)據(jù)的排列順序,之后,可按照預(yù)設(shè)策略,根據(jù)該排列順序?qū)⒃撃繕?biāo)表所對(duì)應(yīng)的匯總并緩存后的源數(shù)據(jù)裝載到該目標(biāo)表中。其中,在本發(fā)明的實(shí)施例中,該預(yù)設(shè)策略可包括但不限于:當(dāng)目標(biāo)事物所對(duì)應(yīng)的所有數(shù)據(jù)全部采集完成時(shí),將匯總并緩存后的源數(shù)據(jù)裝載到對(duì)應(yīng)的目標(biāo)表中;確定目標(biāo)表的主鍵信息,并根據(jù)該主鍵信息確定多源表中的主源表和從源表,并每當(dāng)采集到主源表中的源數(shù)據(jù)時(shí)立即將該源數(shù)據(jù)裝載到目標(biāo)表中,當(dāng)從源表中的所有源數(shù)據(jù)全部采集完成并匯總且緩存后,將匯總并緩存后的該從源表中的所有數(shù)據(jù)裝載到對(duì)應(yīng)的目標(biāo)表中??梢岳斫?,上述給出的預(yù)設(shè)策略的方式僅是兩種示例,并不能作為對(duì)本發(fā)明的具體限定。
[0036]為了保障數(shù)據(jù)的準(zhǔn)確性以及時(shí)效性,進(jìn)一步地,在本發(fā)明的一個(gè)實(shí)施例中,在按照預(yù)設(shè)策略將匯總并緩存后的源數(shù)據(jù)裝載至對(duì)應(yīng)的至少一個(gè)目標(biāo)表中之后,該整合方法還可包括:將緩存后的源數(shù)據(jù)從緩存池中進(jìn)行清除。也就是說,在將緩存池中的源數(shù)據(jù)裝載到對(duì)應(yīng)的目標(biāo)表中之后,可將該源數(shù)據(jù)從該緩存池中進(jìn)行清除。由此,在節(jié)省緩存空間的同時(shí),還保障了數(shù)據(jù)的準(zhǔn)確性和時(shí)效性,提高了可用性及可行性。
[0037]需要說明的是,在本發(fā)明的一個(gè)實(shí)施例中,在基于至少一個(gè)目標(biāo)表的訂閱規(guī)則對(duì)實(shí)時(shí)采集到的源數(shù)據(jù)進(jìn)行匯總并緩存之后,在按照預(yù)設(shè)策略將匯總并緩存后的源數(shù)據(jù)裝載至對(duì)應(yīng)的至少一個(gè)目標(biāo)表中之前,該整合方法還可包括:確定至少一個(gè)目標(biāo)表中目標(biāo)數(shù)據(jù)的目標(biāo)數(shù)據(jù)類型,并將緩存池中針對(duì)至少一個(gè)目標(biāo)表所需的源數(shù)據(jù)的數(shù)據(jù)類型轉(zhuǎn)換為目標(biāo)數(shù)據(jù)類型。也就是說,在將采集到的源數(shù)據(jù)進(jìn)行緩存后,針對(duì)目標(biāo)表,可根據(jù)目標(biāo)數(shù)據(jù)類型將緩存的該目標(biāo)表所依賴的源數(shù)據(jù)的數(shù)據(jù)類型轉(zhuǎn)換為目標(biāo)數(shù)據(jù)類型。由此,保證了數(shù)據(jù)的數(shù)據(jù)類型的標(biāo)準(zhǔn)化。
[0038]需要說明的是,在本發(fā)明的一個(gè)實(shí)施例中,在基于至少一個(gè)目標(biāo)表的訂閱規(guī)則對(duì)實(shí)時(shí)采集到的源數(shù)據(jù)進(jìn)行匯總并緩存之后,在按照預(yù)設(shè)策略將匯總并緩存后的源數(shù)據(jù)裝載至對(duì)應(yīng)的至少一個(gè)目標(biāo)表中之前,該整合方法還可包括:將緩存后的源數(shù)據(jù)進(jìn)行清洗。也就是說,在將采集到的源數(shù)據(jù)進(jìn)行緩存后,針對(duì)同一個(gè)目標(biāo)表,可將采集到的源數(shù)據(jù)進(jìn)行數(shù)據(jù)一致性的檢查、無效值和缺失值的處理等。由此,保證了數(shù)據(jù)的一致性、正確性及完整性。
[0039]進(jìn)一步地,在本發(fā)明的一個(gè)實(shí)施例中,在對(duì)異構(gòu)數(shù)據(jù)進(jìn)行整合的過程中,可對(duì)從源表中采集到的源數(shù)據(jù)進(jìn)行標(biāo)記,并在對(duì)采集到的源數(shù)據(jù)進(jìn)行匯總并緩存、且將匯總并緩存后的源數(shù)據(jù)進(jìn)行裝載時(shí)也均帶著該標(biāo)記,使得通過對(duì)源數(shù)據(jù)進(jìn)行標(biāo)記,可以實(shí)現(xiàn)數(shù)據(jù)標(biāo)記追蹤的功能。
[0040]根據(jù)本發(fā)明實(shí)施例的異構(gòu)數(shù)據(jù)的整合方法,可先分別建立至少一個(gè)目標(biāo)表與多源表之間的二維關(guān)系,并根據(jù)二維關(guān)系生成至少一個(gè)目標(biāo)表的訂閱規(guī)則,并可實(shí)時(shí)從多源表中采集針對(duì)目標(biāo)事物的源數(shù)據(jù),之后,基于至少一個(gè)目標(biāo)表的訂閱規(guī)則對(duì)實(shí)時(shí)采集到的源數(shù)據(jù)進(jìn)行匯總并緩存,最后,按照預(yù)設(shè)策略將匯總并緩存后的源數(shù)據(jù)裝載至對(duì)應(yīng)的至少一個(gè)目標(biāo)表中。即通過目標(biāo)表的訂閱規(guī)則,并基于該目標(biāo)表的訂閱規(guī)則對(duì)實(shí)時(shí)采集到的源數(shù)據(jù)進(jìn)行匯總并緩存,實(shí)現(xiàn)了源數(shù)據(jù)的一次抽取、多次寫入的效果,避免同一張表的相同數(shù)據(jù)被重復(fù)抽取多次的情況,提高了數(shù)據(jù)同步效率,并提高了數(shù)據(jù)實(shí)時(shí)性。
[0041]為了使得本領(lǐng)域技術(shù)人員能夠更加清楚地了解本發(fā)明,下面可舉例說明。
[0042]舉例而言,假設(shè)目標(biāo)數(shù)據(jù)庫中的目標(biāo)表I和目標(biāo)表2所依賴的源表為源表A、源表B、源表C和源表D,如圖2 (a)所示,為源表A源表B、源表C和源表D、以及目標(biāo)表I和目標(biāo)表2中數(shù)據(jù)的對(duì)應(yīng)關(guān)系。例如,如圖2(b)所示,在進(jìn)行數(shù)據(jù)整合的過程中,以目標(biāo)表I為例,可預(yù)先獲取目標(biāo)表I中的每個(gè)數(shù)據(jù)列為Al、A2、C1、B2和B3,并確定這些目標(biāo)數(shù)據(jù)所依賴的源表依次為源表A、源表C和源表B,之后,可根據(jù)該依賴關(guān)系來建立目標(biāo)表I與源表A、B和C之間的二維關(guān)系,并以源表為維度,根據(jù)這些二維關(guān)系建立該目標(biāo)表I的訂閱規(guī)則為:目標(biāo)表I =源表A(A1,A2)+源表B(B2,B3)+源表C(C1),以表示該目標(biāo)表I中的目標(biāo)數(shù)據(jù)來源于哪些源表。在數(shù)據(jù)實(shí)時(shí)同步的過程中,當(dāng)檢測到源表A、B和C中有數(shù)據(jù)變更動(dòng)作時(shí),進(jìn)行采集操作,S卩:可從源表A、源表B和源表C中采集具有變更動(dòng)作的源數(shù)據(jù),即源數(shù)據(jù)Al、源數(shù)據(jù)A2、源數(shù)據(jù)Cl、源數(shù)據(jù)B2和源數(shù)據(jù)B3,之后,可基于上述目標(biāo)表I的訂閱規(guī)則對(duì)該采集到的源數(shù)據(jù)進(jìn)行匯總并緩存,如針對(duì)目標(biāo)表1,識(shí)別并緩存到的源數(shù)據(jù)為A1、A2、B2、B3和Cl,可以理解,源數(shù)據(jù)的緩存順序可與采集并識(shí)別到的順序有關(guān),此時(shí)可對(duì)緩存到的源數(shù)據(jù)進(jìn)行數(shù)據(jù)轉(zhuǎn)換、清洗處理。之后,可根據(jù)目標(biāo)表I中目標(biāo)數(shù)據(jù)的排列順序?qū)⒕彺婧蟮脑磾?shù)據(jù)Al、源數(shù)據(jù)A2、源數(shù)據(jù)Cl、源數(shù)據(jù)B2和源數(shù)據(jù)B3裝載到目標(biāo)表I中。
[0043]為了實(shí)現(xiàn)上述實(shí)施例,本發(fā)明還提出了一種異構(gòu)數(shù)據(jù)的整合裝置。
[0044]圖3是根據(jù)本發(fā)明一個(gè)實(shí)施例的異構(gòu)數(shù)據(jù)的整合裝置的結(jié)構(gòu)框圖。如圖3所示,該異構(gòu)數(shù)據(jù)的整合裝置可以包括:建立模塊100、生成模塊200、采集模塊300、數(shù)據(jù)匯總模塊400和裝載模塊500。
[0045]具體地,建立模塊100可用于分別預(yù)先建立至少一個(gè)目標(biāo)表與多源表之間的二維關(guān)系。其中,在本發(fā)明的實(shí)施例中,“至少一個(gè)”可理解為一個(gè)或多個(gè)。需要說明的是,在本發(fā)明的實(shí)施例中,建立模塊100在預(yù)先建立目標(biāo)表與多源表之間的二維關(guān)系的前提是:目標(biāo)表已與源表進(jìn)行過數(shù)據(jù)同步,即,確保目標(biāo)表中的所有目標(biāo)數(shù)據(jù)都來源于源表。
[0046]具體而言,在本發(fā)明的實(shí)施例中,建立模塊100可先分別確定至少一個(gè)目標(biāo)表中各個(gè)目標(biāo)數(shù)據(jù)所對(duì)應(yīng)的數(shù)據(jù)組合來源,之后,根據(jù)至少一個(gè)目標(biāo)表中各個(gè)目標(biāo)數(shù)據(jù)所對(duì)應(yīng)的數(shù)據(jù)組合來源以建立至少一個(gè)目標(biāo)表與多源表之間的二維關(guān)系??梢岳斫?,上述二維關(guān)系可理解為目標(biāo)表與源表之間的關(guān)系,也就是說目標(biāo)表中的目標(biāo)數(shù)據(jù)都來源于哪些源表。
[0047]更具體地,建立模塊100可先獲取目標(biāo)表中的所有目標(biāo)數(shù)據(jù),并針對(duì)每個(gè)目標(biāo)數(shù)據(jù),確定每個(gè)目標(biāo)數(shù)據(jù)所對(duì)應(yīng)的數(shù)據(jù)組合來源,即該目標(biāo)數(shù)據(jù)是由哪個(gè)或哪些源表中的數(shù)據(jù)組合而成的,之后,可根據(jù)該目標(biāo)數(shù)據(jù)的數(shù)據(jù)組合來源建立該目標(biāo)表與多源表之間的二維關(guān)系,即該目標(biāo)表與哪個(gè)或哪些源表之間存在對(duì)應(yīng)關(guān)系。其中,在本發(fā)明的實(shí)施例中,該二維關(guān)系可包括目標(biāo)表中目標(biāo)數(shù)據(jù)的來源于哪些源表、以及目標(biāo)表中各個(gè)字段與該源表中各個(gè)字段的轉(zhuǎn)換關(guān)系??梢岳斫?,在本發(fā)明的實(shí)施例中,該源表的個(gè)數(shù)為多個(gè)。
[0048]舉例而言,假設(shè)目標(biāo)表I中包含數(shù)據(jù)列Al,建立模塊100可先確定該目標(biāo)表I中數(shù)據(jù)列Al是由數(shù)據(jù)列Al I和數(shù)據(jù)列A12組合而成,并確定該數(shù)據(jù)列Al I來源源表A、數(shù)據(jù)列A12來源源表B。之后,可根據(jù)該數(shù)據(jù)列Al的數(shù)據(jù)組合來源以建立該目標(biāo)表I與多源表之間的二維關(guān)系,即目標(biāo)表I與源表A、與源表B存在二維關(guān)系。
[0049]生成模塊200可用于根據(jù)二維關(guān)系生成至少一個(gè)目標(biāo)表的訂閱規(guī)則,其中,訂閱規(guī)則用于指示目標(biāo)表中目標(biāo)數(shù)據(jù)的來源。更具體地,針對(duì)各個(gè)目標(biāo)表,在建立模塊100建立該目標(biāo)表與多源表之間的二維關(guān)系之后,生成模塊200可根據(jù)該二維關(guān)系確定該目標(biāo)表中的目標(biāo)數(shù)據(jù)依賴于哪個(gè)或哪些源表的哪個(gè)或哪些源數(shù)據(jù),并根據(jù)該依賴關(guān)系來生成該目標(biāo)表的訂閱規(guī)則。例如,假設(shè)目標(biāo)表I中包含數(shù)據(jù)列Al、A2和Cl,生成模塊200可先確定數(shù)據(jù)列Al是由源數(shù)據(jù)All和源數(shù)據(jù)A12組合而成,并確定該源數(shù)據(jù)All來源源表A、源數(shù)據(jù)A12來源源表B,數(shù)據(jù)列Cl由源表C的源數(shù)據(jù)CU組合而成的,之后,可將所依賴的屬于同一個(gè)源表的源數(shù)據(jù)集合在一起,并以源表為維度,可以生成該目標(biāo)表I的訂閱規(guī)則為:目標(biāo)表1 =源表A(All)+源表B(A12)+源表C(Cll)。
[0050]采集模塊300可用于實(shí)時(shí)從多源表中采集針對(duì)目標(biāo)事物的源數(shù)據(jù)。
[0051 ]具體而言,在本發(fā)明的一個(gè)實(shí)施例中,如圖4所示,該采集模塊300可包括:確定單元310和采集單元320。其中,確定單元310可用于確定多源表的類型信息,并根據(jù)類型信息確定多源表對(duì)應(yīng)的采集方式。采集單元320可用于根據(jù)采集方式實(shí)時(shí)從多源表中采集針對(duì)目標(biāo)事物的源數(shù)據(jù)。其中,在本發(fā)明的實(shí)施例中,該類型信息可理解為該多源表所在數(shù)據(jù)庫的類型,如Oracle數(shù)據(jù)庫、MySQL、K)2等;該類型信息還可理解為多源表中表結(jié)構(gòu),該表結(jié)構(gòu)包括如字段、類型、主鍵、外鍵、索引等。其中,該目標(biāo)事物即可理解為目標(biāo)數(shù)據(jù)庫事物。
[0052]也就是說,確定單元310可確定該多源表的類型,并針對(duì)不同類型的多源表采用不同的采集方式。采集單元320根據(jù)不同的采集方式實(shí)時(shí)從多源表中采集針對(duì)目標(biāo)事物的源數(shù)據(jù)。
[0053]在本發(fā)明的實(shí)施例中,采集單元320根據(jù)采集方式實(shí)時(shí)從多源表中采集針對(duì)目標(biāo)事物的源數(shù)據(jù)的具體實(shí)現(xiàn)過程可如下:針對(duì)目標(biāo)事物,根據(jù)多源表所對(duì)應(yīng)的數(shù)據(jù)庫日志判斷是否存在有變更動(dòng)作的源表;在存儲(chǔ)有變更動(dòng)作的源表時(shí),根據(jù)采集方式從有變更動(dòng)作的源表中采集變更動(dòng)作對(duì)應(yīng)的源數(shù)據(jù)。應(yīng)當(dāng)理解,該數(shù)據(jù)庫日志中記載了該數(shù)據(jù)庫中數(shù)據(jù)表的數(shù)據(jù)變化過程。
[0054]更具體地,采集單元320針對(duì)該目標(biāo)事物,可先獲取該目標(biāo)事物所涉及到的多源表對(duì)應(yīng)的數(shù)據(jù)庫日志文件,并讀取該多源表對(duì)應(yīng)的數(shù)據(jù)庫日志文件以判斷是否存在有變更動(dòng)作的源表,若存在,則根據(jù)該有變更動(dòng)作的源表所對(duì)應(yīng)的采集方式,從該有變更動(dòng)作的源表中采集該變更動(dòng)作對(duì)應(yīng)的源數(shù)據(jù)。其中,在本發(fā)明的實(shí)施例中,該變更動(dòng)作可包括但不限于增加記錄、修改記錄以及刪除記錄等。
[0055]數(shù)據(jù)匯總模塊400可用于基于至少一個(gè)目標(biāo)表的訂閱規(guī)則對(duì)實(shí)時(shí)采集到的源數(shù)據(jù)進(jìn)行匯總并緩存。也就是說,數(shù)據(jù)匯總模塊400基于目標(biāo)表的訂閱規(guī)則,可將實(shí)時(shí)采集到的源數(shù)據(jù)匯總到該目標(biāo)表對(duì)應(yīng)的緩存池中并進(jìn)行緩存。例如,假設(shè)采集到的源數(shù)據(jù)為Al,該源數(shù)據(jù)Al可分別對(duì)應(yīng)目標(biāo)表I和目標(biāo)表2,也就是目標(biāo)表I和目標(biāo)表2中的目標(biāo)數(shù)據(jù)均與源數(shù)據(jù)Al有依賴關(guān)系,當(dāng)基于目標(biāo)表I和目標(biāo)表2的訂閱規(guī)則,可將采集到的源數(shù)據(jù)Al匯總到目標(biāo)表I對(duì)應(yīng)的緩存池中并進(jìn)行緩存,同將采集到的源數(shù)據(jù)Al匯總到目標(biāo)表2對(duì)應(yīng)的緩存池中并進(jìn)行緩存。由此,通過對(duì)采集到的源數(shù)據(jù)進(jìn)行匯總并緩存,實(shí)現(xiàn)了源數(shù)據(jù)的一次抽取、多次寫入的效果,提升了數(shù)據(jù)實(shí)時(shí)性。
[0056]裝載模塊500可用于按照預(yù)設(shè)策略將匯總并緩存后的源數(shù)據(jù)裝載至對(duì)應(yīng)的至少一個(gè)目標(biāo)表中。更具體地,裝載模塊500可先確定目標(biāo)表中目標(biāo)數(shù)據(jù)的排列順序,之后,可按照預(yù)設(shè)策略,根據(jù)該排列順序?qū)⒃撃繕?biāo)表所對(duì)應(yīng)的匯總并緩存后的源數(shù)據(jù)裝載到該目標(biāo)表中。其中,在本發(fā)明的實(shí)施例中,該預(yù)設(shè)策略可包括但不限于:當(dāng)目標(biāo)事物所對(duì)應(yīng)的所有數(shù)據(jù)全部采集完成時(shí),將匯總并緩存后的源數(shù)據(jù)裝載到對(duì)應(yīng)的目標(biāo)表中;確定目標(biāo)表的主鍵信息,并根據(jù)該主鍵信息確定多源表中的主源表和從源表,并每當(dāng)采集到主源表中的源數(shù)據(jù)時(shí)立即將該源數(shù)據(jù)裝載到目標(biāo)表中,當(dāng)從源表中的所有源數(shù)據(jù)全部采集完成并匯總且緩存后,將匯總并緩存后的該從源表中的所有數(shù)據(jù)裝載到對(duì)應(yīng)的目標(biāo)表中。可以理解,上述給出的預(yù)設(shè)策略的方式僅是兩種示例,并不能作為對(duì)本發(fā)明的具體限定。
[0057]為了保障數(shù)據(jù)的準(zhǔn)確性以及時(shí)效性,進(jìn)一步地,在本發(fā)明的一個(gè)實(shí)施例中,如圖5所示,該整合裝置還可包括:清除模塊600,清除模塊600可用于裝載模塊500按照預(yù)設(shè)策略將匯總并緩存后的源數(shù)據(jù)裝載至對(duì)應(yīng)的至少一個(gè)目標(biāo)表中之后,將緩存后的源數(shù)據(jù)從緩存池中進(jìn)行清除。也就是說,在裝載模塊500將緩存池中的源數(shù)據(jù)裝載到對(duì)應(yīng)的目標(biāo)表中之后,清除模塊600可將該源數(shù)據(jù)從該緩存池中進(jìn)行清除。由此,在節(jié)省緩存空間的同時(shí),還保障了數(shù)據(jù)的準(zhǔn)確性和時(shí)效性,提高了可用性及可行性。
[0058]根據(jù)本發(fā)明實(shí)施例的異構(gòu)數(shù)據(jù)的整合裝置,可通過建立模塊分別預(yù)先建立至少一個(gè)目標(biāo)表中所有目標(biāo)數(shù)據(jù)之間的二維關(guān)系,生成模塊根據(jù)二維關(guān)系生成至少一個(gè)目標(biāo)表的訂閱規(guī)則,采集模塊可實(shí)時(shí)從多源表中采集針對(duì)目標(biāo)事物的源數(shù)據(jù),數(shù)據(jù)匯總模塊基于至少一個(gè)目標(biāo)表的訂閱規(guī)則對(duì)實(shí)時(shí)采集到的源數(shù)據(jù)進(jìn)行匯總并緩存,裝載模塊按照預(yù)設(shè)策略將匯總并緩存后的源數(shù)據(jù)裝載至對(duì)應(yīng)的至少一個(gè)目標(biāo)表中。即通過目標(biāo)表的訂閱規(guī)則,并基于該目標(biāo)表的訂閱規(guī)則對(duì)實(shí)時(shí)采集到的源數(shù)據(jù)進(jìn)行匯總并緩存,實(shí)現(xiàn)了源數(shù)據(jù)的一次抽取、多次寫入的效果,避免同一張表的相同數(shù)據(jù)被重復(fù)抽取多次的情況,提高了數(shù)據(jù)同步效率,并提高了數(shù)據(jù)實(shí)時(shí)性。
[0059]在本發(fā)明的描述中,需要理解的是,“多個(gè)”的含義是至少兩個(gè),例如兩個(gè),三個(gè)等,
除非另有明確具體的限定。
[0060]在本說明書的描述中,參考術(shù)語“一個(gè)實(shí)施例”、“一些實(shí)施例”、“示例”、“具體示例”、或“一些示例”等的描述意指結(jié)合該實(shí)施例或示例描述的具體特征、結(jié)構(gòu)、材料或者特點(diǎn)包含于本發(fā)明的至少一個(gè)實(shí)施例或示例中。在本說明書中,對(duì)上述術(shù)語的示意性表述不必須針對(duì)的是相同的實(shí)施例或示例。而且,描述的具體特征、結(jié)構(gòu)、材料或者特點(diǎn)可以在任一個(gè)或多個(gè)實(shí)施例或示例中以合適的方式結(jié)合。此外,在不相互矛盾的情況下,本領(lǐng)域的技術(shù)人員可以將本說明書中描述的不同實(shí)施例或示例以及不同實(shí)施例或示例的特征進(jìn)行結(jié)合和組合。
[0061]流程圖中或在此以其他方式描述的任何過程或方法描述可以被理解為,表示包括一個(gè)或更多個(gè)用于實(shí)現(xiàn)特定邏輯功能或過程的步驟的可執(zhí)行指令的代碼的模塊、片段或部分,并且本發(fā)明的優(yōu)選實(shí)施方式的范圍包括另外的實(shí)現(xiàn),其中可以不按所示出或討論的順序,包括根據(jù)所涉及的功能按基本同時(shí)的方式或按相反的順序,來執(zhí)行功能,這應(yīng)被本發(fā)明的實(shí)施例所屬技術(shù)領(lǐng)域的技術(shù)人員所理解。
[0062]在流程圖中表示或在此以其他方式描述的邏輯和/或步驟,例如,可以被認(rèn)為是用于實(shí)現(xiàn)邏輯功能的可執(zhí)行指令的定序列表,可以具體實(shí)現(xiàn)在任何計(jì)算機(jī)可讀介質(zhì)中,以供指令執(zhí)行系統(tǒng)、裝置或設(shè)備(如基于計(jì)算機(jī)的系統(tǒng)、包括處理器的系統(tǒng)或其他可以從指令執(zhí)行系統(tǒng)、裝置或設(shè)備取指令并執(zhí)行指令的系統(tǒng))使用,或結(jié)合這些指令執(zhí)行系統(tǒng)、裝置或設(shè)備而使用。就本說明書而言,〃計(jì)算機(jī)可讀介質(zhì)〃可以是任何可以包含、存儲(chǔ)、通信、傳播或傳輸程序以供指令執(zhí)行系統(tǒng)、裝置或設(shè)備或結(jié)合這些指令執(zhí)行系統(tǒng)、裝置或設(shè)備而使用的裝置。計(jì)算機(jī)可讀介質(zhì)的更具體的示例(非窮盡性列表)包括以下:具有一個(gè)或多個(gè)布線的電連接部(電子裝置),便攜式計(jì)算機(jī)盤盒(磁裝置),隨機(jī)存取存儲(chǔ)器(RAM),只讀存儲(chǔ)器(ROM),可擦除可編輯只讀存儲(chǔ)器(EPR0M或閃速存儲(chǔ)器),光纖裝置,以及便攜式光盤只讀存儲(chǔ)器(CDR0M)。另外,計(jì)算機(jī)可讀介質(zhì)甚至可以是可在其上打印所述程序的紙或其他合適的介質(zhì),因?yàn)榭梢岳缤ㄟ^對(duì)紙或其他介質(zhì)進(jìn)行光學(xué)掃描,接著進(jìn)行編輯、解譯或必要時(shí)以其他合適方式進(jìn)行處理來以電子方式獲得所述程序,然后將其存儲(chǔ)在計(jì)算機(jī)存儲(chǔ)器中。
[0063]應(yīng)當(dāng)理解,本發(fā)明的各部分可以用硬件、軟件、固件或它們的組合來實(shí)現(xiàn)。在上述實(shí)施方式中,多個(gè)步驟或方法可以用存儲(chǔ)在存儲(chǔ)器中且由合適的指令執(zhí)行系統(tǒng)執(zhí)行的軟件或固件來實(shí)現(xiàn)。例如,如果用硬件來實(shí)現(xiàn),和在另一實(shí)施方式中一樣,可用本領(lǐng)域公知的下列技術(shù)中的任一項(xiàng)或他們的組合來實(shí)現(xiàn):具有用于對(duì)數(shù)據(jù)信號(hào)實(shí)現(xiàn)邏輯功能的邏輯門電路的離散邏輯電路,具有合適的組合邏輯門電路的專用集成電路,可編程門陣列(PGA),現(xiàn)場可編程門陣列(FPGA)等。
[0064]本技術(shù)領(lǐng)域的普通技術(shù)人員可以理解實(shí)現(xiàn)上述實(shí)施例方法攜帶的全部或部分步驟是可以通過程序來指令相關(guān)的硬件完成,所述的程序可以存儲(chǔ)于一種計(jì)算機(jī)可讀存儲(chǔ)介質(zhì)中,該程序在執(zhí)行時(shí),包括方法實(shí)施例的步驟之一或其組合。
[0065]此外,在本發(fā)明各個(gè)實(shí)施例中的各功能單元可以集成在一個(gè)處理模塊中,也可以是各個(gè)單元單獨(dú)物理存在,也可以兩個(gè)或兩個(gè)以上單元集成在一個(gè)模塊中。上述集成的模塊既可以采用硬件的形式實(shí)現(xiàn),也可以采用軟件功能模塊的形式實(shí)現(xiàn)。所述集成的模塊如果以軟件功能模塊的形式實(shí)現(xiàn)并作為獨(dú)立的產(chǎn)品銷售或使用時(shí),也可以存儲(chǔ)在一個(gè)計(jì)算機(jī)可讀取存儲(chǔ)介質(zhì)中。
[0066]上述提到的存儲(chǔ)介質(zhì)可以是只讀存儲(chǔ)器,磁盤或光盤等。盡管上面已經(jīng)示出和描述了本發(fā)明的實(shí)施例,可以理解的是,上述實(shí)施例是示例性的,不能理解為對(duì)本發(fā)明的限制,本領(lǐng)域的普通技術(shù)人員在本發(fā)明的范圍內(nèi)可以對(duì)上述實(shí)施例進(jìn)行變化、修改、替換和變型。
【主權(quán)項(xiàng)】
1.一種異構(gòu)數(shù)據(jù)的整合方法,其特征在于,包括以下步驟: 分別預(yù)先建立至少一個(gè)目標(biāo)表與多源表之間的二維關(guān)系; 根據(jù)所述二維關(guān)系生成所述至少一個(gè)目標(biāo)表的訂閱規(guī)則,其中,所述訂閱規(guī)則用于指示目標(biāo)表中目標(biāo)數(shù)據(jù)的來源; 實(shí)時(shí)從所述多源表中采集針對(duì)目標(biāo)事物的源數(shù)據(jù),并基于所述至少一個(gè)目標(biāo)表的訂閱規(guī)則對(duì)實(shí)時(shí)采集到的源數(shù)據(jù)進(jìn)行匯總并緩存; 按照預(yù)設(shè)策略將匯總并緩存后的源數(shù)據(jù)裝載至對(duì)應(yīng)的所述至少一個(gè)目標(biāo)表中。2.如權(quán)利要求1所述的異構(gòu)數(shù)據(jù)的整合方法,其特征在于,所述分別預(yù)先建立至少一個(gè)目標(biāo)表與多源表之間的二維關(guān)系,包括: 分別確定所述至少一個(gè)目標(biāo)表中各個(gè)目標(biāo)數(shù)據(jù)所對(duì)應(yīng)的數(shù)據(jù)組合來源; 根據(jù)所述至少一個(gè)目標(biāo)表中各個(gè)目標(biāo)數(shù)據(jù)所對(duì)應(yīng)的數(shù)據(jù)組合來源以建立所述至少一個(gè)目標(biāo)表與所述多源表之間的二維關(guān)系。3.如權(quán)利要求1所述的異構(gòu)數(shù)據(jù)的整合方法,其特征在于,所述實(shí)時(shí)從所述多源表中采集針對(duì)目標(biāo)事物的源數(shù)據(jù),包括: 確定所述多源表的類型信息,并根據(jù)所述類型信息確定所述多源表對(duì)應(yīng)的采集方式; 根據(jù)所述采集方式實(shí)時(shí)從所述多源表中采集針對(duì)所述目標(biāo)事物的源數(shù)據(jù)。4.如權(quán)利要求3所述的異構(gòu)數(shù)據(jù)的整合方法,其特征在于,所述根據(jù)所述采集方式實(shí)時(shí)從所述多源表中采集針對(duì)所述目標(biāo)事物的源數(shù)據(jù),包括: 針對(duì)所述目標(biāo)事物,根據(jù)所述多源表所對(duì)應(yīng)的數(shù)據(jù)庫日志判斷是否存在有變更動(dòng)作的源表; 如果存在有變更動(dòng)作的源表,則根據(jù)所述采集方式從所述有變更動(dòng)作的源表中采集所述變更動(dòng)作對(duì)應(yīng)的源數(shù)據(jù)。5.如權(quán)利要求1至4中任一項(xiàng)所述的異構(gòu)數(shù)據(jù)的整合方法,其特征在于,在所述按照預(yù)設(shè)策略將匯總并緩存后的源數(shù)據(jù)裝載至對(duì)應(yīng)的所述至少一個(gè)目標(biāo)表中之后,所述方法還包括: 將緩存后的源數(shù)據(jù)從緩存池中進(jìn)行清除。6.一種異構(gòu)數(shù)據(jù)的整合裝置,其特征在于,包括: 建立模塊,用于分別預(yù)先建立至少一個(gè)目標(biāo)表與多源表之間的二維關(guān)系; 生成模塊,用于根據(jù)所述二維關(guān)系生成所述至少一個(gè)目標(biāo)表的訂閱規(guī)則,其中,所述訂閱規(guī)則用于指示目標(biāo)表中目標(biāo)數(shù)據(jù)的來源; 采集模塊,用于實(shí)時(shí)從所述多源表中采集針對(duì)目標(biāo)事物的源數(shù)據(jù); 數(shù)據(jù)匯總模塊,用于基于所述至少一個(gè)目標(biāo)表的訂閱規(guī)則對(duì)實(shí)時(shí)采集到的源數(shù)據(jù)進(jìn)行匯總并緩存; 裝載模塊,用于按照預(yù)設(shè)策略將匯總并緩存后的源數(shù)據(jù)裝載至對(duì)應(yīng)的所述至少一個(gè)目標(biāo)表中。7.如權(quán)利要求6所述的異構(gòu)數(shù)據(jù)的整合裝置,其特征在于,所述建立模塊具體用于: 分別確定所述至少一個(gè)目標(biāo)表中各個(gè)目標(biāo)數(shù)據(jù)所對(duì)應(yīng)的數(shù)據(jù)組合來源; 根據(jù)所述至少一個(gè)目標(biāo)表中各個(gè)目標(biāo)數(shù)據(jù)所對(duì)應(yīng)的數(shù)據(jù)組合來源以建立所述至少一個(gè)目標(biāo)表與所述多源表之間的二維關(guān)系。8.如權(quán)利要求6所述的異構(gòu)數(shù)據(jù)的整合裝置,其特征在于,所述采集模塊包括: 確定單元,用于確定所述多源表的類型信息,并根據(jù)所述類型信息確定所述多源表對(duì)應(yīng)的采集方式; 采集單元,用于根據(jù)所述采集方式實(shí)時(shí)從所述多源表中采集針對(duì)所述目標(biāo)事物的源數(shù)據(jù)。9.如權(quán)利要求8所述的異構(gòu)數(shù)據(jù)的整合裝置,其特征在于,所述采集單元具體用于: 針對(duì)所述目標(biāo)事物,根據(jù)所述多源表所對(duì)應(yīng)的數(shù)據(jù)庫日志判斷是否存在有變更動(dòng)作的源表; 在存儲(chǔ)有變更動(dòng)作的源表時(shí),根據(jù)所述采集方式從所述有變更動(dòng)作的源表中采集所述變更動(dòng)作對(duì)應(yīng)的源數(shù)據(jù)。10.如權(quán)利要求6至9中任一項(xiàng)所述的異構(gòu)數(shù)據(jù)的整合裝置,其特征在于,還包括: 清除模塊,用于在所述裝載模塊按照預(yù)設(shè)策略將匯總并緩存后的源數(shù)據(jù)裝載至對(duì)應(yīng)的所述至少一個(gè)目標(biāo)表中之后,將緩存后的源數(shù)據(jù)從緩存池中進(jìn)行清除。
【文檔編號(hào)】G06F17/30GK106055654SQ201610383354
【公開日】2016年10月26日
【申請(qǐng)日】2016年6月1日
【發(fā)明人】井玉成, 牟曉光
【申請(qǐng)人】東軟集團(tuán)股份有限公司, 國家信息中心