本發(fā)明涉及信息處理技術(shù),具體涉及一種數(shù)據(jù)處理方法及裝置。
背景技術(shù):
隨著移動智能終端的普及,大數(shù)據(jù)時代的到來,針對用戶操作體驗的分析需求日益突出。而由于終端應(yīng)用開發(fā)端開發(fā)的業(yè)務(wù)隨著設(shè)計方案的不同,其數(shù)據(jù)存儲格式也不同,每個應(yīng)用均擁有各自的數(shù)據(jù)存儲和訪問方式,彼此之間相對獨立,進而形成一個個“信息孤島”。而數(shù)據(jù)共享可以使更多的人充分地使用已有的數(shù)據(jù)資源,減少資料收集、數(shù)據(jù)采集等重復(fù)勞動和相應(yīng)費用。現(xiàn)有技術(shù)中,為了實現(xiàn)數(shù)據(jù)共享通常采用以下兩種方式對數(shù)據(jù)進行處理:
1)采用煙囪式存儲方式對多種數(shù)據(jù)存儲格式的數(shù)據(jù)進行存儲。即對每個數(shù)據(jù)存儲格式的數(shù)據(jù)進行獨立存儲分析。具體如圖2所示。
圖2為現(xiàn)有技術(shù)中數(shù)據(jù)處理方法的流程示意圖;如圖2所示,應(yīng)用200a包括數(shù)據(jù)采集單元201a、數(shù)據(jù)存儲單元202a、數(shù)據(jù)提取單元203a和數(shù)據(jù)分發(fā)單元204a;應(yīng)用200b包括數(shù)據(jù)采集單元201b、數(shù)據(jù)存儲單元202b、數(shù)據(jù)提取單元203b和數(shù)據(jù)分發(fā)單元204b;應(yīng)用200c包括數(shù)據(jù)采集單元201c、數(shù)據(jù)存儲單元202c、數(shù)據(jù)提取單元203c和數(shù)據(jù)分發(fā)單元204c;由此可知,現(xiàn)有技術(shù)中各應(yīng)用均是獨立進行數(shù)據(jù)存儲、數(shù)據(jù)提取和數(shù)據(jù)分發(fā)的,彼此之間互不關(guān)聯(lián)。而采用這種數(shù)據(jù)處理方式無法對多種數(shù)據(jù)存儲格式的數(shù)據(jù)實現(xiàn)歸一化存儲及提取,也無法滿足當(dāng)前用戶的按需提取分析大數(shù)據(jù)的需求。
2)將不同數(shù)據(jù)存儲格式的數(shù)據(jù)進行統(tǒng)一格式轉(zhuǎn)換后,進行數(shù)據(jù)存儲分析。具體如圖3所示。
圖3為現(xiàn)有技術(shù)中另一種數(shù)據(jù)處理方法的流程示意圖;如圖3所示,采集單元301a、采集單元301b、采集單元301c分別對應(yīng)用300a、應(yīng)用300b和應(yīng)用300c中的數(shù)據(jù)進行采集,然后經(jīng)格式轉(zhuǎn)換單元302對所述集單元301a、采集單元301b、采集單元301c采集到的數(shù)據(jù)進行數(shù)據(jù)存儲格式轉(zhuǎn)換,具體地,將不同數(shù)據(jù)存儲格式的數(shù)據(jù)轉(zhuǎn)換成相同數(shù)據(jù)存儲格式的數(shù)據(jù)。然后,分別經(jīng)數(shù)據(jù)存儲單元303對格式轉(zhuǎn)換后的數(shù)據(jù)進行存儲,并經(jīng)數(shù)據(jù)提取單元304根據(jù)用戶請求進行數(shù)據(jù)提取,并由數(shù)據(jù)分發(fā)單元405將數(shù)據(jù)提取單元304提取出的數(shù)據(jù)向用戶發(fā)送。
由于現(xiàn)有技術(shù)中采集到的數(shù)據(jù)內(nèi)容、數(shù)據(jù)存儲格式和數(shù)據(jù)質(zhì)量千差萬別,有時甚至?xí)龅綌?shù)據(jù)存儲格式不能轉(zhuǎn)換或數(shù)據(jù)轉(zhuǎn)換格式后丟失信息等棘手問題。因此,這種方法雖然表面上解決了數(shù)據(jù)存儲格式的不一致問題,滿足了后續(xù)對大數(shù)據(jù)分析工作的需求,但是無法實現(xiàn)數(shù)據(jù)的按需提取,對數(shù)據(jù)的處理帶來了局限性,同時基于此方法存儲的數(shù)據(jù),會導(dǎo)致后續(xù)的分析結(jié)果失真。
技術(shù)實現(xiàn)要素:
為解決現(xiàn)有存在的技術(shù)問題,本發(fā)明實施例期望提供一種數(shù)據(jù)處理方法及裝置,能夠在不改變原數(shù)據(jù)存儲格式的情況下,實現(xiàn)對多元異構(gòu)數(shù)據(jù)的處理,滿足當(dāng)前用戶的按需提取分析大數(shù)據(jù)的需求。
本發(fā)明實施例的技術(shù)方案是這樣實現(xiàn)的:
根據(jù)本發(fā)明實施例的一方面,提供一種數(shù)據(jù)處理方法,所述方法包括:
接收數(shù)據(jù)查詢請求,所述數(shù)據(jù)查詢請求中攜帶有待查詢數(shù)據(jù)的數(shù)據(jù)特征信息;
在狀態(tài)機存儲引擎中提取與所述數(shù)據(jù)特征信息匹配的狀態(tài)機信息,所述狀態(tài)機信息包括一個以上的數(shù)據(jù)源信息;
根據(jù)所述狀態(tài)機信息在特征數(shù)據(jù)庫中提取與所述數(shù)據(jù)源信息匹配的第一特征數(shù)據(jù);
從所述第一特征數(shù)據(jù)中提取與所述數(shù)據(jù)特征信息匹配的第二特征數(shù)據(jù),將所述第二特征數(shù)據(jù)進行發(fā)送。
上述方案中,在所述接收數(shù)據(jù)查詢請求之前,所述方法還包括:
確定數(shù)據(jù)存儲格式,根據(jù)所述數(shù)據(jù)存儲格式進行數(shù)據(jù)采集;
對采集到的數(shù)據(jù)進行特征分類,將不同特征的數(shù)據(jù)存儲在所述特征數(shù)據(jù)庫中不同特征的子數(shù)據(jù)庫;
將所述數(shù)據(jù)存儲格式的信息存儲在所述狀態(tài)機存儲引擎中的與所述數(shù)據(jù)存儲格式對應(yīng)的狀態(tài)機中。
上述方案中,在所述將所述數(shù)據(jù)存儲格式的信息存儲在所述狀態(tài)機存儲引擎中的與所述數(shù)據(jù)存儲格式對應(yīng)的狀態(tài)機中之前,所述方法還包括:
確定所述狀態(tài)機存儲引擎中的狀態(tài)機信息與所述數(shù)據(jù)存儲格式不匹配時,創(chuàng)建與所述數(shù)據(jù)存儲格式相匹配的新狀態(tài)機;
將所述數(shù)據(jù)存儲格式的信息存儲在所述新狀態(tài)機。
上述方案中,在所述將所述第二特征數(shù)據(jù)進行發(fā)送之前,所述方法還包括:
將所述一個以上的數(shù)據(jù)源信息與所述第一特征數(shù)據(jù)進行合并而生成元數(shù)據(jù)表;
從所述元數(shù)據(jù)表中提取與所述數(shù)據(jù)特征信息匹配的第二特征數(shù)據(jù),并將所述第二特征數(shù)據(jù)進行發(fā)送。
上述方案中,將所述第二特征數(shù)據(jù)進行發(fā)送,包括:
根據(jù)所述數(shù)據(jù)查詢請求確定數(shù)據(jù)分發(fā)的目的地址;
將所述第二特征數(shù)據(jù)向所述目的地址發(fā)送。
根據(jù)本發(fā)明實施例的另一方面,提供一種數(shù)據(jù)處理裝置,所述裝置包括:
數(shù)據(jù)分發(fā)引擎,用于接收數(shù)據(jù)查詢請求,所述數(shù)據(jù)查詢請求中攜帶有待查詢數(shù)據(jù)的數(shù)據(jù)特征信息;并從數(shù)據(jù)提取引擎提取出的第一特征數(shù)據(jù)中提取與所述數(shù)據(jù)特征信息相匹配的第二特征數(shù)據(jù),將所述第二特征數(shù)據(jù)進行發(fā)送;
數(shù)據(jù)提取引擎,用于在狀態(tài)機存儲引擎中提取與所述數(shù)據(jù)特征信息匹配的狀態(tài)機信息,所述狀態(tài)機信息包括一個以上的數(shù)據(jù)源信息;根據(jù)所述狀態(tài)機信息在特征數(shù)據(jù)庫中提取與所述數(shù)據(jù)源信息匹配的第一特征數(shù)據(jù)。
上述方案中,所述裝置還包括:數(shù)據(jù)采集引擎和數(shù)據(jù)分揀引擎;
所述數(shù)據(jù)采集引擎,用于確定數(shù)據(jù)存儲格式,根據(jù)所述數(shù)據(jù)存儲格式進行數(shù)據(jù)采集;
所述數(shù)據(jù)分揀引擎,用于對采集到的數(shù)據(jù)進行特征分類,將不同特征的數(shù)據(jù)存儲在所述特征數(shù)據(jù)庫中不同特征的子數(shù)據(jù)庫;將所述數(shù)據(jù)存儲格式的信息存儲在所述狀態(tài)機存儲引擎中的與所述數(shù)據(jù)存儲格式對應(yīng)的狀態(tài)機中。
上述方案中,所述數(shù)據(jù)分揀引擎,還用于確定所述狀態(tài)機存儲引擎中的狀態(tài)機信息與所述數(shù)據(jù)存儲格式不匹配時,創(chuàng)建與所述數(shù)據(jù)存儲格式相匹配的新狀態(tài)機;將所述數(shù)據(jù)存儲格式的信息存儲在所述新狀態(tài)機。
上述方案中,所述數(shù)據(jù)提取單元,還用于將所述一個以上的數(shù)據(jù)源信息和所述第一特征數(shù)據(jù)進行合并而生成元數(shù)據(jù)表;
所述數(shù)據(jù)分發(fā)引擎,具體用于從所述元數(shù)據(jù)表中提取與所述數(shù)據(jù)特征信息相匹配的第二特征數(shù)據(jù),并將所述第二特征數(shù)據(jù)進行發(fā)送。
上述方案中,所述數(shù)據(jù)分發(fā)引擎,具體還用于根據(jù)所述數(shù)據(jù)查詢請求確定數(shù)據(jù)分發(fā)的目的地址;將所述第二特征數(shù)據(jù)向所述目的地址發(fā)送。
本發(fā)明實施例提供一種數(shù)據(jù)處理方法及裝置,接收數(shù)據(jù)查詢請求,所述數(shù)據(jù)查詢請求中攜帶有待查詢數(shù)據(jù)的數(shù)據(jù)特征信息;在狀態(tài)機存儲引擎中提取與所述數(shù)據(jù)特征信息匹配的狀態(tài)機信息,所述狀態(tài)機信息包括一個以上的數(shù)據(jù)源信息;根據(jù)所述狀態(tài)機信息在特征數(shù)據(jù)庫中提取與所述數(shù)據(jù)源信息匹配的第一特征數(shù)據(jù);從所述第一特征數(shù)據(jù)中提取與所述數(shù)據(jù)特征信息匹配的第二特征數(shù)據(jù),將所述第二特征數(shù)據(jù)進行發(fā)送。如此,通過應(yīng)用開發(fā)端與云平臺約定的數(shù)據(jù)存儲格式,對多元異構(gòu)數(shù)據(jù)進行統(tǒng)一采集,能降低應(yīng)用開發(fā)端對接入數(shù)據(jù)的改造成本,并且能有效的擴大數(shù)據(jù)采集范圍;通過按數(shù)據(jù)特征對多元異構(gòu)數(shù)據(jù)進行分類存儲,實現(xiàn)了數(shù)據(jù)的歸一化存儲;通過按數(shù)據(jù)特征提取待查詢數(shù)據(jù),并將提取到的特征數(shù)據(jù)和數(shù)據(jù)存儲格式信息合并而生成元數(shù)據(jù)表,然后根據(jù)用戶的需求,將最終提取的特征數(shù)據(jù)向數(shù)據(jù)分發(fā)的目的地址發(fā)送,滿足了用戶的按需提取分析大數(shù)據(jù)的需求。由于本發(fā)明實施例中無需對原數(shù)據(jù)的數(shù)據(jù)存儲格式進行格式轉(zhuǎn)換,從而不會導(dǎo)致數(shù)據(jù)的分析結(jié)果失真。
附圖說明
圖1為本發(fā)明實施例一種數(shù)據(jù)處理方法的流程示意圖;
圖2為現(xiàn)有技術(shù)中數(shù)據(jù)處理方法的流程示意圖;
圖3為現(xiàn)有技術(shù)中另一種數(shù)據(jù)處理方法的流程示意圖;
圖4為本發(fā)明實施例一種數(shù)據(jù)處理裝置的結(jié)構(gòu)組成示例圖;
圖5為本發(fā)明實施例一種數(shù)據(jù)處理裝置的結(jié)構(gòu)組成示意圖;
圖6為本發(fā)明實施例中數(shù)據(jù)存儲格式的示意圖。
具體實施方式
下面結(jié)合附圖對本發(fā)明的具體實施方式進行詳細說明。應(yīng)當(dāng)理解的是,此處所描述的具體實施方式僅用于說明和解釋本發(fā)明,并不用于限制本發(fā)明。
圖1為本發(fā)明實施例一種數(shù)據(jù)處理方法的流程示意圖;如圖1所示,該方法包括:
步驟101,接收數(shù)據(jù)查詢請求,所述數(shù)據(jù)查詢請求中攜帶有待查詢數(shù)據(jù)的數(shù)據(jù)特征信息;
本發(fā)明實施例中,所述方法主要應(yīng)用在數(shù)據(jù)處理系統(tǒng)。具體地,當(dāng)所述數(shù)據(jù)處理系統(tǒng)接收到數(shù)據(jù)需求端發(fā)送的數(shù)據(jù)查詢請求后,根據(jù)所述數(shù)據(jù)查詢請求中的數(shù)據(jù)提取需求,確定待查詢數(shù)據(jù)的數(shù)據(jù)特征信息。
步驟102,在狀態(tài)機存儲引擎中提取與所述數(shù)據(jù)特征信息匹配的狀態(tài)機信息,所述狀態(tài)機信息包括一個以上的數(shù)據(jù)源信息;根據(jù)所述狀態(tài)機信息在特征數(shù)據(jù)庫中提取與所述數(shù)據(jù)源信息匹配的第一特征數(shù)據(jù);
這里,所述數(shù)據(jù)處理系統(tǒng)確定數(shù)據(jù)需求端需要查詢的數(shù)據(jù)特征信息后,首先在狀態(tài)機存儲引擎中提取與所述數(shù)據(jù)特征信息相匹配的一個或多個狀態(tài)機信息,這里,每個狀態(tài)機對應(yīng)一個數(shù)據(jù)存儲格式,并且在數(shù)據(jù)存儲格式的信息中包括有數(shù)據(jù)源信息,例如,應(yīng)用標(biāo)識、數(shù)據(jù)特征等。然后,再根據(jù)所述狀態(tài)機信息在特征數(shù)據(jù)庫中提取與所述數(shù)據(jù)源信息匹配的第一特征數(shù)據(jù)。并將所述一個以上的數(shù)據(jù)源信息與所述第一特征數(shù)據(jù)進行合并而生成元數(shù)據(jù)表。如此,能夠?qū)崿F(xiàn)數(shù)據(jù)的統(tǒng)一提取。
步驟103,從所述第一特征數(shù)據(jù)中提取與所述數(shù)據(jù)特征信息匹配的第二特征數(shù)據(jù),將所述第二特征數(shù)據(jù)進行發(fā)送。
這里,所述數(shù)據(jù)處理系統(tǒng)還用于根據(jù)所述數(shù)據(jù)查詢請求,確定數(shù)據(jù)分發(fā)的目的地址;即根據(jù)所述數(shù)據(jù)查詢請求,確定用戶要求分發(fā)的數(shù)據(jù)具備哪些數(shù)據(jù)特征,以及該數(shù)據(jù)要求被分發(fā)到那個服務(wù)器地址。然后,再從所述元數(shù)據(jù)表中提取與所述數(shù)據(jù)特征信息匹配的第二特征數(shù)據(jù),并將所述第二特征數(shù)據(jù)向所述目的地址發(fā)送。如此,滿足了用戶的按需提取分析大數(shù)據(jù)的需求。
在本發(fā)明實施例中,在所述接收用戶發(fā)送的數(shù)據(jù)查詢請求之前,所述方法還包括:
確定數(shù)據(jù)存儲格式,根據(jù)所述數(shù)據(jù)存儲格式進行數(shù)據(jù)采集;
對采集到的數(shù)據(jù)進行特征分類,將不同特征的數(shù)據(jù)存儲在所述特征數(shù)據(jù)庫中不同特征的子數(shù)據(jù)庫;
將所述數(shù)據(jù)存儲格式的信息存儲在所述狀態(tài)機存儲引擎中的與所述數(shù)據(jù)存儲格式對應(yīng)的狀態(tài)機中。
這里,所述數(shù)據(jù)處理系統(tǒng)在采集數(shù)據(jù)之前,需要與各個應(yīng)用提供端確定數(shù)據(jù)存儲格式,然后將確定的所述數(shù)據(jù)存儲格式配置到數(shù)據(jù)采集規(guī)則中,并根據(jù)確定的所述數(shù)據(jù)存儲格式對一個以上的應(yīng)用數(shù)據(jù)進行數(shù)據(jù)采集,即對多元異構(gòu)數(shù)據(jù)進行采集。本發(fā)明實施例中,各個應(yīng)用提供端與所述數(shù)據(jù)處理系統(tǒng)約定的數(shù)據(jù)存儲格式不限,可以是任意一種或多種數(shù)據(jù)存儲格式,只需應(yīng)用提供端與所述數(shù)據(jù)處理系統(tǒng)之間對數(shù)據(jù)存儲格式進行約定即可。
在本發(fā)明實施例中,所述數(shù)據(jù)存儲格式具體可以是如圖6所示的數(shù)據(jù)存儲格式,如圖6所示,包括應(yīng)用1數(shù)據(jù)存儲格式、應(yīng)用2數(shù)據(jù)存儲格式和應(yīng)用3數(shù)據(jù)存儲格式;其中,應(yīng)用1數(shù)據(jù)存儲格式包括用戶標(biāo)識、特征1、特征2、特征3和特征4;應(yīng)用2數(shù)據(jù)存儲格式包括用戶標(biāo)識、特征3、和特征5;應(yīng)用3數(shù)據(jù)存儲格式包括用戶標(biāo)識和特征6。例如,總體分析部門所屬的應(yīng)用1、應(yīng)用2、應(yīng)用3這三個應(yīng)用的應(yīng)用提供端分別于總部平臺約定所采集數(shù)據(jù)的存儲格式,約定后的數(shù)據(jù)存儲格式將統(tǒng)一配置在數(shù)據(jù)采集規(guī)則中,然后由所述數(shù)據(jù)處理系統(tǒng)中的數(shù)據(jù)采集引擎根據(jù)數(shù)據(jù)采集規(guī)則將應(yīng)用1數(shù)據(jù)庫、應(yīng)用2數(shù)據(jù)庫、應(yīng)用3數(shù)據(jù)庫中的數(shù)據(jù)采集上來。
所述數(shù)據(jù)處理系統(tǒng)根據(jù)確定的數(shù)據(jù)存儲格式采集到數(shù)據(jù)后,根據(jù)數(shù)據(jù)存儲規(guī)則對采集到的數(shù)據(jù)進行特征分類。并將不同特征的數(shù)據(jù)分揀到所述特征數(shù)據(jù)庫中不同特征的子數(shù)據(jù)庫中。另外,根據(jù)所述數(shù)據(jù)存儲格式確定所述狀態(tài)機存儲引擎中是否存在與所述數(shù)據(jù)存儲格式對應(yīng)的狀態(tài)機,當(dāng)確定所述狀態(tài)機存儲引擎中存在有與所述數(shù)據(jù)存儲格式對應(yīng)的狀態(tài)機時,直接將所述數(shù)據(jù)存儲格式的信息保存到所述狀態(tài)機中;當(dāng)確定所述狀態(tài)機存儲引擎中的狀態(tài)機信息與所述數(shù)據(jù)存儲格式不匹配時,創(chuàng)建與所述數(shù)據(jù)存儲格式相匹配的新狀態(tài)機;并將所述數(shù)據(jù)存儲格式的信息存儲在所述新狀態(tài)機。如此,能夠?qū)崿F(xiàn)多元異構(gòu)數(shù)據(jù)的歸一化存儲。
圖4為本發(fā)明實施例一種數(shù)據(jù)處理裝置的結(jié)構(gòu)示例圖;如圖4所示,所述裝置包括:數(shù)據(jù)采集引擎402、數(shù)據(jù)分揀引擎403、數(shù)據(jù)提取引擎406、數(shù)據(jù)分發(fā)引擎408和數(shù)據(jù)采集處理規(guī)則調(diào)度引擎409;其中,所述數(shù)據(jù)采集處理規(guī)則調(diào)度引擎409中包括數(shù)據(jù)采集規(guī)則、狀態(tài)機存儲規(guī)則、特征數(shù)據(jù)存儲規(guī)則、特征數(shù)據(jù)提取規(guī)則和數(shù)據(jù)分發(fā)規(guī)則。
具體地,所述數(shù)據(jù)采集規(guī)則中包括各個應(yīng)用提供端與所述數(shù)據(jù)處理系統(tǒng)約定好的數(shù)據(jù)存儲格式。所述數(shù)據(jù)采集引擎402根據(jù)所述數(shù)據(jù)采集規(guī)則,在第一應(yīng)用數(shù)據(jù)庫401a、第二應(yīng)用數(shù)據(jù)庫401b和第三應(yīng)用數(shù)據(jù)庫401c中對第一應(yīng)用400a、第二應(yīng)用400b和第三應(yīng)用400c進行統(tǒng)一的數(shù)據(jù)采集。待所述數(shù)據(jù)采集引擎402采集到所述第一應(yīng)用400a、所述第二應(yīng)用400b和所述第三應(yīng)用400c的數(shù)據(jù),即多元異構(gòu)數(shù)據(jù)后,觸發(fā)數(shù)據(jù)分揀引擎403,由所述數(shù)據(jù)分揀引擎403根據(jù)數(shù)據(jù)采集規(guī)則,判斷狀態(tài)機存儲引擎405中是否存在與所述第一應(yīng)用400a、所述第二應(yīng)用400b和所述第三應(yīng)用400c的數(shù)據(jù)存儲格式相對應(yīng)的狀態(tài)機,當(dāng)所述數(shù)據(jù)分揀引擎403確定所述狀態(tài)機存儲引擎405中存在與所述第一應(yīng)用400a、所述第二應(yīng)用400b和所述第三應(yīng)用400c的數(shù)據(jù)存儲格式相對應(yīng)的狀態(tài)機時,直接將所述第一應(yīng)用400a、所述第二應(yīng)用400b和所述第三應(yīng)用400c的數(shù)據(jù)存儲格式的信息存儲在與其數(shù)據(jù)存儲格式相對應(yīng)的狀態(tài)機中;當(dāng)所述數(shù)據(jù)分揀引擎403確定所述狀態(tài)機存儲引擎405中沒有與所述第一應(yīng)用400a、所述第二應(yīng)用400b和所述第三應(yīng)用400c的數(shù)據(jù)存儲格式相對應(yīng)的狀態(tài)機時,則在狀態(tài)機存儲引擎405中創(chuàng)建與所述第一應(yīng)用400a、所述第二應(yīng)用400b和所述第三應(yīng)用400c的數(shù)據(jù)存儲格式相對應(yīng)的新狀態(tài)機。例如,所述第一應(yīng)用400a、所述第二應(yīng)用400b和所述第三應(yīng)用400c包括三種數(shù)據(jù)存儲格式,則在所述狀態(tài)機存儲引擎405中創(chuàng)建與這三種數(shù)據(jù)存儲格式相對應(yīng)的三個狀態(tài)機,即狀態(tài)機1、狀態(tài)機2和狀態(tài)機3。之后,再對采集到的所述多元異構(gòu)數(shù)據(jù)的特征數(shù)據(jù)進行分類。具體地,所述數(shù)據(jù)分揀引擎403根據(jù)所述特征數(shù)據(jù)存儲規(guī)則,將所述數(shù)據(jù)采集引擎402采集到的不同數(shù)據(jù)特征信息的數(shù)據(jù)分揀到特征數(shù)據(jù)庫404中不同的子特征數(shù)據(jù)庫中;例如,所述數(shù)據(jù)采集引擎402采集到的數(shù)據(jù)一共包括四種數(shù)據(jù)特征,則所述數(shù)據(jù)分揀引擎403則將所述四種數(shù)據(jù)特征的數(shù)據(jù)分別存儲在所述特征數(shù)據(jù)庫404中不同特征的子數(shù)據(jù)庫;或者所述第一應(yīng)用400a包括四種數(shù)據(jù)特征,則將所述第一應(yīng)用400a的數(shù)據(jù)分揀到所述特征數(shù)據(jù)庫404中不同特征的子數(shù)據(jù)庫。這里,在每個子數(shù)據(jù)庫中存儲有多個應(yīng)用的相同特征的特征數(shù)據(jù)。
當(dāng)數(shù)據(jù)分發(fā)引擎408接收到數(shù)據(jù)需求端發(fā)送的數(shù)據(jù)查詢請求時,首先根據(jù)所述數(shù)據(jù)查詢請求確定待查詢數(shù)據(jù)的數(shù)據(jù)特征信息,然后觸發(fā)數(shù)據(jù)提取引擎406根據(jù)所述特征數(shù)據(jù)提取規(guī)則在所述狀態(tài)機存儲引擎405中提取與所述數(shù)據(jù)特征信息相匹配的狀態(tài)機信息。這里,每個狀態(tài)機對應(yīng)一個數(shù)據(jù)存儲格式,每個數(shù)據(jù)存儲格式中包括數(shù)據(jù)源信息,例如應(yīng)用來源標(biāo)示及該應(yīng)用中的數(shù)據(jù)特征標(biāo)識。然后,再根據(jù)提取到的狀態(tài)機信息在所述特征數(shù)據(jù)庫404中提取一個應(yīng)用或多個應(yīng)用相匹配的第一特征數(shù)據(jù),并將提取出的所述第一特征數(shù)據(jù)和所述狀態(tài)機信息中的數(shù)據(jù)源信息進行合并,生成元數(shù)據(jù)表407。例如,數(shù)據(jù)需求端需要提取具備特征1的元數(shù)據(jù),則所述數(shù)據(jù)提取引擎406從狀態(tài)機存儲引擎405中獲得與特征1的數(shù)據(jù)相匹配的數(shù)據(jù)來源信息為應(yīng)用1、應(yīng)用2、應(yīng)用3,然后再從特征數(shù)據(jù)庫404中的特征1數(shù)據(jù)庫提取出相應(yīng)的數(shù)據(jù),最后,將與特征1的數(shù)據(jù)匹配的應(yīng)用及特征數(shù)據(jù)進行合并后生成格式化特征1元數(shù)據(jù)表。之后由所述數(shù)據(jù)提取引擎406觸發(fā)數(shù)據(jù)分發(fā)引擎408,由所述數(shù)據(jù)分發(fā)引擎408按照所述數(shù)據(jù)分發(fā)規(guī)則在所述元數(shù)據(jù)表407中提取與數(shù)據(jù)需求端需求的特征數(shù)據(jù)相匹配的第二特征數(shù)據(jù),將所述第二特征數(shù)據(jù)向數(shù)據(jù)分發(fā)目地地址分發(fā)。例如,當(dāng)數(shù)據(jù)分發(fā)的目的地址是數(shù)據(jù)分析總部和應(yīng)用開發(fā)端,則將所述第二特征數(shù)據(jù)向數(shù)據(jù)分析總部和應(yīng)用開發(fā)端發(fā)送。在本發(fā)明實施例中,所述數(shù)據(jù)特征可以是終端型號、終端的地理位置信息、終端使用指示信息等。
圖5為本發(fā)明實施例一種數(shù)據(jù)處理裝置的結(jié)構(gòu)示意圖;如圖5所示,所述裝置包括:數(shù)據(jù)采集引擎501、數(shù)據(jù)分揀引擎502、特征數(shù)據(jù)庫503、狀態(tài)機存儲引擎504、數(shù)據(jù)提取引擎505、元數(shù)據(jù)表506、數(shù)據(jù)分發(fā)引擎507和數(shù)據(jù)采集處理規(guī)則調(diào)度引擎508;
其中,所述特征數(shù)據(jù)庫503用于存儲各個應(yīng)用的數(shù)據(jù)特征信息,所述狀態(tài)機存儲引擎504用于存儲應(yīng)用提供端與數(shù)據(jù)處理系統(tǒng)約定好的數(shù)據(jù)存儲格式信息;
具體地,數(shù)據(jù)分發(fā)引擎507,用于接收數(shù)據(jù)查詢請求,所述數(shù)據(jù)查詢請求中攜帶有待查詢數(shù)據(jù)的數(shù)據(jù)特征信息;并從數(shù)據(jù)提取引擎505提取出的第一特征數(shù)據(jù)中提取與所述數(shù)據(jù)特征信息相匹配的第二特征數(shù)據(jù),將所述第二特征數(shù)據(jù)進行發(fā)送;
數(shù)據(jù)提取引擎505,用于在狀態(tài)機存儲引擎504中提取與所述數(shù)據(jù)特征信息匹配的狀態(tài)機信息,所述狀態(tài)機信息包括一個以上的數(shù)據(jù)源信息;根據(jù)所述狀態(tài)機信息在特征數(shù)據(jù)庫503中提取與所述數(shù)據(jù)源信息匹配的第一特征數(shù)據(jù)。
這里,當(dāng)所述數(shù)據(jù)分發(fā)引擎507接收到數(shù)據(jù)需求端發(fā)送的數(shù)據(jù)查詢請求后,根據(jù)所述數(shù)據(jù)查詢請求中的數(shù)據(jù)提取需求,確定待查詢數(shù)據(jù)的數(shù)據(jù)特征信息。之后,所述數(shù)據(jù)分發(fā)引擎507觸發(fā)所述數(shù)據(jù)提取引擎505,由所述數(shù)據(jù)提取引擎505根據(jù)特征數(shù)據(jù)提取規(guī)則,首先在狀態(tài)機存儲引擎504中提取與所述數(shù)據(jù)特征信息相匹配的一個或多個狀態(tài)機信息,這里,每個狀態(tài)機對應(yīng)一個數(shù)據(jù)存儲格式,并且在數(shù)據(jù)存儲格式的信息中包括有數(shù)據(jù)源信息,例如,應(yīng)用標(biāo)識、數(shù)據(jù)特征等。然后再根據(jù)所述狀態(tài)機信息在特征數(shù)據(jù)庫503中提取與所述數(shù)據(jù)特征信息相匹配的一個或多個應(yīng)用的第一特征數(shù)據(jù);將一個以上的數(shù)據(jù)源信息與所述第一特征數(shù)據(jù)進行合并而生成元數(shù)據(jù)表506。然后觸發(fā)所述數(shù)據(jù)分發(fā)引擎507,所述數(shù)據(jù)分發(fā)引擎507根據(jù)所述數(shù)據(jù)查詢請求,確定數(shù)據(jù)分發(fā)的目的地址;即根據(jù)所述數(shù)據(jù)查詢請求,確定用戶要求分發(fā)的數(shù)據(jù)具備哪些數(shù)據(jù)特征,以及該數(shù)據(jù)要求被分發(fā)到那個服務(wù)器地址。然后,根據(jù)數(shù)據(jù)分發(fā)規(guī)則在所述元數(shù)據(jù)表506中提取與所述特征靈敏據(jù)信息相匹配的第二特征數(shù)據(jù),將所述第二特征數(shù)據(jù)向數(shù)據(jù)分發(fā)的目地地址發(fā)送。在本發(fā)明實施例中,元數(shù)據(jù)表506中包括多個元數(shù)據(jù),例如,元數(shù)據(jù)1、元數(shù)據(jù)2…元數(shù)據(jù)m,其中,m是指元數(shù)據(jù)對應(yīng)編號。
在本發(fā)明實施例中,所述數(shù)據(jù)采集處理規(guī)則調(diào)度引擎508包括:數(shù)據(jù)采集規(guī)則、狀態(tài)機存儲規(guī)則、特征數(shù)據(jù)存儲規(guī)則、數(shù)據(jù)提取規(guī)則和數(shù)據(jù)分發(fā)規(guī)則。
所述數(shù)據(jù)分發(fā)規(guī)則是指,所述數(shù)據(jù)分發(fā)引擎507根據(jù)接收到的數(shù)據(jù)查詢請求,確定待查詢數(shù)據(jù)的數(shù)據(jù)特征信息,然后根據(jù)所述數(shù)據(jù)特征信息在元數(shù)據(jù)表506中提取與其匹配的特征數(shù)據(jù),并按照所述數(shù)據(jù)查詢請求中數(shù)據(jù)分發(fā)的目的地址,將提取到的特征數(shù)據(jù)向所述目地地址發(fā)送。如此,不僅實現(xiàn)了不同數(shù)據(jù)存儲格式及不同數(shù)據(jù)特征數(shù)據(jù)的統(tǒng)一提取,而且還滿足了用戶的按需提取分析大數(shù)據(jù)的需求。
在本發(fā)明實施例中,所述數(shù)據(jù)采集引擎501,還用于確定數(shù)據(jù)存儲格式,根據(jù)所述數(shù)據(jù)存儲格式進行數(shù)據(jù)采集;
所述數(shù)據(jù)分揀引擎502,用于對采集到的數(shù)據(jù)進行特征分類,將不同特征的數(shù)據(jù)存儲在所述特征數(shù)據(jù)庫503中不同特征的子數(shù)據(jù)庫;將所述數(shù)據(jù)存儲格式的信息存儲在所述狀態(tài)機存儲引擎504中的與所述數(shù)據(jù)存儲格式對應(yīng)的狀態(tài)機中。
這里,例如應(yīng)用1、應(yīng)用2、應(yīng)用n,其中,n代表具體應(yīng)用對應(yīng)編號。在所述數(shù)據(jù)采集引擎501在進行數(shù)據(jù)采集之前,各應(yīng)用提供端需與所述數(shù)據(jù)處理系統(tǒng)進行數(shù)據(jù)存儲格式的約定,待數(shù)據(jù)存儲格式的約定好后,將所述數(shù)據(jù)存儲格式配置到數(shù)據(jù)采集規(guī)則中,所述數(shù)據(jù)采集引擎501即可根據(jù)數(shù)據(jù)采集規(guī)則通過各應(yīng)用的數(shù)據(jù)庫,例如應(yīng)用1數(shù)據(jù)庫、應(yīng)用2數(shù)據(jù)庫、應(yīng)用3數(shù)據(jù)庫對一個或多個應(yīng)用數(shù)據(jù)進行采集。本發(fā)明實施例中,各應(yīng)用提供端與數(shù)據(jù)處理系統(tǒng)約定的數(shù)據(jù)存儲格式不限,可以是任意一種或多種數(shù)據(jù)存儲格式,只需應(yīng)用開發(fā)端與云平臺之間對數(shù)據(jù)存儲格式進行約定即可。具體的數(shù)據(jù)存儲格式如方法實施例中圖6的描述。
所述數(shù)據(jù)采集引擎501根據(jù)確定的數(shù)據(jù)存儲格式采集到各應(yīng)用的數(shù)據(jù)后,確觸發(fā)所述數(shù)據(jù)分揀引擎502根據(jù)數(shù)據(jù)存儲規(guī)則對采集到的所述數(shù)據(jù)進行特征分類,然后將不同特征的數(shù)據(jù)分揀到所述特征數(shù)據(jù)庫503中的不同特征的子數(shù)據(jù)庫中。同時,根據(jù)狀態(tài)機存儲規(guī)則確定狀態(tài)機存儲引擎504中是否存在與所述數(shù)據(jù)存儲格式相匹配的狀態(tài)機,如若有,直接將所述數(shù)據(jù)存儲格式的信息存儲在與其相對應(yīng)的狀態(tài)機中,如若沒有,則創(chuàng)建與所述數(shù)據(jù)存儲格式相對應(yīng)的新狀態(tài)機,并將所述數(shù)據(jù)存儲格式存儲到所述新狀態(tài)機中。如此,能夠?qū)崿F(xiàn)多元異構(gòu)數(shù)據(jù)的歸一化存儲。
本發(fā)明實施例與現(xiàn)有技術(shù)相比,數(shù)據(jù)分發(fā)時能夠按用戶需求定制,與數(shù)據(jù)的各規(guī)則、狀態(tài)機、特征數(shù)據(jù)等并無關(guān)聯(lián),能夠真正的實現(xiàn)多無異構(gòu)數(shù)據(jù)的采集、對不同數(shù)據(jù)存儲格式、不同數(shù)據(jù)特征的數(shù)據(jù)進行歸一化存儲,并且能夠在不改變原數(shù)據(jù)存儲格式的基礎(chǔ)上,能夠滿足用戶跨數(shù)據(jù)結(jié)果的數(shù)據(jù)提取需求。
本領(lǐng)域內(nèi)的技術(shù)人員應(yīng)明白,本發(fā)明的實施例可提供為方法、系統(tǒng)、或計算機程序產(chǎn)品。因此,本發(fā)明可采用硬件實施例、軟件實施例、或結(jié)合軟件和硬件方面的實施例的形式。而且,本發(fā)明可采用在一個或多個其中包含有計算機可用程序代碼的計算機可用存儲介質(zhì)(包括但不限于磁盤存儲器和光學(xué)存儲器等)上實施的計算機程序產(chǎn)品的形式。
本發(fā)明是參照根據(jù)本發(fā)明實施例的方法、設(shè)備(系統(tǒng))、和計算機程序產(chǎn)品的流程圖和/或方框圖來描述的。應(yīng)理解可由計算機程序指令實現(xiàn)流程圖和/或方框圖中的每一流程和/或方框、以及流程圖和/或方框圖中的流程和/或方框的結(jié)合??商峁┻@些計算機程序指令到通用計算機、專用計算機、嵌入式處理機或其他可編程數(shù)據(jù)處理設(shè)備的處理器以產(chǎn)生一個機器,使得通過計算機或其他可編程數(shù)據(jù)處理設(shè)備的處理器執(zhí)行的指令產(chǎn)生用于實現(xiàn)在流程圖一個流程或多個流程和/或方框圖一個方框或多個方框中指定的功能的裝置。
這些計算機程序指令也可存儲在能引導(dǎo)計算機或其他可編程數(shù)據(jù)處理設(shè)備以特定方式工作的計算機可讀存儲器中,使得存儲在該計算機可讀存儲器中的指令產(chǎn)生包括指令裝置的制造品,該指令裝置實現(xiàn)在流程圖一個流程或多個流程和/或方框圖一個方框或多個方框中指定的功能。
這些計算機程序指令也可裝載到計算機或其他可編程數(shù)據(jù)處理設(shè)備上,使得在計算機或其他可編程設(shè)備上執(zhí)行一系列操作步驟以產(chǎn)生計算機實現(xiàn)的處理,從而在計算機或其他可編程設(shè)備上執(zhí)行的指令提供用于實現(xiàn)在流程圖一個流程或多個流程和/或方框圖一個方框或多個方框中指定的功能的步驟。
以上所述,僅為本發(fā)明的較佳實施例而已,并非用于限定本發(fā)明的保護范圍。