一種數(shù)據(jù)分析方法及裝置的制造方法
【專利摘要】本發(fā)明實(shí)施例涉及數(shù)據(jù)處理領(lǐng)域,尤其涉及一種數(shù)據(jù)分析方法及裝置,用以實(shí)現(xiàn)對數(shù)據(jù)源中的數(shù)據(jù)進(jìn)行復(fù)雜的分析。本發(fā)明實(shí)施例中,獲取配置信息;配置信息是根據(jù)預(yù)先定義的語義集合配置的;配置信息中包括分析條件,分析條件對應(yīng)至少兩個數(shù)據(jù)源標(biāo)識,以及每個數(shù)據(jù)源中待分析數(shù)據(jù)的標(biāo)識;根據(jù)分析條件對應(yīng)的數(shù)據(jù)源標(biāo)識,從每個數(shù)據(jù)源標(biāo)識對應(yīng)的數(shù)據(jù)源中獲取該數(shù)據(jù)源中待分析數(shù)據(jù)的標(biāo)識對應(yīng)的待分析數(shù)據(jù);根據(jù)分析條件,對獲取的所有待分析數(shù)據(jù)進(jìn)行分析,得到數(shù)據(jù)分析結(jié)果。如此,可根據(jù)預(yù)先定義的語義集合,設(shè)置復(fù)雜語義的配置信息,進(jìn)而實(shí)現(xiàn)了分析條件較復(fù)雜時,也可依據(jù)該復(fù)雜的分析條件對數(shù)據(jù)進(jìn)行分析的目的。
【專利說明】
一種數(shù)據(jù)分析方法及裝置
技術(shù)領(lǐng)域
[0001]本發(fā)明實(shí)施例涉及數(shù)據(jù)處理領(lǐng)域,尤其涉及一種數(shù)據(jù)分析方法及裝置。
【背景技術(shù)】
[0002]隨著當(dāng)前通訊業(yè)的不斷發(fā)展,相關(guān)軟件系統(tǒng)也越來越復(fù)雜,這些系統(tǒng)一般都包含許多的子系統(tǒng)和外圍系統(tǒng),實(shí)際使用中,通常需要對多個系統(tǒng)之間的數(shù)據(jù)進(jìn)行綜合分析。比如,為了保證這些系統(tǒng)數(shù)據(jù)的一致性,經(jīng)常對各系統(tǒng)間的同類數(shù)據(jù)進(jìn)行勾兌,以使不同系統(tǒng)間的同類數(shù)據(jù)保持一致,從而保證整個系統(tǒng)的正常運(yùn)行。
[0003]當(dāng)前的數(shù)據(jù)分析系統(tǒng)僅能實(shí)現(xiàn)簡單的對兩個數(shù)據(jù)源的數(shù)據(jù)進(jìn)行勾兌的操作,當(dāng)對數(shù)據(jù)源操作要求比較復(fù)雜時,比如,對第一數(shù)據(jù)源和第二數(shù)據(jù)源進(jìn)行勾兌,當(dāng)出現(xiàn)勾兌不上的數(shù)據(jù)時,將該勾兌不上的數(shù)據(jù)與第三數(shù)據(jù)源中的數(shù)據(jù)進(jìn)行勾兌。該操作要求中存在條件判斷的操作,現(xiàn)有技術(shù)無法實(shí)現(xiàn)。
【發(fā)明內(nèi)容】
[0004]本發(fā)明實(shí)施例提供一種數(shù)據(jù)分析方法和裝置,用以實(shí)現(xiàn)對數(shù)據(jù)源中的數(shù)據(jù)進(jìn)行復(fù)雜的分析。
[0005]本發(fā)明實(shí)施例提供一種數(shù)據(jù)分析方法,包括以下步驟:
[0006]獲取配置信息;配置信息是根據(jù)預(yù)先定義的語義集合配置的;配置信息中包括分析條件,分析條件對應(yīng)至少兩個數(shù)據(jù)源標(biāo)識,以及每個數(shù)據(jù)源中待分析數(shù)據(jù)的標(biāo)識;
[0007]根據(jù)分析條件對應(yīng)的數(shù)據(jù)源標(biāo)識,從每個數(shù)據(jù)源標(biāo)識對應(yīng)的數(shù)據(jù)源中獲取該數(shù)據(jù)源中待分析數(shù)據(jù)的標(biāo)識對應(yīng)的待分析數(shù)據(jù);
[0008]根據(jù)分析條件,對獲取的所有待分析數(shù)據(jù)進(jìn)行分析,得到數(shù)據(jù)分析結(jié)果。
[0009]可選地,分析條件包括N個子分析條件,其中,N為正整數(shù);
[0010]N個子分析條件中包括至少一個第一子分析條件和一個第二子分析條件;其中,每個子分析條件至少對應(yīng)一個數(shù)據(jù)源和該數(shù)據(jù)源中的待分析數(shù)據(jù)的標(biāo)識;
[0011]根據(jù)分析條件,對獲取的所有待分析數(shù)據(jù)進(jìn)行分析,具體包括:
[0012]根據(jù)第一子分析條件,對從第一子分析條件對應(yīng)的數(shù)據(jù)源中獲取的待分析數(shù)據(jù)進(jìn)行分析,得到第一子分析結(jié)果;
[0013]在確定第一子分析結(jié)果符合預(yù)設(shè)條件時,根據(jù)第二子分析條件,對從第二子分析條件對應(yīng)的數(shù)據(jù)源中獲取的待分析數(shù)據(jù)進(jìn)行分析,得到第二子分析結(jié)果,將第二子分析結(jié)果為數(shù)據(jù)分析結(jié)果的一部分;或者
[0014]在確定第一子分析結(jié)果不符合預(yù)設(shè)條件時,將第一子分析結(jié)果作為數(shù)據(jù)分析結(jié)果的一部分。
[0015]可選地,數(shù)據(jù)源中的待分析數(shù)據(jù)的標(biāo)識為以下內(nèi)容中的任一項或任幾項的組合:
[0016]用于標(biāo)識出數(shù)據(jù)源中的所有數(shù)據(jù)的標(biāo)識、待分析數(shù)據(jù)中的一個字段的值、待分析數(shù)據(jù)中的多個字段的值的組合、待分析數(shù)據(jù)中的一個字段的所有值中的部分值、待分析數(shù)據(jù)中的多個字段中每個字段的所有值中部分值的組合。
[0017]可選地,根據(jù)分析條件,對獲取的所有待分析數(shù)據(jù)進(jìn)行分析,具體包括:
[0018]根據(jù)分析條件,將每個數(shù)據(jù)源中的待分析數(shù)據(jù)按照哈希hash分為至少一個數(shù)據(jù)塊;其中,每個數(shù)據(jù)塊對應(yīng)一個hash標(biāo)識;
[0019]根據(jù)分析條件,并行的對每個數(shù)據(jù)源中hash標(biāo)識相同的數(shù)據(jù)塊進(jìn)行數(shù)據(jù)分析。
[0020]可選地,配置信息中還包括數(shù)據(jù)分析結(jié)果輸出條件;
[0021]根據(jù)分析條件,對獲取的所有待分析數(shù)據(jù)進(jìn)行分析,得到數(shù)據(jù)分析結(jié)果,具體包括:
[0022]根據(jù)分析條件,對獲取的所有待分析數(shù)據(jù)進(jìn)行分析;
[0023]根據(jù)數(shù)據(jù)分析結(jié)果輸出條件,生成數(shù)據(jù)分析結(jié)果;
[0024]其中,數(shù)據(jù)分析結(jié)果輸出條件具體為:
[0025]數(shù)據(jù)分析結(jié)果中的數(shù)據(jù)至少包括一個映射字段;映射字段的值為為任一待分析數(shù)據(jù)的全部值或部分值,或者為M個待分析數(shù)據(jù)的全部值或部分值的組合,M為大于等于2的整數(shù)。
[0026]可選地,得到數(shù)據(jù)分析結(jié)果之后,還包括:
[0027]將數(shù)據(jù)分析結(jié)果輸入至線程池;
[0028]周期性并行的將線程池中的多個數(shù)據(jù)分析結(jié)果輸出。
[0029]本發(fā)明實(shí)施例提供一種數(shù)據(jù)分析裝置,包括:
[0030]第一獲取單元,用于獲取配置信息;配置信息是根據(jù)預(yù)先定義的語義集合配置的;配置信息中包括分析條件,分析條件對應(yīng)至少兩個數(shù)據(jù)源標(biāo)識,以及每個數(shù)據(jù)源中待分析數(shù)據(jù)的標(biāo)識;
[0031]第二獲取單元,用于根據(jù)分析條件對應(yīng)的數(shù)據(jù)源標(biāo)識,從每個數(shù)據(jù)源標(biāo)識對應(yīng)的數(shù)據(jù)源中獲取該數(shù)據(jù)源中待分析數(shù)據(jù)的標(biāo)識對應(yīng)的待分析數(shù)據(jù);
[0032]分析單元,用于根據(jù)分析條件,對獲取的所有待分析數(shù)據(jù)進(jìn)行分析,得到數(shù)據(jù)分析結(jié)果。
[0033]可選地,分析條件包括N個子分析條件,其中,N為正整數(shù);
[0034]N個子分析條件中包括至少一個第一子分析條件和一個第二子分析條件;其中,每個子分析條件至少對應(yīng)一個數(shù)據(jù)源和該數(shù)據(jù)源中的待分析數(shù)據(jù)的標(biāo)識;
[0035]分析單元,具體用于:
[0036]根據(jù)第一子分析條件,對從第一子分析條件對應(yīng)的數(shù)據(jù)源中獲取的待分析數(shù)據(jù)進(jìn)行分析,得到第一子分析結(jié)果;
[0037]在確定第一子分析結(jié)果符合預(yù)設(shè)條件時,根據(jù)第二子分析條件,對從第二子分析條件對應(yīng)的數(shù)據(jù)源中獲取的待分析數(shù)據(jù)進(jìn)行分析,得到第二子分析結(jié)果,將第二子分析結(jié)果為數(shù)據(jù)分析結(jié)果的一部分;或者
[0038]在確定第一子分析結(jié)果不符合預(yù)設(shè)條件時,將第一子分析結(jié)果作為數(shù)據(jù)分析結(jié)果的一部分。
[0039]可選地,數(shù)據(jù)源中的待分析數(shù)據(jù)的標(biāo)識為以下內(nèi)容中的任一項或任幾項的組合:
[0040]用于標(biāo)識出數(shù)據(jù)源中的所有數(shù)據(jù)的標(biāo)識、待分析數(shù)據(jù)中的一個字段的值、待分析數(shù)據(jù)中的多個字段的值的組合、待分析數(shù)據(jù)中的一個字段的所有值中的部分值、待分析數(shù)據(jù)中的多個字段中每個字段的所有值中部分值的組合。
[0041]可選地,分析單元,具體用于:
[0042]根據(jù)分析條件,將每個數(shù)據(jù)源中的待分析數(shù)據(jù)按照哈希hash分為至少一個數(shù)據(jù)塊;其中,每個數(shù)據(jù)塊對應(yīng)一個hash標(biāo)識;
[0043]根據(jù)分析條件,并行的對每個數(shù)據(jù)源中hash標(biāo)識相同的數(shù)據(jù)塊進(jìn)行數(shù)據(jù)分析。
[0044]可選地,配置信息中還包括數(shù)據(jù)分析結(jié)果輸出條件;
[0045]分析單元,具體用于:
[0046]根據(jù)分析條件,對獲取的所有待分析數(shù)據(jù)進(jìn)行分析;
[0047]根據(jù)數(shù)據(jù)分析結(jié)果輸出條件,生成數(shù)據(jù)分析結(jié)果;
[0048]其中,數(shù)據(jù)分析結(jié)果輸出條件具體為:
[0049]數(shù)據(jù)分析結(jié)果中的數(shù)據(jù)至少包括一個映射字段;映射字段的值為為任一待分析數(shù)據(jù)的全部值或部分值,或者為M個待分析數(shù)據(jù)的全部值或部分值的組合,M為大于等于2的整數(shù)。
[0050]可選地,分析單元,還用于:
[0051 ] 將數(shù)據(jù)分析結(jié)果輸入至線程池;
[0052]周期性并行的將線程池中的多個數(shù)據(jù)分析結(jié)果輸出。
[0053]本發(fā)明實(shí)施例中,獲取配置信息;配置信息是根據(jù)預(yù)先定義的語義集合配置的;配置信息中包括分析條件,分析條件對應(yīng)至少兩個數(shù)據(jù)源標(biāo)識,以及每個數(shù)據(jù)源中待分析數(shù)據(jù)的標(biāo)識;根據(jù)分析條件對應(yīng)的數(shù)據(jù)源標(biāo)識,從每個數(shù)據(jù)源標(biāo)識對應(yīng)的數(shù)據(jù)源中獲取該數(shù)據(jù)源中待分析數(shù)據(jù)的標(biāo)識對應(yīng)的待分析數(shù)據(jù);根據(jù)分析條件,對獲取的所有待分析數(shù)據(jù)進(jìn)行分析,得到數(shù)據(jù)分析結(jié)果。由于預(yù)先定義語義集合,且配置信息是根據(jù)預(yù)先定義的語義集合配置的,因此,可根據(jù)預(yù)先定義的語義集合,設(shè)置復(fù)雜語義的配置信息,進(jìn)一步由于可根據(jù)該配置信息中包括的分析條件,對獲取的所有待分析數(shù)據(jù)進(jìn)行分析,進(jìn)而實(shí)現(xiàn)了分析條件較復(fù)雜時,也可依據(jù)該復(fù)雜的分析條件對數(shù)據(jù)進(jìn)行分析的目的。
【附圖說明】
[0054]為了更清楚地說明本發(fā)明實(shí)施例中的技術(shù)方案,下面將對實(shí)施例描述中所需要使用的附圖作簡要介紹,顯而易見地,下面描述中的附圖僅僅是本發(fā)明的一些實(shí)施例,對于本領(lǐng)域的普通技術(shù)人員來講,在不付出創(chuàng)造性勞動的前提下,還可以根據(jù)這些附圖獲得其他的附圖。
[0055]圖1為本發(fā)明實(shí)施例提供的一種數(shù)據(jù)分析方法適用的系統(tǒng)架構(gòu)示意圖;
[0056]圖2為本發(fā)明實(shí)施例提供的一種數(shù)據(jù)分析方法流程示意圖;
[0057]圖3為本發(fā)明實(shí)施例提供的一種數(shù)據(jù)分析方法的結(jié)構(gòu)示意圖。
【具體實(shí)施方式】
[0058]為了使本發(fā)明的目的、技術(shù)方案及有益效果更加清楚明白,以下結(jié)合附圖及實(shí)施例,對本發(fā)明進(jìn)行進(jìn)一步詳細(xì)說明。應(yīng)當(dāng)理解,此處所描述的具體實(shí)施例僅僅用以解釋本發(fā)明,并不用于限定本發(fā)明。
[0059]如圖1所示,本發(fā)明實(shí)施例適用的系統(tǒng)架構(gòu)示意圖。該系統(tǒng)架構(gòu)中包括一個或多個數(shù)據(jù)分析裝置,比如數(shù)據(jù)分析裝置101、數(shù)據(jù)分析裝置105、數(shù)據(jù)分析裝置106,其中,每個數(shù)據(jù)分析裝置可實(shí)現(xiàn)與一個或多個數(shù)據(jù)源連接,比如數(shù)據(jù)分析裝置101與數(shù)據(jù)源102、數(shù)據(jù)源103和數(shù)據(jù)源104連接,數(shù)據(jù)分析裝置105與數(shù)據(jù)源102、數(shù)據(jù)源103和數(shù)據(jù)源104連接,數(shù)據(jù)分析裝置106與數(shù)據(jù)源102、數(shù)據(jù)源103和數(shù)據(jù)源104連接。本發(fā)明實(shí)施例中的任一個數(shù)據(jù)分析裝置均可讀取一個或多個數(shù)據(jù)源中的數(shù)據(jù)。
[0060]本發(fā)明實(shí)施例中的任意多個數(shù)據(jù)分析裝置均可并行的執(zhí)行本發(fā)明實(shí)施例中的數(shù)據(jù)分析方法。舉例來說,數(shù)據(jù)分析裝置101、數(shù)據(jù)分析裝置105和數(shù)據(jù)分析裝置106均并行的分別執(zhí)行一套數(shù)據(jù)分析方法,從第一時刻開始,數(shù)據(jù)分析裝置101對數(shù)據(jù)源102和數(shù)據(jù)源103中的數(shù)據(jù)進(jìn)行勾兌,從第一時刻開始,數(shù)據(jù)分析裝置105對數(shù)據(jù)源103和數(shù)據(jù)源104中的數(shù)據(jù)進(jìn)行勾兌,從第一時刻開始,數(shù)據(jù)分析裝置106對數(shù)據(jù)源102和數(shù)據(jù)源104中的數(shù)據(jù)進(jìn)行勾兌??梢姡景l(fā)明實(shí)施例中,多個服務(wù)器可單獨(dú)的并行的分別處理一個數(shù)據(jù)分析任務(wù),提高了數(shù)據(jù)分析效率。
[0061]本發(fā)明實(shí)施例中的多個數(shù)據(jù)分析裝置也可并行的執(zhí)行一套本發(fā)明實(shí)施例中的數(shù)據(jù)分析方法。舉例來說,數(shù)據(jù)分析裝置101、數(shù)據(jù)分析裝置105和數(shù)據(jù)分析裝置106均并行的執(zhí)行同一套數(shù)據(jù)分析方法,即數(shù)據(jù)分析裝置101、數(shù)據(jù)分析裝置105和數(shù)據(jù)分析裝置106均并行的對數(shù)據(jù)源102和數(shù)據(jù)源103中的數(shù)據(jù)進(jìn)行勾兌。此時,數(shù)據(jù)源102或數(shù)據(jù)源103將數(shù)據(jù)源102和數(shù)據(jù)源103中的數(shù)據(jù)分別為三塊,分別為數(shù)據(jù)源102的第一塊數(shù)據(jù),數(shù)據(jù)源102的第二塊數(shù)據(jù),數(shù)據(jù)源102的第三塊數(shù)據(jù),數(shù)據(jù)源103的第一塊數(shù)據(jù),數(shù)據(jù)源103的第二塊數(shù)據(jù),數(shù)據(jù)源103的第三塊數(shù)據(jù)。每個數(shù)據(jù)分析裝置對數(shù)據(jù)源102和數(shù)據(jù)源103中的一個塊的數(shù)據(jù)進(jìn)行勾兌,即數(shù)據(jù)分析裝置101對數(shù)據(jù)源102的第一塊數(shù)據(jù)和數(shù)據(jù)源103的第一塊數(shù)據(jù)進(jìn)行勾兌,數(shù)據(jù)分析裝置105對數(shù)據(jù)源102的第二塊數(shù)據(jù)和數(shù)據(jù)源103的第二塊數(shù)據(jù)進(jìn)行勾兌,數(shù)據(jù)分析裝置106對數(shù)據(jù)源102的第三塊數(shù)據(jù)和數(shù)據(jù)源103的第三塊數(shù)據(jù)進(jìn)行勾兌??蛇x地,先對數(shù)據(jù)源102和數(shù)據(jù)源103中的數(shù)據(jù)進(jìn)行哈希,數(shù)據(jù)源102的第一塊數(shù)據(jù)進(jìn)行哈希之后的標(biāo)識與數(shù)據(jù)源103的第一塊數(shù)據(jù)進(jìn)行哈希之后的標(biāo)識相同;數(shù)據(jù)源102的第二塊數(shù)據(jù)進(jìn)行哈希之后的標(biāo)識與數(shù)據(jù)源103的第二塊數(shù)據(jù)進(jìn)行哈希之后的標(biāo)識相同;數(shù)據(jù)源102的第三塊數(shù)據(jù)進(jìn)行哈希之后的標(biāo)識與數(shù)據(jù)源103的第三塊數(shù)據(jù)進(jìn)行哈希之后的標(biāo)識相同。可見,多個服務(wù)器同時并行的執(zhí)行一個數(shù)據(jù)分析任務(wù),提高了數(shù)據(jù)分析的效率。
[0062]可選地,數(shù)據(jù)分析裝置連接線程池107,線程池107連接多個數(shù)據(jù)源。此時,多個數(shù)據(jù)分析裝置中每個數(shù)據(jù)分析裝置分別生成的數(shù)據(jù)分析結(jié)果可先放入線程池107中,線程池107起到一個緩沖的作用,之后通過周期性的任務(wù)調(diào)度系統(tǒng),定期的將線程池中儲存的數(shù)據(jù)分析結(jié)果導(dǎo)入至某一個或某幾個數(shù)據(jù)源中。
[0063]本發(fā)明實(shí)施例中的數(shù)據(jù)分析裝置101可為服務(wù)器等網(wǎng)絡(luò)裝置。數(shù)據(jù)分析裝置101可讀取所連接的數(shù)據(jù)源中的數(shù)據(jù)。
[0064]本發(fā)明實(shí)施例中的數(shù)據(jù)源可為數(shù)據(jù)庫,或非數(shù)據(jù)庫類型的數(shù)據(jù)源。本發(fā)明實(shí)施例中可對數(shù)據(jù)庫中存儲的大數(shù)據(jù),比如幾百G數(shù)據(jù)甚至是幾百T的數(shù)據(jù)進(jìn)行數(shù)據(jù)分析。
[0065]基于圖1所示的系統(tǒng)架構(gòu),圖2示出了本發(fā)明實(shí)施例提供的一種數(shù)據(jù)分析方法,包括以下步驟:
[0066]步驟201,獲取配置信息;配置信息是根據(jù)預(yù)先定義的語義集合配置的;配置信息中包括分析條件,分析條件對應(yīng)至少兩個數(shù)據(jù)源標(biāo)識,以及每個數(shù)據(jù)源中待分析數(shù)據(jù)的標(biāo)識;
[0067]步驟202,根據(jù)分析條件對應(yīng)的數(shù)據(jù)源標(biāo)識,從每個數(shù)據(jù)源標(biāo)識對應(yīng)的數(shù)據(jù)源中獲取該數(shù)據(jù)源中待分析數(shù)據(jù)的標(biāo)識對應(yīng)的待分析數(shù)據(jù);
[0068]步驟203,根據(jù)分析條件,對獲取的所有待分析數(shù)據(jù)進(jìn)行分析,得到數(shù)據(jù)分析結(jié)果。
[0069]本發(fā)明實(shí)施例中的數(shù)據(jù)源可以為多個,比如,可同時對至少三個數(shù)據(jù)源中的數(shù)據(jù)進(jìn)行數(shù)據(jù)分析,比如同時對三個或十個數(shù)據(jù)源中的數(shù)據(jù)進(jìn)行分析。也就是說,本發(fā)明實(shí)施例中的數(shù)據(jù)源可以橫向擴(kuò)展。本發(fā)明實(shí)施例中的數(shù)據(jù)源還可以是跨系統(tǒng)的數(shù)據(jù)源,本發(fā)明實(shí)施例可實(shí)現(xiàn)對跨系統(tǒng)的數(shù)據(jù)源分別建立連接之后,直接從不同系統(tǒng)的數(shù)據(jù)源中讀取各自對應(yīng)的待分析數(shù)據(jù)。本發(fā)明實(shí)施例中可以對多個數(shù)據(jù)源中包括的所有數(shù)據(jù)進(jìn)行分析,也可對數(shù)據(jù)源的全部數(shù)據(jù)中的部分?jǐn)?shù)據(jù)進(jìn)行分析。即一個數(shù)據(jù)源中的待分析數(shù)據(jù)可為該數(shù)據(jù)源中的所有數(shù)據(jù),也可為該數(shù)據(jù)源中的部分?jǐn)?shù)據(jù)。舉個例子,對數(shù)據(jù)源A的所有數(shù)據(jù)和數(shù)據(jù)源B的所有數(shù)據(jù)進(jìn)行數(shù)據(jù)分析?;蛘撸瑢?shù)據(jù)源A中數(shù)據(jù)用戶名為張三的數(shù)據(jù)與數(shù)據(jù)源B中用戶名為張三的數(shù)據(jù)進(jìn)行數(shù)據(jù)分析。
[0070]可選地,本發(fā)明實(shí)施例中的待分析數(shù)據(jù)的標(biāo)識為以下內(nèi)容中的任一項或任幾項的組合:
[0071]用于標(biāo)識出數(shù)據(jù)源中的所有數(shù)據(jù)的標(biāo)識、待分析數(shù)據(jù)中的一個字段的值、待分析數(shù)據(jù)中的多個字段的值的組合、待分析數(shù)據(jù)中的一個字段的所有值中的部分值、待分析數(shù)據(jù)中的多個字段中每個字段的所有值中部分值的組合。
[0072]舉個例子,數(shù)據(jù)源中一個用戶的銀行卡消費(fèi)記錄數(shù)據(jù)包括多個字段,分別為該用戶標(biāo)識字段、銀行卡標(biāo)識字段、消費(fèi)日期字段、消費(fèi)金額字段、消費(fèi)地點(diǎn)字段。每個字段對對應(yīng)一個值,比如用戶標(biāo)識字段的值為張三,銀行卡標(biāo)識字段的值為987654321123456,消費(fèi)日期字段的值為2015年9月11日,消費(fèi)金額字段為500元,消費(fèi)地點(diǎn)字段的值為上海。
[0073]此時,待分析數(shù)據(jù)的標(biāo)識可為用于標(biāo)識出數(shù)據(jù)源中的所有數(shù)據(jù)的標(biāo)識,比如標(biāo)識出數(shù)據(jù)源中所有數(shù)據(jù)的標(biāo)識;
[0074]待分析數(shù)據(jù)的標(biāo)識為待分析數(shù)據(jù)中的一個字段的值,比如,待分析數(shù)據(jù)的標(biāo)識可為“上海”,即將數(shù)據(jù)源中消費(fèi)地點(diǎn)為“上?!钡臄?shù)據(jù)進(jìn)行分析;
[0075]待分析數(shù)據(jù)的標(biāo)識為待分析數(shù)據(jù)中的多個字段的值的組合,比如待分析數(shù)據(jù)的標(biāo)識還可為“張三+上?!保磳?shù)據(jù)源中“張三”在“上?!毕M(fèi)所產(chǎn)生的數(shù)據(jù)進(jìn)行分析;
[0076]待分析數(shù)據(jù)的標(biāo)識為待分析數(shù)據(jù)中的一個字段的所有值中的部分值,比如,待分析數(shù)據(jù)的標(biāo)識為銀行卡標(biāo)識字段的值為987654321123456中的最后四位“3456” ;
[0077]待分析數(shù)據(jù)的標(biāo)識為待分析數(shù)據(jù)中的多個字段中每個字段的所有值中部分值的組合,比如,待分析數(shù)據(jù)的標(biāo)識為銀行卡標(biāo)識字段的值為987654321123456中的最后四位“3456”與消費(fèi)日期字段的值為2015年9月11日中“2015年”的組合,即“3456+2015年”。
[0078]本發(fā)明實(shí)施例中預(yù)先定義的語義集合中包括多種語義。開發(fā)人員可根據(jù)預(yù)先定義的語義集合,使用該語義集合中定義的一種或多種定義了語義的符號,來配置復(fù)雜語義的配置信息。語義集合后期也可進(jìn)行管理,比如向語義集合中增加語義,刪除語義集合中無用的語義等等。
[0079]可選地,分析條件包括N個子分析條件,其中,N為正整數(shù);N個子分析條件中包括至少一個第一子分析條件和一個第二子分析條件;其中,每個子分析條件至少對應(yīng)一個數(shù)據(jù)源和該數(shù)據(jù)源中的待分析數(shù)據(jù)的標(biāo)識;
[0080]數(shù)據(jù)分析裝置根據(jù)分析條件,對獲取的所有待分析數(shù)據(jù)進(jìn)行分析,具體包括:
[0081]根據(jù)第一子分析條件,對從第一子分析條件對應(yīng)的數(shù)據(jù)源中獲取的待分析數(shù)據(jù)進(jìn)行分析,得到第一子分析結(jié)果;
[0082]在確定第一子分析結(jié)果符合預(yù)設(shè)條件時,根據(jù)第二子分析條件,對從第二子分析條件對應(yīng)的數(shù)據(jù)源中獲取的待分析數(shù)據(jù)進(jìn)行分析,得到第二子分析結(jié)果,將第二子分析結(jié)果為數(shù)據(jù)分析結(jié)果的一部分;或者
[0083]在確定第一子分析結(jié)果不符合預(yù)設(shè)條件時,將第一子分析結(jié)果作為數(shù)據(jù)分析結(jié)果的一部分。
[0084]舉個例子,數(shù)據(jù)分析條件為:將數(shù)據(jù)源A的數(shù)據(jù)和數(shù)據(jù)源B的數(shù)據(jù)進(jìn)行勾兌,將勾兌不成功的數(shù)據(jù)與數(shù)據(jù)源C中的數(shù)據(jù)進(jìn)行勾兌。該數(shù)據(jù)分析條件對應(yīng)包括的數(shù)據(jù)源為數(shù)據(jù)源A、數(shù)據(jù)源B、數(shù)據(jù)源C,該數(shù)據(jù)分析條件對應(yīng)的數(shù)據(jù)源的待分析數(shù)據(jù)為數(shù)據(jù)源A的數(shù)據(jù)、數(shù)據(jù)源B的數(shù)據(jù)、數(shù)據(jù)源C的數(shù)據(jù)。
[0085]數(shù)據(jù)分析條件包括的第一子分析條件為:將數(shù)據(jù)源A的數(shù)據(jù)與數(shù)據(jù)源B的數(shù)據(jù)進(jìn)行勾兌;第一子分析條件對應(yīng)的數(shù)據(jù)源為數(shù)據(jù)源A和數(shù)據(jù)源B,第一子分析條件對應(yīng)的待分析數(shù)據(jù)分別為數(shù)據(jù)源A的數(shù)據(jù)和數(shù)據(jù)源B的數(shù)據(jù)。數(shù)據(jù)分析條件包括的第二子分析條件為:將數(shù)據(jù)源A與數(shù)據(jù)源B中勾兌失敗的數(shù)據(jù)與數(shù)據(jù)源C的數(shù)據(jù)進(jìn)行勾兌;第而子分析條件對應(yīng)的數(shù)據(jù)源為數(shù)據(jù)源A、數(shù)據(jù)源B,以及數(shù)據(jù)源C,第二子分析條件對應(yīng)的待分析數(shù)據(jù)分別為數(shù)據(jù)源A和數(shù)據(jù)源B的勾兌失敗的數(shù)據(jù),以及數(shù)據(jù)源C中的數(shù)據(jù)。
[0086]數(shù)據(jù)分析裝置根據(jù)分析條件,對獲取的所有待分析數(shù)據(jù)進(jìn)行分析,具體包括:
[0087]根據(jù)第一子分析條件“將數(shù)據(jù)源A的數(shù)據(jù)與數(shù)據(jù)源B的數(shù)據(jù)進(jìn)行勾兌”,將數(shù)據(jù)源A的數(shù)據(jù)和數(shù)據(jù)源B的數(shù)據(jù)進(jìn)行勾兌,并將勾兌結(jié)果作為第一子分析結(jié)果,第一子分析結(jié)果具體為數(shù)據(jù)源A和數(shù)據(jù)源B中的數(shù)據(jù)勾兌成功或勾兌失?。?br>[0088]在確定第一子分析結(jié)果符合預(yù)設(shè)條件時,具體來說,預(yù)設(shè)條件為在確定數(shù)據(jù)源A和數(shù)據(jù)源B中存在一條數(shù)據(jù)在第一子分析結(jié)果中是勾兌失敗的狀態(tài),則根據(jù)第二子分析條件“將數(shù)據(jù)源A與數(shù)據(jù)源B中勾兌失敗的數(shù)據(jù)與數(shù)據(jù)源C的數(shù)據(jù)進(jìn)行勾兌”,將第一子分析結(jié)果中勾兌失敗的數(shù)據(jù)源A中的數(shù)據(jù)或數(shù)據(jù)源B中的數(shù)據(jù),與數(shù)據(jù)源C中的數(shù)據(jù)進(jìn)行勾兌,得到第二子分析結(jié)果,具體來說,第二子分析結(jié)果具體為:數(shù)據(jù)源A與數(shù)據(jù)源B中的勾兌失敗的數(shù)據(jù)與數(shù)據(jù)源C中的數(shù)據(jù)勾兌成功,數(shù)據(jù)源A與數(shù)據(jù)源B中的勾兌失敗的數(shù)據(jù)與數(shù)據(jù)源C中的數(shù)據(jù)勾兌失敗。第二子分析結(jié)果為數(shù)據(jù)分析結(jié)果的一部分。即,將第二子分析結(jié)果作為最終輸出的數(shù)據(jù)分析結(jié)果的一部分輸出,以便用戶可看到第二子分析結(jié)果。
[0089]可選地,在確定第一子分析結(jié)果不符合預(yù)設(shè)條件時,即確定出數(shù)據(jù)源A和數(shù)據(jù)源B中存在一條數(shù)據(jù)在第一子分析結(jié)果中是勾兌成功的狀態(tài),則將在數(shù)據(jù)源A和數(shù)據(jù)源B中勾兌成功的數(shù)據(jù)作為最終輸出的數(shù)據(jù)分析結(jié)果的一部分。
[0090]可選地,語義集合中包括條件語義。比如,條件(case)、如果…則(if...else)。成功解析配置信息之后,配置信息中包括每個數(shù)據(jù)源中待分析數(shù)據(jù)的標(biāo)識和分析條件。舉個例子,比如定義表示勾兌,定義表示條件語義。配置信息中的數(shù)據(jù)分析條件為“數(shù)據(jù)源A〈->數(shù)據(jù)源數(shù)據(jù)源C”,則該數(shù)據(jù)分析條件表示數(shù)據(jù)源A中數(shù)據(jù)與數(shù)據(jù)源B中數(shù)據(jù)進(jìn)行勾兌,如果某條數(shù)據(jù)勾兌失敗,則將該勾兌失敗的數(shù)據(jù)與數(shù)據(jù)源C中的所有數(shù)據(jù)進(jìn)行勾兌。具體來說,即有一條數(shù)據(jù)存在于數(shù)據(jù)源A中,數(shù)據(jù)源B中沒有與該數(shù)據(jù)相同的數(shù)據(jù),則該數(shù)據(jù)為勾兌失敗的狀態(tài);如果一條數(shù)據(jù)存在于數(shù)據(jù)源A中,同時在數(shù)據(jù)源B中存在一條與該數(shù)據(jù)內(nèi)容完全相同的數(shù)據(jù),則該條數(shù)據(jù)即為勾兌成功的狀態(tài)。
[0091]本發(fā)明實(shí)施例中,除了可對數(shù)據(jù)源中的所有數(shù)據(jù)進(jìn)行分析之后,還可對數(shù)據(jù)源中的部分?jǐn)?shù)據(jù)進(jìn)行分析。舉例來說,數(shù)據(jù)分析條件對應(yīng)的數(shù)據(jù)源中待分析數(shù)據(jù)的標(biāo)識可為“數(shù)據(jù)源A的字段a和字段b,數(shù)據(jù)源B的字段c和字段d,數(shù)據(jù)源C中的字段d”。該配置信息的數(shù)據(jù)分析條件可為:
[0092]若一條數(shù)據(jù)在數(shù)據(jù)源A中的字段a和字段b,與一條數(shù)據(jù)在數(shù)據(jù)源B的字段c和字段d —致,則確定數(shù)據(jù)源A的該條數(shù)據(jù)和數(shù)據(jù)源B的該條數(shù)據(jù)勾兌成功;
[0093]若一條數(shù)據(jù)在數(shù)據(jù)源A中的字段a和字段b,與一條數(shù)據(jù)在數(shù)據(jù)源B的字段c和字段d不一致,則將一條數(shù)據(jù)在數(shù)據(jù)源A中的字段a和字段b與數(shù)據(jù)源C中數(shù)據(jù)的字段d勾兌,若一條數(shù)據(jù)在數(shù)據(jù)源A中的字段a和字段b,與一條數(shù)據(jù)在數(shù)據(jù)源C的字段d —致,則確定數(shù)據(jù)源A的該條數(shù)據(jù)和數(shù)據(jù)源C的該條數(shù)據(jù)勾兌成功;
[0094]若一條數(shù)據(jù)在數(shù)據(jù)源A中的字段a和字段b,與一條數(shù)據(jù)在數(shù)據(jù)源B的字段c和字段d不一致,則將一條數(shù)據(jù)在數(shù)據(jù)源A中的字段a和字段b與數(shù)據(jù)源C中數(shù)據(jù)的字段d勾兌,若一條數(shù)據(jù)在數(shù)據(jù)源A中的字段a和字段b,與一條數(shù)據(jù)在數(shù)據(jù)源C的字段d也不一致,則確定數(shù)據(jù)源A的該條數(shù)據(jù)勾兌失敗。
[0095]該例子的語句可寫為:
[0096]stepl:1f A.a+A.b = = B.c+B.d then ture, else step2 | step2:1f A.a+A.b ==C.d, then true ;else false。
[0097]其中,A.a表示數(shù)據(jù)源A中的字段a,A.b表示數(shù)據(jù)源A中的字段b,B.c表示數(shù)據(jù)源B中的字段C,B.d表示數(shù)據(jù)源B中的字段d,C.d表示數(shù)據(jù)源C中的字段d。
[0098]上述示例中的數(shù)據(jù)源A中的字段a即為數(shù)據(jù)源A中待分析數(shù)據(jù)的標(biāo)識??梢?,本發(fā)明實(shí)施例中可對跨系統(tǒng)的多個數(shù)據(jù)源中任意字段所標(biāo)識出的數(shù)據(jù)進(jìn)行數(shù)據(jù)分析。本發(fā)明實(shí)施例中可實(shí)現(xiàn)較為復(fù)雜的數(shù)據(jù)分析,且對于開發(fā)人員來說,本發(fā)明實(shí)施例中的語義集合為面向業(yè)務(wù)應(yīng)用層的語義,開發(fā)人員可簡單的根據(jù)該語義集合進(jìn)行配置信息的配置,在實(shí)現(xiàn)對數(shù)據(jù)進(jìn)行復(fù)雜的分析的同時,降低了開發(fā)人員的工作難度。
[0099]上述步驟203中,根據(jù)數(shù)據(jù)配置信息解析出數(shù)據(jù)源標(biāo)識之后,即連接至該數(shù)據(jù)源標(biāo)識所對應(yīng)的數(shù)據(jù)源,之后獲取每個數(shù)據(jù)源中的待分析數(shù)據(jù)的標(biāo)識對應(yīng)的待分析數(shù)據(jù)。
[0100]可選地,根據(jù)每個數(shù)據(jù)源中待分析數(shù)據(jù)的標(biāo)識,以及分析條件,為每個數(shù)據(jù)源生成該數(shù)據(jù)源可執(zhí)行的任務(wù)信息;將每個數(shù)據(jù)源對應(yīng)的任務(wù)信息發(fā)送給任務(wù)信息對應(yīng)的數(shù)據(jù)源;接收每個數(shù)據(jù)源執(zhí)行任務(wù)信息后返回的待分析數(shù)據(jù)。
[0101]—種實(shí)施方式為,任務(wù)信息為對待分析數(shù)據(jù)進(jìn)行排序,數(shù)據(jù)源將排序后的待分析數(shù)據(jù)輸出;此時,可接收到每個數(shù)據(jù)源執(zhí)行任務(wù)信息后返回的排序后的待分析數(shù)據(jù)。
[0102]舉個例子,將數(shù)據(jù)源A中字段a為“2015年9月”的數(shù)據(jù)和數(shù)據(jù)源B中字段b為“2015年9月”的數(shù)據(jù)進(jìn)行勾兌,此時,確定出數(shù)據(jù)源A的待分析數(shù)據(jù)的標(biāo)識為該數(shù)據(jù)的字段a為“2015年9月”,數(shù)據(jù)源B的待分析數(shù)據(jù)的標(biāo)識為該數(shù)據(jù)的字段b為“2015年9月”;之后根據(jù)每個數(shù)據(jù)源中待分析數(shù)據(jù)的標(biāo)識,以及分析條件,確定出數(shù)據(jù)源A對應(yīng)的任務(wù)信息A為輸出數(shù)據(jù)源A中字段a為“2015年9月”的數(shù)據(jù),數(shù)據(jù)源B對應(yīng)的任務(wù)信息B為輸出數(shù)據(jù)源B中字段b為“2015年9月”的數(shù)據(jù),將任務(wù)信息A發(fā)送給數(shù)據(jù)源A,將任務(wù)信息B發(fā)送給數(shù)據(jù)源B。之后,數(shù)據(jù)源A執(zhí)行任務(wù)信息A,并將數(shù)據(jù)源A中字段a為“2015年9月”的數(shù)據(jù)輸出給數(shù)據(jù)分析裝置。數(shù)據(jù)源B執(zhí)行任務(wù)信息B,并將數(shù)據(jù)源B中字段b為“2015年9月”的數(shù)據(jù)輸出給數(shù)據(jù)分析裝置。
[0103]該示例中,根據(jù)每個數(shù)據(jù)源中待分析數(shù)據(jù)的標(biāo)識,以及分析條件,確定出數(shù)據(jù)源A對應(yīng)的任務(wù)信息A為輸出根據(jù)時間先后進(jìn)行排序后的數(shù)據(jù)源A中字段a為“2015年9月”的數(shù)據(jù),數(shù)據(jù)源B對應(yīng)的任務(wù)信息B為根據(jù)時間先后進(jìn)行排序后的讀取數(shù)據(jù)源B中字段b為“2015年9月”的數(shù)據(jù),將任務(wù)信息A發(fā)送給數(shù)據(jù)源A,將任務(wù)信息B發(fā)送給數(shù)據(jù)源B。之后,數(shù)據(jù)源A執(zhí)行任務(wù)信息A,并將數(shù)據(jù)源A中字段a為“2015年9月”的數(shù)據(jù)根據(jù)時間先后進(jìn)行排序,并將排序后的數(shù)據(jù)源A中字段a為“ 2015年9月”的數(shù)據(jù)發(fā)送給數(shù)據(jù)分析裝置。數(shù)據(jù)源B執(zhí)行任務(wù)信息B,并將數(shù)據(jù)源B中字段b為“2015年9月”的數(shù)據(jù)根據(jù)時間先后進(jìn)行排序,并將排序后的數(shù)據(jù)源B中字段b為“ 2015年9月”的數(shù)據(jù)發(fā)送給數(shù)據(jù)分析裝置。
[0104]當(dāng)待分析數(shù)據(jù)的數(shù)據(jù)量比較大時,為了提高數(shù)據(jù)分析效率,可選地,根據(jù)分析條件,將每個數(shù)據(jù)源中的待分析數(shù)據(jù)按照哈希hash分為至少一個數(shù)據(jù)塊;其中,每個數(shù)據(jù)塊對應(yīng)一個hash標(biāo)識;根據(jù)分析條件,并行的對每個數(shù)據(jù)源中hash標(biāo)識相同的數(shù)據(jù)塊進(jìn)行數(shù)據(jù)分析。具體來說,本發(fā)明實(shí)施例中的hash可為全哈希hash或者布谷鳥hash。
[0105]舉個例子,比如獲取的數(shù)據(jù)源A中的待分析數(shù)據(jù)有100條,獲取數(shù)據(jù)源B中的待分析數(shù)據(jù)有150條,對數(shù)據(jù)源A中的待分析數(shù)據(jù)進(jìn)行全哈希hash或者布谷鳥hash,每一條經(jīng)過全哈希hash或者布谷鳥hash之后的數(shù)據(jù)均對應(yīng)一個hash標(biāo)識。之后將數(shù)據(jù)源A中的100條數(shù)據(jù)分為5個數(shù)據(jù)塊,每個數(shù)據(jù)塊中數(shù)據(jù)的hash標(biāo)識均一致,因此,每個數(shù)據(jù)庫對應(yīng)一個hash標(biāo)識。數(shù)據(jù)源A中對應(yīng)5個數(shù)據(jù)塊,hash標(biāo)識分別為hashOO 1、hash002、hash003、hash004o同樣的,數(shù)據(jù)源B中的150條數(shù)據(jù)進(jìn)行全哈希hash或者布谷鳥hash,數(shù)據(jù)源B中的150條待分析數(shù)據(jù)對應(yīng)5個數(shù)據(jù)塊,hash標(biāo)識分別為hashOO 1、hash002、hash003、hash004。之后,根據(jù)分析條件,將數(shù)據(jù)源A中hashOOl的數(shù)據(jù)塊與數(shù)據(jù)源B中hashOOl的數(shù)據(jù)塊進(jìn)行數(shù)據(jù)分析;將數(shù)據(jù)源A中hash002的數(shù)據(jù)塊與數(shù)據(jù)源B中hash002的數(shù)據(jù)塊進(jìn)行數(shù)據(jù)分析;將數(shù)據(jù)源A中hash003的數(shù)據(jù)塊與數(shù)據(jù)源B中hash003的數(shù)據(jù)塊進(jìn)行數(shù)據(jù)分析;將數(shù)據(jù)源A中hash004的數(shù)據(jù)塊與數(shù)據(jù)源B中hash004的數(shù)據(jù)塊進(jìn)行數(shù)據(jù)分析;將數(shù)據(jù)源A中hash005的數(shù)據(jù)塊與數(shù)據(jù)源B中hash005的數(shù)據(jù)塊進(jìn)行數(shù)據(jù)分析。
[0106]本發(fā)明實(shí)施例中經(jīng)過對數(shù)據(jù)進(jìn)行全哈希hash或者布谷鳥hash,從而對數(shù)據(jù)進(jìn)行分塊處理,之后對分塊后的數(shù)據(jù)進(jìn)行并行的數(shù)據(jù)分析,提高了數(shù)據(jù)分析效率。
[0107]本發(fā)明實(shí)施例中,可選地,配置信息中還包括數(shù)據(jù)分析結(jié)果輸出條件;根據(jù)分析條件,對獲取的所有待分析數(shù)據(jù)進(jìn)行分析,得到數(shù)據(jù)分析結(jié)果,具體包括:
[0108]根據(jù)分析條件,對獲取的所有待分析數(shù)據(jù)進(jìn)行分析;
[0109]根據(jù)數(shù)據(jù)分析結(jié)果輸出條件,生成數(shù)據(jù)分析結(jié)果;
[0110]其中,數(shù)據(jù)分析結(jié)果輸出條件具體為:
[0111]數(shù)據(jù)分析結(jié)果中的數(shù)據(jù)至少包括一個映射字段;映射字段的值為為任一待分析數(shù)據(jù)的全部值或部分值,或者為M個待分析數(shù)據(jù)的全部值或部分值的組合,M為大于等于2的整數(shù)。
[0112]舉個例子,分析條件為將數(shù)據(jù)源A與數(shù)據(jù)源B中的數(shù)據(jù)進(jìn)行勾兌,數(shù)據(jù)分析結(jié)果輸出條件為:勾兌結(jié)果中的字段c的值對應(yīng)為數(shù)據(jù)源A的字段a的前十位的值和數(shù)據(jù)源B的字段b的后四位的值的組合。數(shù)據(jù)A在數(shù)據(jù)源A中的字段a的值為98765432123456789,數(shù)據(jù)B在數(shù)據(jù)源B中的字段b的值為562354789651222。根據(jù)數(shù)據(jù)分析結(jié)果輸出條件,即將數(shù)據(jù)源A的字段a的前十位的值和數(shù)據(jù)源B的字段b的后四位的值的組合作為勾兌結(jié)果中的字段c的值,從而將數(shù)據(jù)源A的字段a的前十位“9876543212”和數(shù)據(jù)源B的字段b的后四位“ 1222”組合為“98765432121222”,得到待數(shù)據(jù)數(shù)據(jù)分析結(jié)果,即數(shù)據(jù)A和數(shù)據(jù)B在勾兌結(jié)果中的字段c的值為“98765432121222”。
[0113]數(shù)據(jù)分析結(jié)果輸出條件還可為判斷語句。比如,若數(shù)據(jù)A在數(shù)據(jù)源A中的字段a的值等于“5”,則將數(shù)據(jù)A的字段a的值對應(yīng)輸入至勾兌結(jié)果C的字段Cl中,若數(shù)據(jù)A在數(shù)據(jù)源A中的字段a的值不等于“5”,則將數(shù)據(jù)A的字段a的值對應(yīng)輸入至勾兌結(jié)果C的字段c2中。
[0114]再舉個例子,若數(shù)據(jù)A在數(shù)據(jù)源A中的字段d的值等于數(shù)據(jù)B在數(shù)據(jù)源B中的字段c的值,或者數(shù)據(jù)A在數(shù)據(jù)源A中的字段d的值等于數(shù)據(jù)C在數(shù)據(jù)源C中的字段d的值,則將數(shù)據(jù)A在數(shù)據(jù)源A中的字段d的值作為存儲數(shù)據(jù)分析結(jié)果的數(shù)據(jù)源D中數(shù)據(jù)D的字段a的值。寫為語句的形式,即為比如if (A.d = = B.c I | A.d = = C.d) D.a = A.d。
[0115]分析條件為對數(shù)據(jù)源中的數(shù)據(jù)進(jìn)行勾兌時,通過上述操作可看出,數(shù)據(jù)源中數(shù)據(jù)勾兌成功或勾兌失敗時輸出的勾兌結(jié)果,對于開發(fā)人員來說,看起來較為復(fù)雜,本發(fā)明實(shí)施例中數(shù)據(jù)分析結(jié)果為用戶想要看到的,更易理解的,面向業(yè)務(wù)應(yīng)用語義的結(jié)果顯示??梢姡景l(fā)明實(shí)施例中優(yōu)化了數(shù)據(jù)分析結(jié)果的顯示,提升了用戶體驗。
[0116]可選地,本發(fā)明實(shí)施例中對數(shù)據(jù)源中的數(shù)據(jù)進(jìn)行操作包含并不限于mysql的相關(guān)操作。
[0117]可選地,得到數(shù)據(jù)分析結(jié)果之后,將數(shù)據(jù)分析結(jié)果輸入至線程池;周期性并行的將線程池中的多個數(shù)據(jù)分析結(jié)果輸出。
[0118]可見,本發(fā)明實(shí)施例中利用線程池(Thread-pool)作為數(shù)據(jù)分析結(jié)果的插入池,線程池會對數(shù)據(jù)分析結(jié)果進(jìn)行緩沖,在緩沖區(qū)滿后,會由多線程同時進(jìn)行數(shù)據(jù)庫的插入操作,保證數(shù)據(jù)操作的效率與完整性。
[0119]從上述內(nèi)容可以看出:本發(fā)明實(shí)施例中,獲取配置信息;配置信息是根據(jù)預(yù)先定義的語義集合配置的;配置信息中包括分析條件,分析條件對應(yīng)至少兩個數(shù)據(jù)源標(biāo)識,以及每個數(shù)據(jù)源中待分析數(shù)據(jù)的標(biāo)識;根據(jù)分析條件對應(yīng)的數(shù)據(jù)源標(biāo)識,從每個數(shù)據(jù)源標(biāo)識對應(yīng)的數(shù)據(jù)源中獲取該數(shù)據(jù)源中待分析數(shù)據(jù)的標(biāo)識對應(yīng)的待分析數(shù)據(jù);根據(jù)分析條件,對獲取的所有待分析數(shù)據(jù)進(jìn)行分析,得到數(shù)據(jù)分析結(jié)果。由于預(yù)先定義語義集合,且配置信息是根據(jù)預(yù)先定義的語義集合配置的,因此,可根據(jù)預(yù)先定義的語義集合,設(shè)置復(fù)雜語義的配置信息,進(jìn)一步由于可根據(jù)該配置信息中包括的分析條件,對獲取的所有待分析數(shù)據(jù)進(jìn)行分析,進(jìn)而實(shí)現(xiàn)了分析條件較復(fù)雜時,也可依據(jù)該復(fù)雜的分析條件對數(shù)據(jù)進(jìn)行分析的目的。
[0120]圖3示例性示出了本發(fā)明實(shí)施例提供的一種數(shù)據(jù)分析裝置的結(jié)構(gòu)示意圖。
[0121]基于相同構(gòu)思,本發(fā)明實(shí)施例提供一種數(shù)據(jù)分析裝置的結(jié)構(gòu)示意圖,如圖3所示,包括第一獲取單元301、第二獲取單元302和分析單元303:
[0122]第一獲取單元,用于獲取配置信息;配置信息是根據(jù)預(yù)先定義的語義集合配置的;配置信息中包括分析條件,分析條件對應(yīng)至少兩個數(shù)據(jù)源標(biāo)識,以及每個數(shù)據(jù)源中待分析數(shù)據(jù)的標(biāo)識;
[0123]第二獲取單元,用于根據(jù)分析條件對應(yīng)的數(shù)據(jù)源標(biāo)識,從每個數(shù)據(jù)源標(biāo)識對應(yīng)的數(shù)據(jù)源中獲取該數(shù)據(jù)源中待分析數(shù)據(jù)的標(biāo)識對應(yīng)的待分析數(shù)據(jù);
[0124]分析單元,用于根據(jù)分析條件,對獲取的所有待分析數(shù)據(jù)進(jìn)行分析,得到數(shù)據(jù)分析結(jié)果。
[0125]可選地,分析條件包括N個子分析條件,其中,N為正整數(shù);
[0126]N個子分析條件中包括至少一個第一子分析條件和一個第二子分析條件;其中,每個子分析條件至少對應(yīng)一個數(shù)據(jù)源和該數(shù)據(jù)源中的待分析數(shù)據(jù)的標(biāo)識;
[0127]分析單元,具體用于:
[0128]根據(jù)第一子分析條件,對從第一子分析條件對應(yīng)的數(shù)據(jù)源中獲取的待分析數(shù)據(jù)進(jìn)行分析,得到第一子分析結(jié)果;
[0129]在確定第一子分析結(jié)果符合預(yù)設(shè)條件時,根據(jù)第二子分析條件,對從第二子分析條件對應(yīng)的數(shù)據(jù)源中獲取的待分析數(shù)據(jù)進(jìn)行分析,得到第二子分析結(jié)果,將第二子分析結(jié)果為數(shù)據(jù)分析結(jié)果的一部分;或者
[0130]在確定第一子分析結(jié)果不符合預(yù)設(shè)條件時,將第一子分析結(jié)果作為數(shù)據(jù)分析結(jié)果的一部分。
[0131]可選地,數(shù)據(jù)源中的待分析數(shù)據(jù)的標(biāo)識為以下內(nèi)容中的任一項或任幾項的組合:
[0132]用于標(biāo)識出數(shù)據(jù)源中的所有數(shù)據(jù)的標(biāo)識、待分析數(shù)據(jù)中的一個字段的值、待分析數(shù)據(jù)中的多個字段的值的組合、待分析數(shù)據(jù)中的一個字段的所有值中的部分值、待分析數(shù)據(jù)中的多個字段中每個字段的所有值中部分值的組合。
[0133]可選地,分析單元,具體用于:
[0134]根據(jù)分析條件,將每個數(shù)據(jù)源中的待分析數(shù)據(jù)按照哈希hash分為至少一個數(shù)據(jù)塊;其中,每個數(shù)據(jù)塊對應(yīng)一個hash標(biāo)識;
[0135]根據(jù)分析條件,并行的對每個數(shù)據(jù)源中hash標(biāo)識相同的數(shù)據(jù)塊進(jìn)行數(shù)據(jù)分析。
[0136]可選地,配置信息中還包括數(shù)據(jù)分析結(jié)果輸出條件;
[0137]分析單元,具體用于:
[0138]根據(jù)分析條件,對獲取的所有待分析數(shù)據(jù)進(jìn)行分析;
[0139]根據(jù)數(shù)據(jù)分析結(jié)果輸出條件,生成數(shù)據(jù)分析結(jié)果;
[0140]其中,數(shù)據(jù)分析結(jié)果輸出條件具體為:
[0141]數(shù)據(jù)分析結(jié)果中的數(shù)據(jù)至少包括一個映射字段;映射字段的值為為任一待分析數(shù)據(jù)的全部值或部分值,或者為M個待分析數(shù)據(jù)的全部值或部分值的組合,M為大于等于2的整數(shù)。
[0142]可選地,分析單元,還用于:
[0143]將數(shù)據(jù)分析結(jié)果輸入至線程池;
[0144]周期性并行的將線程池中的多個數(shù)據(jù)分析結(jié)果輸出。
[0145]從上述內(nèi)容可以看出:本發(fā)明實(shí)施例中,獲取配置信息;配置信息是根據(jù)預(yù)先定義的語義集合配置的;配置信息中包括分析條件,分析條件對應(yīng)至少兩個數(shù)據(jù)源標(biāo)識,以及每個數(shù)據(jù)源中待分析數(shù)據(jù)的標(biāo)識;根據(jù)分析條件對應(yīng)的數(shù)據(jù)源標(biāo)識,從每個數(shù)據(jù)源標(biāo)識對應(yīng)的數(shù)據(jù)源中獲取該數(shù)據(jù)源中待分析數(shù)據(jù)的標(biāo)識對應(yīng)的待分析數(shù)據(jù);根據(jù)分析條件,對獲取的所有待分析數(shù)據(jù)進(jìn)行分析,得到數(shù)據(jù)分析結(jié)果。由于預(yù)先定義語義集合,且配置信息是根據(jù)預(yù)先定義的語義集合配置的,因此,可根據(jù)預(yù)先定義的語義集合,設(shè)置復(fù)雜語義的配置信息,進(jìn)一步由于可根據(jù)該配置信息中包括的分析條件,對獲取的所有待分析數(shù)據(jù)進(jìn)行分析,進(jìn)而實(shí)現(xiàn)了分析條件較復(fù)雜時,也可依據(jù)該復(fù)雜的分析條件對數(shù)據(jù)進(jìn)行分析的目的。
[0146]本領(lǐng)域內(nèi)的技術(shù)人員應(yīng)明白,本發(fā)明的實(shí)施例可提供為方法、或計算機(jī)程序產(chǎn)品。因此,本發(fā)明可采用完全硬件實(shí)施例、完全軟件實(shí)施例、或結(jié)合軟件和硬件方面的實(shí)施例的形式。而且,本發(fā)明可采用在一個或多個其中包含有計算機(jī)可用程序代碼的計算機(jī)可用存儲介質(zhì)(包括但不限于磁盤存儲器、CD-ROM、光學(xué)存儲器等)上實(shí)施的計算機(jī)程序產(chǎn)品的形式。
[0147]本發(fā)明是參照根據(jù)本發(fā)明實(shí)施例的方法、裝置(系統(tǒng))、和計算機(jī)程序產(chǎn)品的流程圖和/或方框圖來描述的。應(yīng)理解可由計算機(jī)程序指令實(shí)現(xiàn)流程圖和/或方框圖中的每一流程和/或方框、以及流程圖和/或方框圖中的流程和/或方框的結(jié)合??商峁┻@些計算機(jī)程序指令到通用計算機(jī)、專用計算機(jī)、嵌入式處理機(jī)或其他可編程數(shù)據(jù)處理裝置的處理器以產(chǎn)生一個機(jī)器,使得通過計算機(jī)或其他可編程數(shù)據(jù)處理裝置的處理器執(zhí)行的指令產(chǎn)生用于實(shí)現(xiàn)在流程圖一個流程或多個流程和/或方框圖一個方框或多個方框中指定的功能的裝置。
[0148]這些計算機(jī)程序指令也可存儲在能引導(dǎo)計算機(jī)或其他可編程數(shù)據(jù)處理裝置以特定方式工作的計算機(jī)可讀存儲器中,使得存儲在該計算機(jī)可讀存儲器中的指令產(chǎn)生包括指令裝置的制造品,該指令裝置實(shí)現(xiàn)在流程圖一個流程或多個流程和/或方框圖一個方框或多個方框中指定的功能。
[0149]這些計算機(jī)程序指令也可裝載到計算機(jī)或其他可編程數(shù)據(jù)處理裝置上,使得在計算機(jī)或其他可編程裝置上執(zhí)行一系列操作步驟以產(chǎn)生計算機(jī)實(shí)現(xiàn)的處理,從而在計算機(jī)或其他可編程裝置上執(zhí)行的指令提供用于實(shí)現(xiàn)在流程圖一個流程或多個流程和/或方框圖一個方框或多個方框中指定的功能的步驟。
[0150]盡管已描述了本發(fā)明的優(yōu)選實(shí)施例,但本領(lǐng)域內(nèi)的技術(shù)人員一旦得知了基本創(chuàng)造性概念,則可對這些實(shí)施例作出另外的變更和修改。所以,所附權(quán)利要求意欲解釋為包括優(yōu)選實(shí)施例以及落入本發(fā)明范圍的所有變更和修改。
[0151]顯然,本領(lǐng)域的技術(shù)人員可以對本發(fā)明進(jìn)行各種改動和變型而不脫離本發(fā)明的精神和范圍。這樣,倘若本發(fā)明的這些修改和變型屬于本發(fā)明權(quán)利要求及其等同技術(shù)的范圍之內(nèi),則本發(fā)明也意圖包含這些改動和變型在內(nèi)。
【主權(quán)項】
1.一種數(shù)據(jù)分析方法,其特征在于,包括以下步驟: 獲取配置信息;所述配置信息是根據(jù)預(yù)先定義的語義集合配置的;所述配置信息中包括分析條件,所述分析條件對應(yīng)至少兩個數(shù)據(jù)源標(biāo)識,以及每個數(shù)據(jù)源中待分析數(shù)據(jù)的標(biāo)識; 根據(jù)所述分析條件對應(yīng)的數(shù)據(jù)源標(biāo)識,從每個數(shù)據(jù)源標(biāo)識對應(yīng)的數(shù)據(jù)源中獲取該數(shù)據(jù)源中待分析數(shù)據(jù)的標(biāo)識對應(yīng)的待分析數(shù)據(jù); 根據(jù)所述分析條件,對獲取的所有待分析數(shù)據(jù)進(jìn)行分析,得到數(shù)據(jù)分析結(jié)果。2.如權(quán)利要求1所述的方法,其特征在于,所述分析條件包括N個子分析條件,其中,N為正整數(shù); 所述N個子分析條件中包括至少一個第一子分析條件和一個第二子分析條件;其中,每個子分析條件至少對應(yīng)一個數(shù)據(jù)源和該數(shù)據(jù)源中的待分析數(shù)據(jù)的標(biāo)識; 所述根據(jù)所述分析條件,對獲取的所有待分析數(shù)據(jù)進(jìn)行分析,具體包括: 根據(jù)所述第一子分析條件,對從所述第一子分析條件對應(yīng)的數(shù)據(jù)源中獲取的待分析數(shù)據(jù)進(jìn)行分析,得到第一子分析結(jié)果; 在確定所述第一子分析結(jié)果符合預(yù)設(shè)條件時,根據(jù)所述第二子分析條件,對從所述第二子分析條件對應(yīng)的數(shù)據(jù)源中獲取的待分析數(shù)據(jù)進(jìn)行分析,得到第二子分析結(jié)果,將所述第二子分析結(jié)果為所述數(shù)據(jù)分析結(jié)果的一部分;或者 在確定所述第一子分析結(jié)果不符合預(yù)設(shè)條件時,將所述第一子分析結(jié)果作為所述數(shù)據(jù)分析結(jié)果的一部分。3.如權(quán)利要求1所述的方法,其特征在于,所述數(shù)據(jù)源中的所述待分析數(shù)據(jù)的標(biāo)識為以下內(nèi)容中的任一項或任幾項的組合: 用于標(biāo)識出所述數(shù)據(jù)源中的所有數(shù)據(jù)的標(biāo)識、所述待分析數(shù)據(jù)中的一個字段的值、所述待分析數(shù)據(jù)中的多個字段的值的組合、所述待分析數(shù)據(jù)中的一個字段的所有值中的部分值、所述待分析數(shù)據(jù)中的多個字段中每個字段的所有值中部分值的組合。4.如權(quán)利要求1所述的方法,其特征在于,所述根據(jù)所述分析條件,對獲取的所有待分析數(shù)據(jù)進(jìn)行分析,具體包括: 根據(jù)所述分析條件,將每個數(shù)據(jù)源中的待分析數(shù)據(jù)按照哈希hash分為至少一個數(shù)據(jù)塊;其中,每個數(shù)據(jù)塊對應(yīng)一個hash標(biāo)識; 根據(jù)所述分析條件,并行的對每個數(shù)據(jù)源中hash標(biāo)識相同的數(shù)據(jù)塊進(jìn)行數(shù)據(jù)分析。5.如權(quán)利要求1至4任一權(quán)利要求所述的方法,其特征在于,所述配置信息中還包括數(shù)據(jù)分析結(jié)果輸出條件; 所述根據(jù)所述分析條件,對獲取的所有待分析數(shù)據(jù)進(jìn)行分析,得到數(shù)據(jù)分析結(jié)果,具體包括: 根據(jù)所述分析條件,對獲取的所有待分析數(shù)據(jù)進(jìn)行分析; 根據(jù)所述數(shù)據(jù)分析結(jié)果輸出條件,生成數(shù)據(jù)分析結(jié)果; 其中,所述數(shù)據(jù)分析結(jié)果輸出條件具體為: 所述數(shù)據(jù)分析結(jié)果中的數(shù)據(jù)至少包括一個映射字段;所述映射字段的值為為任一待分析數(shù)據(jù)的全部值或部分值,或者為M個待分析數(shù)據(jù)的全部值或部分值的組合,M為大于等于2的整數(shù)。6.如權(quán)利要求5所述的方法,其特征在于,所述得到數(shù)據(jù)分析結(jié)果之后,還包括: 將所述數(shù)據(jù)分析結(jié)果輸入至線程池; 周期性并行的將所述線程池中的多個數(shù)據(jù)分析結(jié)果輸出。7.一種數(shù)據(jù)分析裝置,其特征在于,包括: 第一獲取單元,用于獲取配置信息;所述配置信息是根據(jù)預(yù)先定義的語義集合配置的;所述配置信息中包括分析條件,所述分析條件對應(yīng)至少兩個數(shù)據(jù)源標(biāo)識,以及每個數(shù)據(jù)源中待分析數(shù)據(jù)的標(biāo)識; 第二獲取單元,用于根據(jù)所述分析條件對應(yīng)的數(shù)據(jù)源標(biāo)識,從每個數(shù)據(jù)源標(biāo)識對應(yīng)的數(shù)據(jù)源中獲取該數(shù)據(jù)源中待分析數(shù)據(jù)的標(biāo)識對應(yīng)的待分析數(shù)據(jù); 分析單元,用于根據(jù)所述分析條件,對獲取的所有待分析數(shù)據(jù)進(jìn)行分析,得到數(shù)據(jù)分析結(jié)果。8.如權(quán)利要求7所述的裝置,其特征在于,所述分析條件包括N個子分析條件,其中,N為正整數(shù); 所述N個子分析條件中包括至少一個第一子分析條件和一個第二子分析條件;其中,每個子分析條件至少對應(yīng)一個數(shù)據(jù)源和該數(shù)據(jù)源中的待分析數(shù)據(jù)的標(biāo)識; 所述分析單元,具體用于: 根據(jù)所述第一子分析條件,對從所述第一子分析條件對應(yīng)的數(shù)據(jù)源中獲取的待分析數(shù)據(jù)進(jìn)行分析,得到第一子分析結(jié)果; 在確定所述第一子分析結(jié)果符合預(yù)設(shè)條件時,根據(jù)所述第二子分析條件,對從所述第二子分析條件對應(yīng)的數(shù)據(jù)源中獲取的待分析數(shù)據(jù)進(jìn)行分析,得到第二子分析結(jié)果,將所述第二子分析結(jié)果為所述數(shù)據(jù)分析結(jié)果的一部分;或者 在確定所述第一子分析結(jié)果不符合預(yù)設(shè)條件時,將所述第一子分析結(jié)果作為所述數(shù)據(jù)分析結(jié)果的一部分。9.如權(quán)利要求7所述的裝置,其特征在于,所述數(shù)據(jù)源中的所述待分析數(shù)據(jù)的標(biāo)識為以下內(nèi)容中的任一項或任幾項的組合: 用于標(biāo)識出所述數(shù)據(jù)源中的所有數(shù)據(jù)的標(biāo)識、所述待分析數(shù)據(jù)中的一個字段的值、所述待分析數(shù)據(jù)中的多個字段的值的組合、所述待分析數(shù)據(jù)中的一個字段的所有值中的部分值、所述待分析數(shù)據(jù)中的多個字段中每個字段的所有值中部分值的組合。10.如權(quán)利要求7所述的裝置,其特征在于,所述分析單元,具體用于: 根據(jù)所述分析條件,將每個數(shù)據(jù)源中的待分析數(shù)據(jù)按照哈希hash分為至少一個數(shù)據(jù)塊;其中,每個數(shù)據(jù)塊對應(yīng)一個hash標(biāo)識; 根據(jù)所述分析條件,并行的對每個數(shù)據(jù)源中hash標(biāo)識相同的數(shù)據(jù)塊進(jìn)行數(shù)據(jù)分析。11.如權(quán)利要求7至10任一權(quán)利要求所述的裝置,其特征在于,所述配置信息中還包括數(shù)據(jù)分析結(jié)果輸出條件; 所述分析單元,具體用于: 根據(jù)所述分析條件,對獲取的所有待分析數(shù)據(jù)進(jìn)行分析; 根據(jù)所述數(shù)據(jù)分析結(jié)果輸出條件,生成數(shù)據(jù)分析結(jié)果; 其中,所述數(shù)據(jù)分析結(jié)果輸出條件具體為: 所述數(shù)據(jù)分析結(jié)果中的數(shù)據(jù)至少包括一個映射字段;所述映射字段的值為為任一待分析數(shù)據(jù)的全部值或部分值,或者為M個待分析數(shù)據(jù)的全部值或部分值的組合,M為大于等于2的整數(shù)。12.如權(quán)利要求11所述的裝置,其特征在于,所述分析單元,還用于: 將所述數(shù)據(jù)分析結(jié)果輸入至線程池; 周期性并行的將所述線程池中的多個數(shù)據(jù)分析結(jié)果輸出。
【文檔編號】G06F19/00GK105930630SQ201510586861
【公開日】2016年9月7日
【申請日】2015年9月15日
【發(fā)明人】吳文昊, 呂伊蒙, 馮哲
【申請人】中國銀聯(lián)股份有限公司