本發(fā)明涉及計(jì)算機(jī)領(lǐng)域,特別涉及一種數(shù)據(jù)處理的方法、系統(tǒng)及終端。
背景技術(shù):
目前在各企業(yè)的營收活動里面,需要觀察和計(jì)算某些業(yè)務(wù)一個長會話里面的指標(biāo)和業(yè)務(wù)數(shù)據(jù),從而得到業(yè)務(wù)指標(biāo),但是現(xiàn)有技術(shù)的方案都只能對一個請求和一個應(yīng)答的會話進(jìn)行業(yè)務(wù)統(tǒng)計(jì),這樣對于各企業(yè)來說,僅通過一個會話的統(tǒng)計(jì)數(shù)據(jù)是不能夠準(zhǔn)確的得到業(yè)務(wù)指標(biāo),因此需要重復(fù)這樣的操作,且還需要進(jìn)行額外的匯總工作,使企業(yè)不能夠快速便捷的獲取業(yè)務(wù)指標(biāo),即目前還沒有針對長會話的一種串聯(lián),統(tǒng)計(jì)機(jī)制,更沒有支持的組包和學(xué)習(xí)機(jī)制;因此,如何對長會話內(nèi)數(shù)據(jù)進(jìn)行串聯(lián)統(tǒng)計(jì)等數(shù)據(jù)處理,是本領(lǐng)域技術(shù)人員需要解決的技術(shù)問題。
技術(shù)實(shí)現(xiàn)要素:
本發(fā)明的目的是提供一種數(shù)據(jù)處理的方法、系統(tǒng)及終端,通過上述基于業(yè)務(wù)場景的長會話的數(shù)據(jù)解碼,串聯(lián),可以全面客觀地反饋業(yè)務(wù)指標(biāo)和運(yùn)行情況,為進(jìn)一步有數(shù)據(jù)倉庫分析提供了大量可靠的數(shù)據(jù)。
為解決上述技術(shù)問題,本發(fā)明提供一種數(shù)據(jù)處理的方法,包括:
收集指定長會話中各請求的數(shù)據(jù)包;其中,所述數(shù)據(jù)包包括請求數(shù)據(jù)包和應(yīng)答數(shù)據(jù)包;
對所述數(shù)據(jù)包進(jìn)行解碼;
根據(jù)配置的串聯(lián)標(biāo)識,將解碼后的數(shù)據(jù)包進(jìn)行組包;
利用統(tǒng)計(jì)算法統(tǒng)計(jì)組包后數(shù)據(jù)的預(yù)定業(yè)務(wù)指標(biāo)。
其中,利用統(tǒng)計(jì)算法統(tǒng)計(jì)組包后數(shù)據(jù)的預(yù)定業(yè)務(wù)指標(biāo),包括:
根據(jù)預(yù)定業(yè)務(wù)指標(biāo),設(shè)置對應(yīng)的統(tǒng)計(jì)業(yè)務(wù)數(shù)據(jù)集合;
根據(jù)所述統(tǒng)計(jì)業(yè)務(wù)數(shù)據(jù)集合提取所述組包后數(shù)據(jù)中對應(yīng)的數(shù)據(jù),并將提取的數(shù)據(jù)存儲到固態(tài)硬盤中。
其中,將提取的數(shù)據(jù)存儲到固態(tài)硬盤中,包括:
將提取的數(shù)據(jù)作為map的值存儲到所述固態(tài)硬盤中的hash表中對應(yīng)位置。
其中,根據(jù)所述統(tǒng)計(jì)業(yè)務(wù)數(shù)據(jù)集合提取所述組包后數(shù)據(jù)中對應(yīng)的數(shù)據(jù)之后,還包括:
根據(jù)配置的學(xué)習(xí)標(biāo)識,判斷提取的數(shù)據(jù)是否存在業(yè)務(wù)學(xué)習(xí)項(xiàng);
若存在,則將所述業(yè)務(wù)學(xué)習(xí)項(xiàng)對應(yīng)的數(shù)據(jù)作為map的值存儲到所述固態(tài)硬盤中的hash表中對應(yīng)位置。
其中,利用統(tǒng)計(jì)算法統(tǒng)計(jì)組包后數(shù)據(jù)的預(yù)定業(yè)務(wù)指標(biāo)之前,還包括:
判斷所述固態(tài)硬盤的共享存儲中是否存有統(tǒng)計(jì)后的預(yù)定業(yè)務(wù)指標(biāo)數(shù)據(jù);
若存有,則將所述統(tǒng)計(jì)后的預(yù)定業(yè)務(wù)指標(biāo)數(shù)據(jù)與所述組包后數(shù)據(jù)進(jìn)行組合,并將組合后的數(shù)據(jù)作為組包后數(shù)據(jù)。
其中,對所述數(shù)據(jù)包進(jìn)行解碼之后,還包括:
根據(jù)配置的組包標(biāo)識,判斷解碼后的數(shù)據(jù)包是否需要組包;
若不需要,則根據(jù)配置的串聯(lián)標(biāo)識,將解碼后的數(shù)據(jù)包進(jìn)行組包;
若需要,則保存所述解碼后的數(shù)據(jù)包并等待進(jìn)行組包的數(shù)據(jù)包,當(dāng)收集到組包的數(shù)據(jù)包時(shí),對所述組包的數(shù)據(jù)包進(jìn)行解碼后與保存的所述解碼后的數(shù)據(jù)包進(jìn)行組包。
本發(fā)明還提供一種數(shù)據(jù)處理的系統(tǒng),包括:
收集模塊,用于收集指定長會話中各請求的數(shù)據(jù)包;其中,所述數(shù)據(jù)包包括請求數(shù)據(jù)包和應(yīng)答數(shù)據(jù)包;
解碼模塊,用于對所述數(shù)據(jù)包進(jìn)行解碼;
第一組包模塊,用于根據(jù)配置的串聯(lián)標(biāo)識,將解碼后的數(shù)據(jù)包進(jìn)行組包;
統(tǒng)計(jì)模塊,用于利用統(tǒng)計(jì)算法統(tǒng)計(jì)組包后數(shù)據(jù)的預(yù)定業(yè)務(wù)指標(biāo)。
其中,所述統(tǒng)計(jì)模塊,包括:
設(shè)置單元,用于根據(jù)預(yù)定業(yè)務(wù)指標(biāo),設(shè)置對應(yīng)的統(tǒng)計(jì)業(yè)務(wù)數(shù)據(jù)集合;
統(tǒng)計(jì)單元,用于根據(jù)所述統(tǒng)計(jì)業(yè)務(wù)數(shù)據(jù)集合提取所述組包后數(shù)據(jù)中對應(yīng)的數(shù)據(jù),并將提取的數(shù)據(jù)存儲到固態(tài)硬盤中。
其中,該系統(tǒng)還包括:
第一判斷模塊,用于根據(jù)配置的組包標(biāo)識,判斷解碼后的數(shù)據(jù)包是否需要組包;
第二組包模塊,與當(dāng)解碼后的數(shù)據(jù)包需要組包,則保存所述解碼后的數(shù)據(jù)包并等待進(jìn)行組包的數(shù)據(jù)包,當(dāng)收集到組包的數(shù)據(jù)包時(shí),對所述組包的數(shù)據(jù)包進(jìn)行解碼后與保存的所述解碼后的數(shù)據(jù)包進(jìn)行組包。
本發(fā)明還提供一種終端,包括:根據(jù)上述任一項(xiàng)所述的數(shù)據(jù)處理的系統(tǒng)。
本發(fā)明所提供的數(shù)據(jù)處理的方法,包括:收集指定長會話中各請求的數(shù)據(jù)包;其中,所述數(shù)據(jù)包包括請求數(shù)據(jù)包和應(yīng)答數(shù)據(jù)包;對所述數(shù)據(jù)包進(jìn)行解碼;根據(jù)配置的串聯(lián)標(biāo)識,將解碼后的數(shù)據(jù)包進(jìn)行組包;利用統(tǒng)計(jì)算法統(tǒng)計(jì)組包后數(shù)據(jù)的預(yù)定業(yè)務(wù)指標(biāo);
可見,該方法通過對收集到的基于業(yè)務(wù)場景的長會話的數(shù)據(jù)包進(jìn)行數(shù)據(jù)解碼及串聯(lián),可以全面客觀地反饋業(yè)務(wù)指標(biāo)和運(yùn)行情況,為進(jìn)一步有數(shù)據(jù)倉庫分析提供了大量可靠的數(shù)據(jù);本發(fā)明還通過了一種數(shù)據(jù)處理的系統(tǒng)及終端,具有上述有益效果,在此不再贅述。
附圖說明
為了更清楚地說明本發(fā)明實(shí)施例或現(xiàn)有技術(shù)中的技術(shù)方案,下面將對實(shí)施例或現(xiàn)有技術(shù)描述中所需要使用的附圖作簡單地介紹,顯而易見地,下面描述中的附圖僅僅是本發(fā)明的實(shí)施例,對于本領(lǐng)域普通技術(shù)人員來講,在不付出創(chuàng)造性勞動的前提下,還可以根據(jù)提供的附圖獲得其他的附圖。
圖1為本發(fā)明實(shí)施例所提供的數(shù)據(jù)處理的方法的流程圖;
圖2為本發(fā)明實(shí)施例所提供的數(shù)據(jù)處理的系統(tǒng)的結(jié)構(gòu)框圖。
具體實(shí)施方式
本發(fā)明的核心是提供一種數(shù)據(jù)處理的方法、系統(tǒng)及終端,通過上述基于業(yè)務(wù)場景的長會話的數(shù)據(jù)解碼,串聯(lián),可以全面客觀地反饋業(yè)務(wù)指標(biāo)和運(yùn)行情況,為進(jìn)一步有數(shù)據(jù)倉庫分析提供了大量可靠的數(shù)據(jù)。
為使本發(fā)明實(shí)施例的目的、技術(shù)方案和優(yōu)點(diǎn)更加清楚,下面將結(jié)合本發(fā)明實(shí)施例中的附圖,對本發(fā)明實(shí)施例中的技術(shù)方案進(jìn)行清楚、完整地描述,顯然,所描述的實(shí)施例是本發(fā)明一部分實(shí)施例,而不是全部的實(shí)施例?;诒景l(fā)明中的實(shí)施例,本領(lǐng)域普通技術(shù)人員在沒有做出創(chuàng)造性勞動前提下所獲得的所有其他實(shí)施例,都屬于本發(fā)明保護(hù)的范圍。
請參考圖1,圖1為本發(fā)明實(shí)施例所提供的數(shù)據(jù)處理的方法的流程圖;該方法可以包括:
S100、收集指定長會話中各請求的數(shù)據(jù)包;其中,所述數(shù)據(jù)包包括請求數(shù)據(jù)包和應(yīng)答數(shù)據(jù)包;
其中,在一些營收活動里面,需要觀察和計(jì)算某些業(yè)務(wù)一個長會話里面的指標(biāo)和業(yè)務(wù)數(shù)據(jù),不僅僅針對一個請求包和應(yīng)答包;因此,這里需要收集對應(yīng)業(yè)務(wù)的長會話中的所有請求的數(shù)據(jù)包。例如利用服務(wù)進(jìn)程收集數(shù)據(jù)包;這里為了能夠收集完整的長會話中的數(shù)據(jù)包,因此這里數(shù)據(jù)包的來源可以來自PC端的數(shù)據(jù),也包括來自手機(jī)終端和WEB端的數(shù)據(jù)。例如將從各種不同終端中得到的數(shù)據(jù)進(jìn)行綜合分析,可以從整體上對業(yè)務(wù)進(jìn)行全面的了解。
例如在YY直播的營收活動(例如YY直播中一個直播間的禮物營收情況)里面,需要收集YY直播中直播間直播過程中在對應(yīng)直播間產(chǎn)生長會話中的留言數(shù)據(jù)(例如聊天數(shù)據(jù)),其中,留言數(shù)據(jù)可以包括來自PC端登錄該直播間產(chǎn)生留言數(shù)據(jù),也包括來自手機(jī)終端登錄該直播間產(chǎn)生留言數(shù)據(jù)和WEB端登錄該直播間產(chǎn)生留言數(shù)據(jù)。
S110、對所述數(shù)據(jù)包進(jìn)行解碼;
其中,該步驟對收集到的數(shù)據(jù)包進(jìn)行解碼,得到解碼后數(shù)據(jù)。
S120、根據(jù)配置的串聯(lián)標(biāo)識,將解碼后的數(shù)據(jù)包進(jìn)行組包;
其中,串聯(lián)標(biāo)識的配置是根據(jù)具體業(yè)務(wù)需求進(jìn)行設(shè)置,該串聯(lián)標(biāo)識能夠識別與業(yè)務(wù)相關(guān)的數(shù)據(jù),利用這些標(biāo)識去識別對應(yīng)的需要進(jìn)行串聯(lián)的業(yè)務(wù)數(shù)據(jù)。例如具體的可以通過哪些標(biāo)識可以組成對應(yīng)的業(yè)務(wù),將這些標(biāo)識配置成一個集合,當(dāng)解碼后的數(shù)據(jù)滿足該集合時(shí)中的選項(xiàng)時(shí),即該數(shù)據(jù)可以進(jìn)行串聯(lián)組包。串聯(lián)標(biāo)識的復(fù)雜程度與業(yè)務(wù)的具體情況有關(guān),例如當(dāng)一個大的業(yè)務(wù)中具有很多子業(yè)務(wù)的時(shí)候其串聯(lián)標(biāo)識就會復(fù)雜因?yàn)槠湟鱾€子業(yè)務(wù)對應(yīng)的業(yè)務(wù)標(biāo)識,若僅針對其中一個子業(yè)務(wù)進(jìn)行統(tǒng)計(jì)分析時(shí),對應(yīng)的該子業(yè)務(wù)的串聯(lián)標(biāo)識就會簡單點(diǎn),即該串聯(lián)標(biāo)識只需要可以表示該子業(yè)務(wù)即可。
下面舉例說明上述過程,例如某業(yè)務(wù)用頻道,PK名稱,營運(yùn)標(biāo)識,PK結(jié)束時(shí)間作為標(biāo)識該業(yè)務(wù)的串聯(lián)標(biāo)識,則查找解碼后數(shù)據(jù)中存在這些串聯(lián)標(biāo)識中的若干的數(shù)據(jù),將符合串聯(lián)標(biāo)識的數(shù)據(jù)進(jìn)行組包。例如將YY直播中直播間的頻道信息作為串聯(lián)標(biāo)識,則被解碼后留言數(shù)據(jù)會在相應(yīng)字段記錄該留言數(shù)據(jù)對應(yīng)的YY直播中直播間的頻道信息(串聯(lián)標(biāo)識),將具有相同頻道信息字段的數(shù)據(jù)包進(jìn)行組包即將關(guān)于該直播間的對應(yīng)時(shí)段內(nèi)的所有留言數(shù)據(jù)進(jìn)行組包。
S130、利用統(tǒng)計(jì)算法統(tǒng)計(jì)組包后數(shù)據(jù)的預(yù)定業(yè)務(wù)指標(biāo)。
其中,統(tǒng)計(jì)組包后得到的長會話中有關(guān)業(yè)務(wù)的數(shù)據(jù),得到預(yù)定業(yè)務(wù)指標(biāo),根據(jù)該預(yù)定業(yè)務(wù)指標(biāo)可以對該業(yè)務(wù)進(jìn)行分析(如KPI分析)。
具體的,要提取組包后數(shù)據(jù)中的與預(yù)定業(yè)務(wù)指標(biāo)相對應(yīng)的數(shù)據(jù),需要預(yù)先設(shè)定好提取哪些數(shù)據(jù)即提取數(shù)據(jù)的指標(biāo)集合,該提取數(shù)據(jù)的指標(biāo)集合與具體的業(yè)務(wù)及對應(yīng)預(yù)定業(yè)務(wù)指標(biāo)有關(guān)。例如將YY直播中直播間的禮物種類、各禮物種類的數(shù)量、各禮物種類對應(yīng)的收入、及該直播間的禮物總收入作為預(yù)定業(yè)務(wù)指標(biāo)。
這里并不對具體的統(tǒng)計(jì)算法進(jìn)行限定,用戶可以根據(jù)具體指標(biāo)的情況,以及業(yè)務(wù)特點(diǎn)選取合適的統(tǒng)計(jì)算法。
進(jìn)一步,為了保證統(tǒng)計(jì)和串聯(lián)的數(shù)據(jù)的可靠性,可將數(shù)據(jù)實(shí)時(shí)保存在硬盤里,可以保證數(shù)據(jù)包的串聯(lián)和統(tǒng)計(jì)的數(shù)據(jù)不會丟失。
優(yōu)選的,利用統(tǒng)計(jì)算法統(tǒng)計(jì)組包后數(shù)據(jù)的預(yù)定業(yè)務(wù)指標(biāo)可以包括:
根據(jù)預(yù)定業(yè)務(wù)指標(biāo),設(shè)置對應(yīng)的統(tǒng)計(jì)業(yè)務(wù)數(shù)據(jù)集合;
根據(jù)所述統(tǒng)計(jì)業(yè)務(wù)數(shù)據(jù)集合提取所述組包后數(shù)據(jù)中對應(yīng)的數(shù)據(jù),并將提取的數(shù)據(jù)存儲到固態(tài)硬盤中。
具體的,在存儲數(shù)據(jù)的時(shí)候需要選用合適的存儲結(jié)構(gòu)對數(shù)據(jù)進(jìn)行存儲,例如可以使用ssdb的hash、zset、set等存儲結(jié)構(gòu)對數(shù)據(jù)進(jìn)行存儲。
可選的,將提取的數(shù)據(jù)存儲到固態(tài)硬盤中,包括:
將提取的數(shù)據(jù)作為map的值存儲到所述固態(tài)硬盤中的hash表中對應(yīng)位置。
具體的,可以將業(yè)務(wù)標(biāo)識作為map的key記錄,需要統(tǒng)計(jì)的數(shù)據(jù)作為map的value記錄到ssdb的hash里面。
其中,這里的統(tǒng)計(jì)業(yè)務(wù)數(shù)據(jù)集合的獲取可以根據(jù)選擇存儲結(jié)構(gòu)(如hash表結(jié)構(gòu))中需要填充的數(shù)據(jù)種類進(jìn)行獲取。
基于上述技術(shù)方案,本發(fā)明實(shí)施例提的數(shù)據(jù)處理的方法,通過對收集到的基于業(yè)務(wù)場景的長會話的數(shù)據(jù)包進(jìn)行數(shù)據(jù)解碼及串聯(lián),可以全面客觀地反饋業(yè)務(wù)指標(biāo)和運(yùn)行情況,為進(jìn)一步有數(shù)據(jù)倉庫分析提供了大量可靠的數(shù)據(jù)。
基于上述實(shí)施例,為了進(jìn)一步提高預(yù)定業(yè)務(wù)指標(biāo)統(tǒng)計(jì)的準(zhǔn)確性和全面性,該實(shí)施例中根據(jù)所述統(tǒng)計(jì)業(yè)務(wù)數(shù)據(jù)集合提取所述組包后數(shù)據(jù)中對應(yīng)的數(shù)據(jù)之后,還包括:
根據(jù)配置的學(xué)習(xí)標(biāo)識,判斷提取的數(shù)據(jù)是否存在業(yè)務(wù)學(xué)習(xí)項(xiàng);
若存在,則將所述業(yè)務(wù)學(xué)習(xí)項(xiàng)對應(yīng)的數(shù)據(jù)作為map的值存儲到所述固態(tài)硬盤中的hash表中對應(yīng)位置。
具體的,在向map里記錄數(shù)據(jù)的時(shí)候,如果查找到里面的業(yè)務(wù)學(xué)習(xí)項(xiàng),需要把相關(guān)業(yè)務(wù)識別項(xiàng)(比方小米手機(jī)里的某個版本號在某一個協(xié)議里面帶了即小米手機(jī)版本號在一個業(yè)務(wù)會話里面會存在用戶UID和小米標(biāo)識對應(yīng)小米版本號的對應(yīng)關(guān)系下,就可以通過這個會話生成一批用戶UID和小米識別碼與小米版本號的關(guān)系,將它們記錄到map里面,這樣另一個會話里面雖然并沒有記錄小米版本號,但是可以通過上述map查詢到這個用戶的版本號,并將該版本號記錄到統(tǒng)計(jì)項(xiàng)里面)記錄到學(xué)習(xí)的map里面。
其中,通過設(shè)置學(xué)習(xí)標(biāo)識該方法支持業(yè)務(wù)的自我學(xué)習(xí),一個子業(yè)務(wù)可以通過另一個子業(yè)務(wù)獲取相對應(yīng)的業(yè)務(wù)數(shù)據(jù)。如果某些業(yè)務(wù)包并不具備相應(yīng)的業(yè)務(wù)數(shù)據(jù),那么可以根據(jù)其它會話給出的業(yè)務(wù)數(shù)據(jù)去自我學(xué)習(xí),一方面保證各種終端的數(shù)據(jù)包最終能串聯(lián)成功,另一方面也提供了些其它會話的業(yè)務(wù)數(shù)據(jù)給本會話使用,提高數(shù)據(jù)的全面性。
基于上述任意實(shí)施例,為了進(jìn)一步解決多個進(jìn)程里同一業(yè)務(wù)數(shù)據(jù)的串聯(lián)和統(tǒng)計(jì)問題,該實(shí)施例中利用統(tǒng)計(jì)算法統(tǒng)計(jì)組包后數(shù)據(jù)的預(yù)定業(yè)務(wù)指標(biāo)之前,還包括:
判斷所述固態(tài)硬盤的共享存儲中是否存有統(tǒng)計(jì)后的預(yù)定業(yè)務(wù)指標(biāo)數(shù)據(jù);
若存有,則將所述統(tǒng)計(jì)后的預(yù)定業(yè)務(wù)指標(biāo)數(shù)據(jù)與所述組包后數(shù)據(jù)進(jìn)行組合,并將組合后的數(shù)據(jù)作為組包后數(shù)據(jù)。
具體的,該步驟針對進(jìn)程獲取的長會話進(jìn)行統(tǒng)計(jì)之前,可以先判斷固態(tài)硬盤的共享存儲中是否存有同一業(yè)務(wù)(同一串聯(lián)標(biāo)識或者存在串聯(lián)標(biāo)識集合中某一個標(biāo)識對應(yīng)的業(yè)務(wù))對應(yīng)的統(tǒng)計(jì)后的數(shù)據(jù),若存在,則為了提高數(shù)據(jù)的準(zhǔn)確性,將之前統(tǒng)計(jì)得到的數(shù)據(jù)與本次長會話得到數(shù)據(jù)進(jìn)行組合后再重新進(jìn)行統(tǒng)計(jì),以更新預(yù)定業(yè)務(wù)指標(biāo)。即當(dāng)下一個數(shù)據(jù)包來了,按照相應(yīng)的標(biāo)識,找到map里的value,再把統(tǒng)計(jì)數(shù)據(jù)填進(jìn)去。在當(dāng)串聯(lián)結(jié)束,開始做統(tǒng)計(jì)的時(shí)候,會把共享存儲中相關(guān)業(yè)務(wù)的所有數(shù)據(jù)導(dǎo)出來,按統(tǒng)計(jì)算法給全面可靠的預(yù)定業(yè)務(wù)指標(biāo)。
即該過程支持了多個進(jìn)程間關(guān)聯(lián)數(shù)據(jù)間可以做串聯(lián)操作,即通過ssdb的共享存儲可以解決多個進(jìn)程里同一業(yè)務(wù)數(shù)據(jù)的串聯(lián)和統(tǒng)計(jì)問題。
例如,在統(tǒng)計(jì)直播間對應(yīng)的組包數(shù)據(jù)之前,先判斷固態(tài)硬盤的共享存儲中是否存在該直播間對應(yīng)的數(shù)據(jù)(通過數(shù)據(jù)中的串聯(lián)標(biāo)識進(jìn)行判斷),若存在,則將該數(shù)據(jù)與組包數(shù)據(jù)進(jìn)行重組后在進(jìn)行預(yù)定業(yè)務(wù)指標(biāo)的統(tǒng)計(jì)。
基于上述任意實(shí)施例,為了進(jìn)一步解決組包數(shù)據(jù)的完整性問題,該實(shí)施例中對所述數(shù)據(jù)包進(jìn)行解碼之后,還包括:
根據(jù)配置的組包標(biāo)識,判斷解碼后的數(shù)據(jù)包是否需要組包;
若不需要,則根據(jù)配置的串聯(lián)標(biāo)識,將解碼后的數(shù)據(jù)包進(jìn)行組包;
若需要,則保存所述解碼后的數(shù)據(jù)包并等待進(jìn)行組包的數(shù)據(jù)包,當(dāng)收集到組包的數(shù)據(jù)包時(shí),對所述組包的數(shù)據(jù)包進(jìn)行解碼后與保存的所述解碼后的數(shù)據(jù)包進(jìn)行組包。
具體的,根據(jù)組包標(biāo)識判斷解碼后的數(shù)據(jù)包是否是完整的一個數(shù)據(jù)包,若是則不需要組包,若不是,則說明該數(shù)據(jù)包是一個分片還具有其他分片,將各個分片組合在一起才是一個完整的數(shù)據(jù)包。即如果發(fā)現(xiàn)這個數(shù)據(jù)包是需要組包的,那么保存這個數(shù)據(jù)包到ssdb里面,等下一個數(shù)據(jù)包來的時(shí)候,重新組成一個新的大數(shù)據(jù)包,然后再進(jìn)行解碼,串聯(lián)和學(xué)習(xí)。即支持?jǐn)?shù)據(jù)包的重新組包后再做解碼,串聯(lián)操作,很好解決了在某個業(yè)務(wù)點(diǎn)上數(shù)據(jù)包不完整,還沒辦法串聯(lián)的情況。
基于上述技術(shù)方案,本發(fā)明實(shí)施例提的數(shù)據(jù)處理的方法,通過收集整個長會話里面的所有請求和應(yīng)答數(shù)據(jù)包,然后對數(shù)據(jù)包進(jìn)行解碼,根據(jù)長會話標(biāo)識串聯(lián),若數(shù)據(jù)包不完整,可以等待下一個包到后組包解碼串聯(lián),最后將里面的統(tǒng)計(jì)指標(biāo)和業(yè)務(wù)數(shù)據(jù)導(dǎo)出來,統(tǒng)計(jì)出的預(yù)定業(yè)務(wù)指標(biāo)作為觀察和KPI分析等的依據(jù),即可以全面客觀地反饋業(yè)務(wù)指標(biāo)和運(yùn)行情況,為進(jìn)一步有數(shù)據(jù)倉庫分析提供了大量可靠的數(shù)據(jù)。
下面對本發(fā)明實(shí)施例提供的數(shù)據(jù)處理的系統(tǒng)及終端進(jìn)行介紹,下文描述的數(shù)據(jù)處理的系統(tǒng)及終端與上文描述的數(shù)據(jù)處理的方法可相互對應(yīng)參照。
請參考圖2,圖2為本發(fā)明實(shí)施例所提供的數(shù)據(jù)處理的系統(tǒng)的結(jié)構(gòu)框圖;該系統(tǒng)可以包括:
收集模塊100,用于收集指定長會話中各請求的數(shù)據(jù)包;其中,所述數(shù)據(jù)包包括請求數(shù)據(jù)包和應(yīng)答數(shù)據(jù)包;
解碼模塊200,用于對所述數(shù)據(jù)包進(jìn)行解碼;
第一組包模塊300,用于根據(jù)配置的串聯(lián)標(biāo)識,將解碼后的數(shù)據(jù)包進(jìn)行組包;
統(tǒng)計(jì)模塊400,用于利用統(tǒng)計(jì)算法統(tǒng)計(jì)組包后數(shù)據(jù)的預(yù)定業(yè)務(wù)指標(biāo)。
基于上述實(shí)施例,所述統(tǒng)計(jì)模塊400包括:
設(shè)置單元,用于根據(jù)預(yù)定業(yè)務(wù)指標(biāo),設(shè)置對應(yīng)的統(tǒng)計(jì)業(yè)務(wù)數(shù)據(jù)集合;
統(tǒng)計(jì)單元,用于根據(jù)所述統(tǒng)計(jì)業(yè)務(wù)數(shù)據(jù)集合提取所述組包后數(shù)據(jù)中對應(yīng)的數(shù)據(jù),并將提取的數(shù)據(jù)存儲到固態(tài)硬盤中。
基于上述實(shí)施例,所述統(tǒng)計(jì)單元具體為將提取的數(shù)據(jù)作為map的值存儲到所述固態(tài)硬盤中的hash表中對應(yīng)位置的單元。
基于上述任意實(shí)施例,所述統(tǒng)計(jì)模塊400還包括:
學(xué)習(xí)標(biāo)識配置單元,用于根據(jù)配置的學(xué)習(xí)標(biāo)識,判斷提取的數(shù)據(jù)是否存在業(yè)務(wù)學(xué)習(xí)項(xiàng);
學(xué)習(xí)數(shù)據(jù)存儲單元,用于若提取的數(shù)據(jù)中存在業(yè)務(wù)學(xué)習(xí)項(xiàng),則將所述業(yè)務(wù)學(xué)習(xí)項(xiàng)對應(yīng)的數(shù)據(jù)作為map的值存儲到所述固態(tài)硬盤中的hash表中對應(yīng)位置。
基于上述任意實(shí)施例,該系統(tǒng)還包括:
第二判斷模塊,用于判斷所述固態(tài)硬盤的共享存儲中是否存有統(tǒng)計(jì)后的預(yù)定業(yè)務(wù)指標(biāo)數(shù)據(jù);
重組模塊,用于若所述固態(tài)硬盤的共享存儲中存有統(tǒng)計(jì)后的預(yù)定業(yè)務(wù)指標(biāo)數(shù)據(jù),則將所述統(tǒng)計(jì)后的預(yù)定業(yè)務(wù)指標(biāo)數(shù)據(jù)與所述組包后數(shù)據(jù)進(jìn)行組合,并將組合后的數(shù)據(jù)作為組包后數(shù)據(jù)。
基于上述任意實(shí)施例,該系統(tǒng)還包括:
第一判斷模塊,用于根據(jù)配置的組包標(biāo)識,判斷解碼后的數(shù)據(jù)包是否需要組包;
第二組包模塊,與當(dāng)解碼后的數(shù)據(jù)包需要組包,則保存所述解碼后的數(shù)據(jù)包并等待進(jìn)行組包的數(shù)據(jù)包,當(dāng)收集到組包的數(shù)據(jù)包時(shí),對所述組包的數(shù)據(jù)包進(jìn)行解碼后與保存的所述解碼后的數(shù)據(jù)包進(jìn)行組包。
基于上述技術(shù)方案,本發(fā)明實(shí)施例提的數(shù)據(jù)處理的系統(tǒng),通過收集整個長會話里面的所有請求和應(yīng)答數(shù)據(jù)包,然后對數(shù)據(jù)包進(jìn)行解碼,根據(jù)長會話標(biāo)識串聯(lián),若數(shù)據(jù)包不完整,可以等待下一個包到后組包解碼串聯(lián),最后將里面的統(tǒng)計(jì)指標(biāo)和業(yè)務(wù)數(shù)據(jù)導(dǎo)出來,統(tǒng)計(jì)出的預(yù)定業(yè)務(wù)指標(biāo)作為觀察和KPI分析等的依據(jù),即可以全面客觀地反饋業(yè)務(wù)指標(biāo)和運(yùn)行情況,為進(jìn)一步有數(shù)據(jù)倉庫分析提供了大量可靠的數(shù)據(jù)。
本發(fā)明實(shí)施例還提供一種終端,包括:根據(jù)上述任意實(shí)施例所述的數(shù)據(jù)處理的系統(tǒng)。
說明書中各個實(shí)施例采用遞進(jìn)的方式描述,每個實(shí)施例重點(diǎn)說明的都是與其他實(shí)施例的不同之處,各個實(shí)施例之間相同相似部分互相參見即可。對于實(shí)施例公開的裝置而言,由于其與實(shí)施例公開的方法相對應(yīng),所以描述的比較簡單,相關(guān)之處參見方法部分說明即可。
專業(yè)人員還可以進(jìn)一步意識到,結(jié)合本文中所公開的實(shí)施例描述的各示例的單元及算法步驟,能夠以電子硬件、計(jì)算機(jī)軟件或者二者的結(jié)合來實(shí)現(xiàn),為了清楚地說明硬件和軟件的可互換性,在上述說明中已經(jīng)按照功能一般性地描述了各示例的組成及步驟。這些功能究竟以硬件還是軟件方式來執(zhí)行,取決于技術(shù)方案的特定應(yīng)用和設(shè)計(jì)約束條件。專業(yè)技術(shù)人員可以對每個特定的應(yīng)用來使用不同方法來實(shí)現(xiàn)所描述的功能,但是這種實(shí)現(xiàn)不應(yīng)認(rèn)為超出本發(fā)明的范圍。
結(jié)合本文中所公開的實(shí)施例描述的方法或算法的步驟可以直接用硬件、處理器執(zhí)行的軟件模塊,或者二者的結(jié)合來實(shí)施。軟件模塊可以置于隨機(jī)存儲器(RAM)、內(nèi)存、只讀存儲器(ROM)、電可編程ROM、電可擦除可編程ROM、寄存器、硬盤、可移動磁盤、CD-ROM、或技術(shù)領(lǐng)域內(nèi)所公知的任意其它形式的存儲介質(zhì)中。
以上對本發(fā)明所提供的數(shù)據(jù)處理的方法、系統(tǒng)及系統(tǒng)進(jìn)行了詳細(xì)介紹。本文中應(yīng)用了具體個例對本發(fā)明的原理及實(shí)施方式進(jìn)行了闡述,以上實(shí)施例的說明只是用于幫助理解本發(fā)明的方法及其核心思想。應(yīng)當(dāng)指出,對于本技術(shù)領(lǐng)域的普通技術(shù)人員來說,在不脫離本發(fā)明原理的前提下,還可以對本發(fā)明進(jìn)行若干改進(jìn)和修飾,這些改進(jìn)和修飾也落入本發(fā)明權(quán)利要求的保護(hù)范圍內(nèi)。