本發(fā)明涉及數(shù)據(jù)處理,具體涉及一種多源異構(gòu)數(shù)據(jù)處理方法、裝置、電子設(shè)備及存儲(chǔ)介質(zhì)。
背景技術(shù):
1、隨著軟件即服務(wù)saas(software?as?a?service)系統(tǒng)的快速發(fā)展,持續(xù)對(duì)接大量第三方系統(tǒng)并接入其數(shù)據(jù)進(jìn)行交互操作已成為常態(tài)。由于不同第三方系統(tǒng)的交互方式、通訊機(jī)制、數(shù)據(jù)加解密算法、數(shù)據(jù)體量、數(shù)據(jù)結(jié)構(gòu)等差異,導(dǎo)致了數(shù)據(jù)處理的工作復(fù)雜度增高,軟件運(yùn)營(yíng)系統(tǒng)的開發(fā)工作量持續(xù)增長(zhǎng),不利于現(xiàn)有系統(tǒng)的穩(wěn)定性。
2、目前,在處理大量來(lái)自不同第三方系統(tǒng)的數(shù)據(jù)源時(shí),往往采用基于適配器模式的處理方式。將不同的數(shù)據(jù)源的數(shù)據(jù)進(jìn)行轉(zhuǎn)換,每一個(gè)第三方系統(tǒng)獨(dú)立一套適配器處理策略,將數(shù)據(jù)轉(zhuǎn)換為軟件運(yùn)營(yíng)系統(tǒng)需要的數(shù)據(jù)格式,實(shí)現(xiàn)了各個(gè)第三方系統(tǒng)之間的數(shù)據(jù)交互的獨(dú)立性,后期變更互相不影響。數(shù)據(jù)接入后存儲(chǔ)到平臺(tái)數(shù)據(jù)庫(kù)中,業(yè)務(wù)系統(tǒng)根據(jù)需要去獲取各自的數(shù)據(jù)進(jìn)行業(yè)務(wù)操作。但是隨著業(yè)務(wù)的增長(zhǎng),每個(gè)第三方系統(tǒng)都有獨(dú)立的策略,會(huì)導(dǎo)致開發(fā)量和運(yùn)維難度較大,不利于軟件運(yùn)營(yíng)系統(tǒng)后期的迭代與擴(kuò)展,因此目前亟需一種數(shù)據(jù)處理方案來(lái)解決當(dāng)前的問(wèn)題。
技術(shù)實(shí)現(xiàn)思路
1、鑒于現(xiàn)有技術(shù)的上述不足,本發(fā)明提供一種多源異構(gòu)數(shù)據(jù)處理方法、裝置、電子設(shè)備及存儲(chǔ)介質(zhì),有效解決現(xiàn)有技術(shù)中由于每個(gè)第三方系統(tǒng)都有獨(dú)立的策略,導(dǎo)致開發(fā)量和運(yùn)維難度較大,不利于軟件運(yùn)營(yíng)系統(tǒng)后期的迭代與擴(kuò)展的問(wèn)題。
2、第一方面,本發(fā)明提供一種多源異構(gòu)數(shù)據(jù)處理方法,所述方法應(yīng)用于軟件運(yùn)營(yíng)系統(tǒng)和第三方系統(tǒng),所述方法包括:
3、定義所述軟件運(yùn)營(yíng)系統(tǒng)的數(shù)據(jù)接入支持的傳輸方式和數(shù)據(jù)格式,根據(jù)所述傳輸方式和所述數(shù)據(jù)格式從所述第三方系統(tǒng)獲取多源異構(gòu)數(shù)據(jù);
4、對(duì)所述多源異構(gòu)數(shù)據(jù)進(jìn)行數(shù)據(jù)處理,包括:
5、根據(jù)所述第三方系統(tǒng)中配置的數(shù)據(jù)轉(zhuǎn)換協(xié)議和加解密規(guī)則進(jìn)行數(shù)據(jù)解析;
6、根據(jù)數(shù)據(jù)的去重規(guī)則、必要屬性和元數(shù)據(jù)定義進(jìn)行數(shù)據(jù)清洗;
7、根據(jù)所述第三方系統(tǒng)和業(yè)務(wù)類型將數(shù)據(jù)清洗后的數(shù)據(jù)進(jìn)行數(shù)據(jù)轉(zhuǎn)換;
8、對(duì)數(shù)據(jù)轉(zhuǎn)換后的數(shù)據(jù)進(jìn)行數(shù)據(jù)加工;
9、根據(jù)數(shù)據(jù)屬性將數(shù)據(jù)處理后的多源異構(gòu)數(shù)據(jù)進(jìn)行分層存儲(chǔ);
10、獲取所述數(shù)據(jù)處理后的多源異構(gòu)數(shù)據(jù)的后置監(jiān)聽配置信息,根據(jù)所述后置監(jiān)聽配置信息觸發(fā)業(yè)務(wù)邏輯操作。
11、進(jìn)一步的,所述根據(jù)所述第三方系統(tǒng)中配置的數(shù)據(jù)轉(zhuǎn)換協(xié)議和加解密規(guī)則進(jìn)行數(shù)據(jù)解析,包括:
12、根據(jù)所述多源異構(gòu)數(shù)據(jù)的各個(gè)數(shù)據(jù)源獲取所述第三方系統(tǒng)的配置信息;
13、根據(jù)所述配置信息獲取加密算法實(shí)例對(duì)象;
14、根據(jù)所述加密算法實(shí)例對(duì)象對(duì)各個(gè)所述數(shù)據(jù)源中的加密數(shù)據(jù)進(jìn)行解密,獲得明文數(shù)據(jù)。
15、進(jìn)一步的,所述根據(jù)數(shù)據(jù)的去重規(guī)則、必要屬性和元數(shù)據(jù)定義進(jìn)行數(shù)據(jù)清洗,包括:
16、根據(jù)去重規(guī)則對(duì)所述明文數(shù)據(jù)進(jìn)行去重;
17、根據(jù)元數(shù)據(jù)必要屬性對(duì)去重后的明文數(shù)據(jù)進(jìn)行過(guò)濾;
18、根據(jù)正則表達(dá)式對(duì)過(guò)濾后的明文數(shù)據(jù)設(shè)定格式要求,從所述過(guò)濾后的明文數(shù)據(jù)濾除不符合所述格式要求的差異數(shù)據(jù),獲得標(biāo)準(zhǔn)數(shù)據(jù)。
19、進(jìn)一步的,所述根據(jù)所述第三方系統(tǒng)和業(yè)務(wù)類型將數(shù)據(jù)清洗后的數(shù)據(jù)進(jìn)行數(shù)據(jù)轉(zhuǎn)換,包括:
20、根據(jù)所述第三方系統(tǒng)獲取元數(shù)據(jù)轉(zhuǎn)換配置表;
21、根據(jù)所述元數(shù)據(jù)轉(zhuǎn)換配置表對(duì)所述標(biāo)準(zhǔn)數(shù)據(jù)進(jìn)行數(shù)據(jù)轉(zhuǎn)換,獲得目標(biāo)數(shù)據(jù)。
22、進(jìn)一步的,所述對(duì)數(shù)據(jù)轉(zhuǎn)換后的數(shù)據(jù)進(jìn)行數(shù)據(jù)加工,包括以下至少一個(gè)步驟:
23、根據(jù)全局默認(rèn)值對(duì)所述目標(biāo)數(shù)據(jù)的部分屬性進(jìn)行默認(rèn)值設(shè)置;
24、根據(jù)所述第三方系統(tǒng)和所述軟件運(yùn)營(yíng)系統(tǒng)的租戶為所述目標(biāo)數(shù)據(jù)補(bǔ)充租戶信息;
25、根據(jù)數(shù)據(jù)價(jià)值為所述目標(biāo)數(shù)據(jù)建立數(shù)據(jù)標(biāo)簽。
26、進(jìn)一步的,所述根據(jù)數(shù)據(jù)屬性將數(shù)據(jù)處理后的多源異構(gòu)數(shù)據(jù)進(jìn)行分層存儲(chǔ),包括:
27、將所述數(shù)據(jù)處理后的多源異構(gòu)數(shù)據(jù)中的配置數(shù)據(jù)和臨時(shí)數(shù)據(jù)存儲(chǔ)在緩存中間件;
28、建立關(guān)系型數(shù)據(jù)庫(kù),將所述數(shù)據(jù)處理后的多源異構(gòu)數(shù)據(jù)中的基礎(chǔ)數(shù)據(jù)和業(yè)務(wù)數(shù)據(jù)存儲(chǔ)到所述關(guān)系型數(shù)據(jù)庫(kù);
29、構(gòu)建數(shù)據(jù)集群,將所述數(shù)據(jù)處理后的多源異構(gòu)數(shù)據(jù)的全生命周期數(shù)據(jù)存儲(chǔ)到所述數(shù)據(jù)集群。
30、進(jìn)一步的,所述數(shù)據(jù)接入支持的傳輸方式至少包括http協(xié)議、傳輸層協(xié)議、中間庫(kù)、消息隊(duì)列和文本數(shù)據(jù)中的一種或多種方式。
31、第二方面,本發(fā)明提供一種多源異構(gòu)數(shù)據(jù)處理裝置,所述裝置應(yīng)用于軟件運(yùn)營(yíng)系統(tǒng)和第三方系統(tǒng),所述裝置包括:
32、數(shù)據(jù)接入模塊,用于定義所述軟件運(yùn)營(yíng)系統(tǒng)的數(shù)據(jù)接入支持的傳輸方式和數(shù)據(jù)格式,根據(jù)所述傳輸方式和所述數(shù)據(jù)格式從所述第三方系統(tǒng)獲取多源異構(gòu)數(shù)據(jù);
33、數(shù)據(jù)處理模塊,用于對(duì)所述多源異構(gòu)數(shù)據(jù)進(jìn)行數(shù)據(jù)處理,包括:
34、根據(jù)所述第三方系統(tǒng)中配置的數(shù)據(jù)轉(zhuǎn)換協(xié)議和加解密規(guī)則進(jìn)行數(shù)據(jù)解析;
35、根據(jù)數(shù)據(jù)的去重規(guī)則、必要屬性和元數(shù)據(jù)定義進(jìn)行數(shù)據(jù)清洗;
36、根據(jù)所述第三方系統(tǒng)和業(yè)務(wù)類型將數(shù)據(jù)清洗后的數(shù)據(jù)進(jìn)行數(shù)據(jù)轉(zhuǎn)換;
37、對(duì)數(shù)據(jù)轉(zhuǎn)換后的數(shù)據(jù)進(jìn)行數(shù)據(jù)加工;
38、數(shù)據(jù)存儲(chǔ)模塊,用于根據(jù)數(shù)據(jù)屬性將數(shù)據(jù)處理后的多源異構(gòu)數(shù)據(jù)進(jìn)行分層存儲(chǔ);
39、后置觸發(fā)模塊,用于獲取所述數(shù)據(jù)處理后的多源異構(gòu)數(shù)據(jù)的后置監(jiān)聽配置信息,根據(jù)所述后置監(jiān)聽配置信息觸發(fā)業(yè)務(wù)邏輯操作。
40、第三方面,本發(fā)明提供一種電子設(shè)備,包括存儲(chǔ)器、處理器及存儲(chǔ)在存儲(chǔ)器上并可在處理器上運(yùn)行的計(jì)算機(jī)程序,所述處理器執(zhí)行所述計(jì)算機(jī)程序?qū)崿F(xiàn)如本發(fā)明第一方面所述的多源異構(gòu)數(shù)據(jù)處理方法。
41、第四方面,本發(fā)明提供一種計(jì)算機(jī)可讀存儲(chǔ)介質(zhì),其上存儲(chǔ)有計(jì)算機(jī)程序,所述計(jì)算機(jī)程序被處理器執(zhí)行時(shí)實(shí)現(xiàn)如本發(fā)明第一方面所述的多源異構(gòu)數(shù)據(jù)處理方法。
42、本發(fā)明提供的多源異構(gòu)數(shù)據(jù)處理方法、裝置、電子設(shè)備及存儲(chǔ)介質(zhì),使用網(wǎng)絡(luò)協(xié)議代替第三方系統(tǒng)的方式進(jìn)行數(shù)據(jù)接入,極大的提高了代碼的復(fù)用率,減少了開發(fā)工作量,實(shí)現(xiàn)基礎(chǔ)功能的同時(shí),利用redis、xml和消息隊(duì)列等技術(shù)手段實(shí)現(xiàn)復(fù)雜業(yè)務(wù)的處理,保障數(shù)據(jù)完全處理為符合業(yè)務(wù)規(guī)范的數(shù)據(jù)。采用配置文件的方式替換實(shí)體對(duì)象的屬性值替換,以更高的抽象維度來(lái)實(shí)現(xiàn)數(shù)據(jù)的轉(zhuǎn)換,數(shù)據(jù)清理和數(shù)據(jù)轉(zhuǎn)換能高效過(guò)濾出有效的數(shù)據(jù),提高數(shù)據(jù)的質(zhì)量,極大提高了轉(zhuǎn)換的準(zhǔn)確率。依賴于本發(fā)明的無(wú)狀態(tài)性,可以進(jìn)行無(wú)限橫向擴(kuò)展,實(shí)現(xiàn)高性能、高可用和動(dòng)態(tài)伸縮等功能,普適性和可配置性強(qiáng),可以實(shí)現(xiàn)數(shù)據(jù)處理的可視化、配置化和數(shù)據(jù)的生命周期管理。
1.一種多源異構(gòu)數(shù)據(jù)處理方法,所述方法應(yīng)用于軟件運(yùn)營(yíng)系統(tǒng)和第三方系統(tǒng),其特征在于,所述方法包括:
2.根據(jù)權(quán)利要求1所述的多源異構(gòu)數(shù)據(jù)處理方法,其特征在于,所述根據(jù)所述第三方系統(tǒng)中配置的數(shù)據(jù)轉(zhuǎn)換協(xié)議和加解密規(guī)則進(jìn)行數(shù)據(jù)解析,包括:
3.根據(jù)權(quán)利要求2所述的多源異構(gòu)數(shù)據(jù)處理方法,其特征在于,所述根據(jù)數(shù)據(jù)的去重規(guī)則、必要屬性和元數(shù)據(jù)定義進(jìn)行數(shù)據(jù)清洗,包括:
4.根據(jù)權(quán)利要求3所述的多源異構(gòu)數(shù)據(jù)處理方法,其特征在于,所述根據(jù)所述第三方系統(tǒng)和業(yè)務(wù)類型將數(shù)據(jù)清洗后的數(shù)據(jù)進(jìn)行數(shù)據(jù)轉(zhuǎn)換,包括:
5.根據(jù)權(quán)利要求4所述的多源異構(gòu)數(shù)據(jù)處理方法,其特征在于,所述對(duì)數(shù)據(jù)轉(zhuǎn)換后的數(shù)據(jù)進(jìn)行數(shù)據(jù)加工,包括以下至少一個(gè)步驟:
6.根據(jù)權(quán)利要求1所述的多源異構(gòu)數(shù)據(jù)處理方法,其特征在于,所述根據(jù)數(shù)據(jù)屬性將數(shù)據(jù)處理后的多源異構(gòu)數(shù)據(jù)進(jìn)行分層存儲(chǔ),包括:
7.根據(jù)權(quán)利要求1所述的多源異構(gòu)數(shù)據(jù)處理方法,其特征在于,所述數(shù)據(jù)接入支持的傳輸方式至少包括http協(xié)議、傳輸層協(xié)議、中間庫(kù)、消息隊(duì)列和文本數(shù)據(jù)中的一種或多種方式。
8.一種多源異構(gòu)數(shù)據(jù)處理裝置,所述裝置應(yīng)用于軟件運(yùn)營(yíng)系統(tǒng)和第三方系統(tǒng),其特征在于,所述裝置包括:
9.一種電子設(shè)備,包括存儲(chǔ)器、處理器及存儲(chǔ)在存儲(chǔ)器上并可在處理器上運(yùn)行的計(jì)算機(jī)程序,其特征在于,所述處理器執(zhí)行所述計(jì)算機(jī)程序?qū)崿F(xiàn)如權(quán)利要求1至7任一項(xiàng)所述的多源異構(gòu)數(shù)據(jù)處理方法。
10.一種計(jì)算機(jī)可讀存儲(chǔ)介質(zhì),其上存儲(chǔ)有計(jì)算機(jī)程序,其特征在于,所述計(jì)算機(jī)程序被處理器執(zhí)行時(shí)實(shí)現(xiàn)如權(quán)利要求1至7任一項(xiàng)所述的多源異構(gòu)數(shù)據(jù)處理方法。