国产精品1024永久观看,大尺度欧美暖暖视频在线观看,亚洲宅男精品一区在线观看,欧美日韩一区二区三区视频,2021中文字幕在线观看

  • <option id="fbvk0"></option>
    1. <rt id="fbvk0"><tr id="fbvk0"></tr></rt>
      <center id="fbvk0"><optgroup id="fbvk0"></optgroup></center>
      <center id="fbvk0"></center>

      <li id="fbvk0"><abbr id="fbvk0"><dl id="fbvk0"></dl></abbr></li>

      一種多維度拆分的計(jì)算方法以及系統(tǒng)的制作方法

      文檔序號(hào):6509201閱讀:371來(lái)源:國(guó)知局
      一種多維度拆分的計(jì)算方法以及系統(tǒng)的制作方法
      【專(zhuān)利摘要】本發(fā)明公開(kāi)一種多維度拆分的計(jì)算方法以及系統(tǒng),涉及多維度拆分計(jì)算領(lǐng)域,可以對(duì)海量數(shù)據(jù)進(jìn)行多維度拆分計(jì)算,從而降低計(jì)算復(fù)雜度。本發(fā)明實(shí)施例通過(guò)根據(jù)預(yù)處理后的海量預(yù)處理數(shù)據(jù),生成遞推拓?fù)?,所述遞推拓?fù)溆删S度組合以及各維度組合之間的遞推路徑構(gòu)成,所述維度組合由各維度的屬性名稱(chēng)以及與所述屬性名稱(chēng)對(duì)應(yīng)的所述海量預(yù)處理數(shù)據(jù)中的數(shù)據(jù)構(gòu)成;根據(jù)預(yù)設(shè)固化策略,確定固化維度組合并確定構(gòu)成最優(yōu)固化維度組合的運(yùn)算路徑;根據(jù)所述遞推拓?fù)洌捎?jì)算任務(wù);根據(jù)所述固化維度組合以及所述最優(yōu)固化維度組合的運(yùn)算路徑,啟動(dòng)計(jì)算任務(wù),計(jì)算所述計(jì)算任務(wù),獲得計(jì)算結(jié)果。本發(fā)明實(shí)施例提供的方案適于進(jìn)行多維拆分時(shí)采用。
      【專(zhuān)利說(shuō)明】一種多維度拆分的計(jì)算方法以及系統(tǒng)

      【技術(shù)領(lǐng)域】
      [0001]本發(fā)明涉及多維度拆分計(jì)算領(lǐng)域,尤其涉及一種多維度拆分的計(jì)算方法以及系統(tǒng)。

      【背景技術(shù)】
      [0002]現(xiàn)有技術(shù)中,多維度拆分系統(tǒng)通常基于關(guān)系型數(shù)據(jù)庫(kù)存儲(chǔ)數(shù)據(jù),關(guān)系型數(shù)據(jù)庫(kù)為由二維表及各個(gè)二維表之間的聯(lián)系組成的一個(gè)數(shù)據(jù)組織。采用現(xiàn)有技術(shù)進(jìn)行多維度拆分計(jì)算時(shí),根據(jù)用戶(hù)的數(shù)據(jù)請(qǐng)求,通過(guò)關(guān)系型數(shù)據(jù)庫(kù)的多個(gè)二維表以及多個(gè)二維表之間的聯(lián)系聯(lián)合計(jì)算,從而獲得符合用戶(hù)數(shù)據(jù)請(qǐng)求的多維組合結(jié)果。
      [0003]然而,采用現(xiàn)有技術(shù)進(jìn)行多維度拆分計(jì)算時(shí),由于基于關(guān)系型數(shù)據(jù)庫(kù)的多個(gè)二維表進(jìn)行多維度拆分計(jì)算,計(jì)算復(fù)雜度較高,并且處理數(shù)據(jù)量較小。


      【發(fā)明內(nèi)容】

      [0004]本發(fā)明的實(shí)施例提供一種多維度拆分的計(jì)算方法以及系統(tǒng),可以對(duì)海量數(shù)據(jù)進(jìn)行多維度拆分計(jì)算,從而降低計(jì)算復(fù)雜度。
      [0005]第一方面,本發(fā)明實(shí)施例提供一種多維度拆分的計(jì)算方法,包括:
      [0006]根據(jù)預(yù)處理后的海量預(yù)處理數(shù)據(jù),生成遞推拓?fù)洌鲞f推拓?fù)溆删S度組合以及各維度組合之間的遞推路徑構(gòu)成,所述維度組合由各維度的屬性名稱(chēng)以及與所述屬性名稱(chēng)對(duì)應(yīng)的所述海量預(yù)處理數(shù)據(jù)中的數(shù)據(jù)構(gòu)成;
      [0007]根據(jù)預(yù)設(shè)固化策略,確定固化維度組合并確定構(gòu)成最優(yōu)固化維度組合的運(yùn)算路徑;
      [0008]根據(jù)所述遞推拓?fù)?,生成?jì)算任務(wù);
      [0009]根據(jù)所述固化維度組合以及所述最優(yōu)固化維度組合的運(yùn)算路徑,啟動(dòng)計(jì)算任務(wù),計(jì)算所述計(jì)算任務(wù),獲得計(jì)算結(jié)果。
      [0010]第二方面,本發(fā)明實(shí)施例提供一種多維度拆分的計(jì)算系統(tǒng),包括:運(yùn)算決策模塊,運(yùn)算控制模塊,維度組合生成模塊;
      [0011]所述運(yùn)算決策模塊,用于根據(jù)預(yù)處理后的海量預(yù)處理數(shù)據(jù),生成遞推拓?fù)洌鲞f推拓?fù)溆删S度組合以及各維度組合之間的遞推路徑構(gòu)成,所述維度組合由各維度的屬性名稱(chēng)以及與所述屬性名稱(chēng)對(duì)應(yīng)的所述海量預(yù)處理數(shù)據(jù)中的數(shù)據(jù)構(gòu)成;
      [0012]所述運(yùn)算決策模塊,還用于根據(jù)預(yù)設(shè)固化策略,確定固化維度組合并確定構(gòu)成最優(yōu)固化維度組合的運(yùn)算路徑;
      [0013]運(yùn)算控制模塊,用于根據(jù)所述遞推拓?fù)?,生成?jì)算任務(wù);
      [0014]所述運(yùn)算控制模塊,還用于根據(jù)所述固化維度組合以及所述最優(yōu)固化維度組合的運(yùn)算路徑,啟動(dòng)計(jì)算任務(wù);
      [0015]維度組合生成模塊,用于計(jì)算所述計(jì)算任務(wù),獲得計(jì)算結(jié)果。
      [0016]本發(fā)明實(shí)施例提供一種多維度拆分的計(jì)算方法以及系統(tǒng),通過(guò)根據(jù)預(yù)處理后的海量預(yù)處理數(shù)據(jù),生成遞推拓?fù)洌桓鶕?jù)預(yù)設(shè)固化策略,確定固化維度組合并確定構(gòu)成最優(yōu)固化維度組合的運(yùn)算路徑;根據(jù)所述遞推拓?fù)?,生成?jì)算任務(wù);根據(jù)所述固化維度組合以及所述最優(yōu)固化維度組合的運(yùn)算路徑,啟動(dòng)計(jì)算任務(wù),計(jì)算所述計(jì)算任務(wù),獲得計(jì)算結(jié)果。與采用現(xiàn)有技術(shù)進(jìn)行多維度拆分計(jì)算時(shí),由于基于關(guān)系型數(shù)據(jù)庫(kù)的多個(gè)二維表進(jìn)行多維度拆分計(jì)算,計(jì)算復(fù)雜度較高,并且處理數(shù)據(jù)量較小相比,本發(fā)明實(shí)施例通過(guò)根據(jù)固化維度組合以及最優(yōu)固化維度組合的運(yùn)算路徑計(jì)算所述計(jì)算任務(wù),使得可以對(duì)海量數(shù)據(jù)進(jìn)行多維度拆分計(jì)算,從而降低計(jì)算復(fù)雜度。

      【專(zhuān)利附圖】

      【附圖說(shuō)明】
      [0017]為了更清楚地說(shuō)明本發(fā)明實(shí)施例或現(xiàn)有技術(shù)中的技術(shù)方案,下面將對(duì)實(shí)施例或現(xiàn)有技術(shù)描述中所需要使用的附圖作簡(jiǎn)單地介紹,顯而易見(jiàn)地,下面描述中的附圖僅僅是本發(fā)明的一些實(shí)施例,對(duì)于本領(lǐng)域普通技術(shù)人員來(lái)講,在不付出創(chuàng)造性勞動(dòng)性的前提下,還可以根據(jù)這些附圖獲得其他的附圖。
      [0018]圖1為本發(fā)明一個(gè)實(shí)施例提供的一種多維度拆分的計(jì)算方法的流程圖;
      [0019]圖2為本發(fā)明一個(gè)實(shí)施例提供的遞推拓?fù)涫疽鈭D;
      [0020]圖3為本發(fā)明另一個(gè)實(shí)施例提供的一種多維度拆分的計(jì)算方法的流程圖;
      [0021]圖4為本發(fā)明另一個(gè)實(shí)施例提供的指標(biāo)的計(jì)算狀態(tài)的轉(zhuǎn)移示意圖;
      [0022]圖5為本發(fā)明另一個(gè)實(shí)施例提供的列存儲(chǔ)的示意圖;
      [0023]圖6為本發(fā)明另一個(gè)實(shí)施例提供的一種多維度拆分的計(jì)算系統(tǒng)的示意圖;
      [0024]圖7為本發(fā)明另一個(gè)實(shí)施例提供的另一種多維度拆分的計(jì)算系統(tǒng)的示意圖。

      【具體實(shí)施方式】
      [0025]下面將結(jié)合本發(fā)明實(shí)施例中的附圖,對(duì)本發(fā)明實(shí)施例中的技術(shù)方案進(jìn)行清楚、完整地描述,顯然,所描述的實(shí)施例僅僅是本發(fā)明一部分實(shí)施例,而不是全部的實(shí)施例?;诒景l(fā)明中的實(shí)施例,本領(lǐng)域普通技術(shù)人員在沒(méi)有作出創(chuàng)造性勞動(dòng)前提下所獲得的所有其他實(shí)施例,都屬于本發(fā)明保護(hù)的范圍。
      [0026]本發(fā)明實(shí)施例提供一種多維度拆分的計(jì)算方法,該方法的執(zhí)行主體可以為服務(wù)器,具體可以為多維度拆分系統(tǒng),該方法包括:
      [0027]步驟101,根據(jù)預(yù)處理后的海量預(yù)處理數(shù)據(jù),生成遞推拓?fù)?,所述遞推拓?fù)溆删S度組合以及各維度組合之間的遞推路徑構(gòu)成,所述維度組合由各維度的屬性名稱(chēng)以及與所述屬性名稱(chēng)對(duì)應(yīng)的所述海量預(yù)處理數(shù)據(jù)中的數(shù)據(jù)構(gòu)成。
      [0028]可選的,在生成遞推拓?fù)渲埃瑢⒔邮盏降暮A看幚頂?shù)據(jù)進(jìn)行預(yù)處理,從而獲得規(guī)范化的、適合進(jìn)行后續(xù)計(jì)算的海量預(yù)處理數(shù)據(jù)。
      [0029]可選的,接收到的海量待處理數(shù)據(jù)可以為獲取的用戶(hù)一天的流水?dāng)?shù)據(jù),也可以為用戶(hù)預(yù)設(shè)時(shí)間段內(nèi)的流水?dāng)?shù)據(jù),預(yù)設(shè)時(shí)間段可以根據(jù)經(jīng)驗(yàn)設(shè)置,例如預(yù)設(shè)時(shí)間段可以為一周、8天等時(shí)間段。海量待處理數(shù)據(jù)可以為T(mén)B級(jí)海量待處理數(shù)據(jù)。
      [0030]可選的,可以通過(guò)接口接收用戶(hù)上報(bào)的海量待處理數(shù)據(jù),或者還可以接收用戶(hù)通過(guò)文本文件的方式提供的海量待處理數(shù)據(jù)。
      [0031]可選的,海量預(yù)處理數(shù)據(jù)可以包括用戶(hù)標(biāo)識(shí)以及數(shù)據(jù)來(lái)源等。根據(jù)海量預(yù)處理數(shù)據(jù)生成遞推拓?fù)鋾r(shí),可以根據(jù)海量預(yù)處理數(shù)據(jù)中的用戶(hù)標(biāo)識(shí)獲取用戶(hù)的相關(guān)信息,例如獲取用戶(hù)的地址、用戶(hù)的年齡、用戶(hù)性別等信息,可以根據(jù)海量預(yù)處理數(shù)據(jù)中的數(shù)據(jù)來(lái)源獲取用戶(hù)的登錄次數(shù)等信息。根據(jù)獲得的上述信息可以獲得維度組合,維度組合的各個(gè)維度的屬性名稱(chēng)即可以為用戶(hù)的地址、用戶(hù)的年齡、用戶(hù)性別、登錄次數(shù)等,屬性名稱(chēng)對(duì)應(yīng)的數(shù)據(jù)即為屬性值,例如,用戶(hù)的地址可以為杭州,用戶(hù)的年齡可以為30,用戶(hù)性別可以為女性,登錄次數(shù)可以為I次等。根據(jù)上述信息以及屬性的層級(jí)關(guān)系,可以生產(chǎn)遞推拓?fù)?。這里屬性的層級(jí)關(guān)系可以為屬性與屬性之間的關(guān)系,例如用戶(hù)的地址為杭州,可以將杭州歸結(jié)為江浙滬地區(qū),從而獲得一個(gè)高層的屬性,即江浙滬地區(qū)。
      [0032]可選的,如圖2所示的遞推拓?fù)涫疽鈭D,圖中ABC為接收到的海量預(yù)處理數(shù)據(jù),其中,ABC可以為由三個(gè)維度構(gòu)成的維度組合(View),第二層中包括從View_ABC中獲取的View_AB以及View_AC兩個(gè)維度組合,第三層包括從View_AB中獲得View_A以及View_B,從View_AC中獲得的View_C。其中,維度組合之間的箭頭表示屬性之間的遞推路徑。
      [0033]步驟102,根據(jù)預(yù)設(shè)固化策略,確定固化維度組合并確定構(gòu)成最優(yōu)固化維度組合的運(yùn)算路徑。
      [0034]預(yù)設(shè)固化策略用于指示固化維度組合的查詢(xún)數(shù)據(jù)來(lái)源。
      [0035]固化維度組合即為預(yù)設(shè)的某些維度的組合,例如,預(yù)設(shè)的用戶(hù)的年齡、用戶(hù)的性另IJ、用戶(hù)的地址這三個(gè)維度的組合,或者,預(yù)設(shè)的用戶(hù)的年齡、用戶(hù)的性別這兩個(gè)維度的組人坐I=I 寸 O
      [0036]最優(yōu)固化維度組合的運(yùn)算路徑可以為獲得需求的維度組合時(shí)計(jì)算代價(jià)最小的運(yùn)算路徑。
      [0037]可選的,根據(jù)預(yù)設(shè)固化策略確定構(gòu)成最優(yōu)固化維度組合的運(yùn)算路徑時(shí),路徑端點(diǎn)的維度組合即可以為固化維度組合。
      [0038]步驟103,根據(jù)所述遞推拓?fù)?,生成?jì)算任務(wù)。
      [0039]可選的,根據(jù)遞推拓?fù)涞木S度組合以及維度組合之間的遞推路徑,生成包括各個(gè)維度組合的計(jì)算任務(wù)??梢岳斫獾?,計(jì)算任務(wù)即計(jì)算各維度組合,每一個(gè)維度對(duì)應(yīng)一個(gè)屬性。
      [0040]步驟104,根據(jù)所述固化維度組合以及所述最優(yōu)固化維度組合的運(yùn)算路徑,啟動(dòng)計(jì)算任務(wù),計(jì)算所述計(jì)算任務(wù),獲得計(jì)算結(jié)果。
      [0041]可選的,計(jì)算所述計(jì)算任務(wù)時(shí),獲取確定的最優(yōu)固化維度組合的運(yùn)算路徑,然后可以根據(jù)最優(yōu)固化維度組合的運(yùn)算路徑中涉及的固化維度組合啟動(dòng)計(jì)算任務(wù),從而可以極大地減少維度組合的計(jì)算量??蛇x的,可以先計(jì)算高層維度組合(TopView),其中,TopView為從海量待處理數(shù)據(jù)中或者進(jìn)行預(yù)處理之后的處理數(shù)據(jù)中直接生成的維度組合,例如,附圖2中的View_AB以及View_AC為T(mén)opView。然后根據(jù)遞推路徑計(jì)算其他View。
      [0042]本發(fā)明實(shí)施例提供一種多維度拆分的計(jì)算方法,通過(guò)根據(jù)接收到的海量待處理數(shù)據(jù),生成遞推拓?fù)?,所述遞推拓?fù)溆删S度組合以及各維度組合之間的遞推路徑構(gòu)成,所述維度組合由各維度的屬性名稱(chēng)以及與所述屬性名稱(chēng)對(duì)應(yīng)的所述海量待處理數(shù)據(jù)中的數(shù)據(jù)構(gòu)成;根據(jù)預(yù)設(shè)固化策略,確定固化維度組合并確定構(gòu)成最優(yōu)固化維度組合的運(yùn)算路徑;根據(jù)所述遞推拓?fù)?,生成?jì)算任務(wù);根據(jù)所述固化維度組合以及所述最優(yōu)固化維度組合的運(yùn)算路徑,啟動(dòng)計(jì)算任務(wù),計(jì)算所述計(jì)算任務(wù),獲得計(jì)算結(jié)果,從而實(shí)現(xiàn)可以對(duì)海量數(shù)據(jù)進(jìn)行多維度拆分計(jì)算,根據(jù)固化維度組合以及所述最優(yōu)固化維度組合的運(yùn)算路徑,計(jì)算所述計(jì)算任務(wù),使得降低計(jì)算復(fù)雜度。
      [0043]本發(fā)明實(shí)施例提供一種多維度拆分的計(jì)算方法,該方法的執(zhí)行主體可以為服務(wù)器,具體可以為多維度拆分系統(tǒng),如圖3所示,該方法包括:
      [0044]步驟301,接收海量待處理數(shù)據(jù)。
      [0045]可選的,可以通過(guò)接口接收用戶(hù)上報(bào)的海量待處理數(shù)據(jù),或者還可以接收用戶(hù)通過(guò)文本文件的方式提供的海量待處理數(shù)據(jù)。
      [0046]海量待處理數(shù)據(jù)可以為T(mén)B級(jí)海量待處理數(shù)據(jù)。
      [0047]對(duì)本步驟中海量待處理數(shù)據(jù)的具體描述可以參見(jiàn)步驟101中的描述,在此不再
      --贅述。
      [0048]步驟302,對(duì)所述海量待處理數(shù)據(jù)進(jìn)行流水預(yù)處理,獲得海量預(yù)處理數(shù)據(jù),所述海量預(yù)處理數(shù)據(jù)為表示不同屬性的數(shù)據(jù)。
      [0049]可選的,對(duì)所述海量待處理數(shù)據(jù)進(jìn)行流水預(yù)處理,可以獲得規(guī)范化的、便于后續(xù)計(jì)算的海量預(yù)處理數(shù)據(jù)。
      [0050]本步驟包括:
      [0051]A,根據(jù)所述海量待處理數(shù)據(jù)以及預(yù)設(shè)選擇預(yù)處理規(guī)則,確定與所述海量待處理數(shù)據(jù)對(duì)應(yīng)的預(yù)處理規(guī)則。
      [0052]可選的,預(yù)設(shè)選擇預(yù)處理規(guī)則為指定海量待處理數(shù)據(jù)采用哪種預(yù)處理規(guī)則進(jìn)行處理的規(guī)則??蛇x的,海量待處理數(shù)據(jù)可以為接收到的用戶(hù)一天的數(shù)據(jù),此時(shí)可以采用預(yù)處理規(guī)則I進(jìn)行處理,預(yù)處理規(guī)則I可以為對(duì)海量待處理數(shù)據(jù)進(jìn)行非法字段過(guò)濾;海量待處理數(shù)據(jù)可以為接收到的用戶(hù)預(yù)設(shè)時(shí)間段的數(shù)據(jù),此時(shí)可以采用預(yù)設(shè)處理規(guī)則2進(jìn)行處理,預(yù)設(shè)處理規(guī)則2可以為先對(duì)海量待處理數(shù)據(jù)按照時(shí)間進(jìn)行分組,獲得用戶(hù)每一天的數(shù)據(jù),然后對(duì)分組后每一組數(shù)據(jù)進(jìn)行非法字段過(guò)濾。
      [0053]B,根據(jù)所述預(yù)處理規(guī)則,對(duì)所述海量待處理數(shù)據(jù)進(jìn)行清洗處理,獲得第一處理數(shù)據(jù)。
      [0054]可選的,根據(jù)上述描述的預(yù)處理規(guī)則對(duì)不同的海量待處理數(shù)據(jù)進(jìn)行清洗處理,SP對(duì)海量待處理數(shù)據(jù)中的非法字段過(guò)濾。
      [0055]C,根據(jù)預(yù)設(shè)抽取字段規(guī)則,在所述第一處理數(shù)據(jù)中抽取多維度拆分所需的至少一個(gè)字段或者至少一個(gè)字段組合。
      [0056]可選的,預(yù)設(shè)抽取字段規(guī)則可以為根據(jù)經(jīng)驗(yàn)設(shè)置的需要抽取的字段,即需要在第一處理數(shù)據(jù)中分別抽取需要的維度組合,例如,需要獲得用戶(hù)的性別、用戶(hù)的年齡的維度組合,或者需要獲得用戶(hù)的性別、用戶(hù)的地址的維度組合,則可以根據(jù)預(yù)設(shè)抽取字段規(guī)則,在第一處理數(shù)據(jù)中抽取用戶(hù)的性別、用戶(hù)的年齡這兩個(gè)字段,以及再第一處理數(shù)據(jù)中抽取用戶(hù)的性別、用戶(hù)的地址這兩個(gè)字段。
      [0057]D,根據(jù)抽取的所述至少一個(gè)字段或者至少一個(gè)字段組合生成寬表,并將所述至少一個(gè)字段或者至少一個(gè)字段組合保存在所述寬表中。
      [0058]寬表指以列存儲(chǔ)的形式存儲(chǔ)數(shù)據(jù)的表,即每一個(gè)字段占用寬表中的一列進(jìn)行存儲(chǔ)。
      [0059]可選的,一個(gè)字段組合采用一個(gè)寬表存儲(chǔ),可以理解的,一個(gè)字段組合中不論有幾個(gè)字段,都采用一個(gè)寬表存儲(chǔ),例如抽取的字段組合為用戶(hù)的性別、用戶(hù)的年齡,則對(duì)應(yīng)的寬表中保存用戶(hù)的性別、用戶(hù)的年齡的數(shù)據(jù),抽取的字段組合為用戶(hù)的性別、用戶(hù)的地址,則對(duì)應(yīng)的寬表中保存用戶(hù)的性別、用戶(hù)的地址的數(shù)據(jù)。
      [0060]E,將所述寬表中保存的所述至少一個(gè)字段或者至少一個(gè)字段組合進(jìn)行壓縮,獲得所述海量預(yù)處理數(shù)據(jù)。
      [0061]可選的,為了減少保存寬表的空間,減少落地?cái)?shù)據(jù)量,則可以對(duì)寬表中保存的字段組合進(jìn)行壓縮,例如,可以采用輕量壓縮的方式進(jìn)行壓縮。其中,輕量壓縮指采用較小的壓縮比例壓縮數(shù)據(jù)。同樣的數(shù)據(jù)當(dāng)壓縮比例較大時(shí),壓縮后的數(shù)據(jù)的計(jì)算性能較差,即由于壓縮比例較大,后續(xù)處理壓縮后數(shù)據(jù)時(shí),需要解壓縮的時(shí)間較多,采用輕量壓縮后的數(shù)據(jù)的計(jì)算性能較好,因此優(yōu)選的,將所述寬表中保存的所述至少一個(gè)字段或者至少一個(gè)字段組合進(jìn)行輕量壓縮,獲得所述海量預(yù)處理數(shù)據(jù)。
      [0062]進(jìn)一步可選的,如圖4所示的指標(biāo)計(jì)算狀態(tài)轉(zhuǎn)移示意圖,對(duì)海量待處理數(shù)據(jù)執(zhí)行預(yù)處理之后,如果預(yù)處理成功,則可以繼續(xù)后續(xù)操作,如果預(yù)處理失敗,則重新進(jìn)行預(yù)處理。當(dāng)進(jìn)行預(yù)處理的失敗次數(shù)達(dá)到預(yù)設(shè)閾值時(shí)還沒(méi)有成功,則結(jié)束操作,當(dāng)進(jìn)行預(yù)處理的失敗次數(shù)未達(dá)到預(yù)設(shè)閾值時(shí)預(yù)處理成功,則繼續(xù)后續(xù)操作。
      [0063]步驟303,根據(jù)預(yù)處理后的海量預(yù)處理數(shù)據(jù),生成遞推拓?fù)洌鲞f推拓?fù)溆删S度組合以及各維度組合之間的遞推路徑構(gòu)成,所述維度組合由各維度的屬性名稱(chēng)以及與所述屬性名稱(chēng)對(duì)應(yīng)的所述海量預(yù)處理數(shù)據(jù)中的數(shù)據(jù)構(gòu)成。
      [0064]可選的,本步驟與附圖1中步驟101相同,在此不再--贅述。
      [0065]步驟304,根據(jù)預(yù)設(shè)固化策略,確定固化維度組合并確定構(gòu)成最優(yōu)固化維度組合的運(yùn)算路徑。
      [0066]可選的,本步驟與附圖1中步驟102相同,在此不再--贅述。
      [0067]步驟305,根據(jù)所述遞推拓?fù)?,生成?jì)算任務(wù)。
      [0068]可選的,本步驟與附圖1中步驟103相同,在此不再--贅述。
      [0069]步驟306,根據(jù)所述固化維度組合以及所述最優(yōu)固化維度組合的運(yùn)算路徑,啟動(dòng)所述計(jì)算任務(wù),計(jì)算所述計(jì)算任務(wù),獲得計(jì)算結(jié)果。
      [0070]可選的,所述根據(jù)所述固化維度組合以及所述最優(yōu)固化維度組合的運(yùn)算路徑,啟動(dòng)計(jì)算任務(wù),包括:
      [0071]獲取所述固化維度組合,并確定待計(jì)算的固化維度組合;根據(jù)所述待計(jì)算的固化維度組合,確定第一最優(yōu)固化維度組合的運(yùn)算路徑,所述最優(yōu)固化維度組合的運(yùn)算路徑包括所述第一最優(yōu)固化維度組合的運(yùn)算路徑;根據(jù)所述第一最優(yōu)固化維度組合的運(yùn)算路徑啟動(dòng)所述計(jì)算任務(wù)。
      [0072]可選的,確定待計(jì)算的固化維度組合之前,從分布式數(shù)據(jù)庫(kù)中獲取配置表中的配置信息,此配置信息即為需要計(jì)算的固化維度組合,即待計(jì)算的固化維度組合。需要說(shuō)明的是,待計(jì)算的固化維度組合為獲取的固化維度組合中的至少一個(gè)維度組合。第一最優(yōu)固化維度組合的運(yùn)算路徑為與待計(jì)算的固化維度組合相關(guān)的最優(yōu)運(yùn)算路徑,即根據(jù)第一最優(yōu)固化維度組合的運(yùn)算路徑計(jì)算待計(jì)算的固化維度組合時(shí)計(jì)算代價(jià)最小。
      [0073]可選的,計(jì)算所述計(jì)算任務(wù)時(shí),根據(jù)固化維度組合以及第一最優(yōu)固化維度組合的運(yùn)算路徑啟動(dòng)計(jì)算任務(wù),與現(xiàn)有技術(shù)中每次計(jì)算維度組合時(shí)都需要從原始流水?dāng)?shù)據(jù)中獲取數(shù)據(jù)進(jìn)行計(jì)算,本發(fā)明實(shí)施例采用的方案可以極大地減少維度組合的計(jì)算量??蛇x的,可以先計(jì)算高層維度組合(TopView),其中,TopView為從海量待處理數(shù)據(jù)中或者進(jìn)行預(yù)處理之后的處理數(shù)據(jù)中直接生成的維度組合,例如,附圖2中的View_AB以及View_AC為T(mén)opView。然后根據(jù)遞推路徑計(jì)算其他View。
      [0074]具體的,根據(jù)所述第一最優(yōu)固化維度組合的運(yùn)算路徑啟動(dòng)所述計(jì)算任務(wù)時(shí),可以采用下述方法:
      [0075]A,將所述第一最優(yōu)固化維度組合的運(yùn)算路徑中的所述待計(jì)算的固化維度組合按照路徑遞推關(guān)系進(jìn)行分組,獲得第一分組;例如,假設(shè)圖2所示的遞推拓?fù)錇榈谝蛔顑?yōu)固化維度組合的運(yùn)算路徑所在的遞推拓?fù)?,則將所述最優(yōu)固化維度組合的運(yùn)算路徑中的所述固化維度組合按照路徑遞推關(guān)系進(jìn)行分組,即為維度組合View_ABC可遞推View_AB和View_AC, View_AB可遞推View_A和View_B, View_AC可遞推View_C,這樣第一分組可以包括View_AB> View_AC、View_A、View_B> View_C 這五個(gè)子組。
      [0076]B,當(dāng)所述第一分組中存在相同路徑遞推關(guān)系時(shí),合并所述第一分組中具有所述相同路徑遞推關(guān)系的固化維度組合,獲得第二分組;
      [0077]可選的,第一分組中從View_ABC可遞推View_AB和View_AC,即 View_ABC為 View_AB和View_AC的共同父View,可以將View_AB和View_AC合并計(jì)算;同理,View_AB可遞推View_A和View_B,可在View_AB計(jì)算結(jié)束后,將View_A和View_B合并計(jì)算。這樣,第二分組可以包括View_AB和View_AC、View_A和View_B以及View_C這三個(gè)子組。
      [0078]C,按照所述路徑遞推關(guān)系并行啟動(dòng)計(jì)算所述第二分組中的各個(gè)固化維度組合的所述計(jì)算任務(wù),多路獲得所述計(jì)算結(jié)果。
      [0079]進(jìn)一步可選的,按照啟動(dòng)的所述計(jì)算任務(wù)進(jìn)行并行計(jì)算,多路獲得計(jì)算結(jié)果。
      [0080]在計(jì)算各個(gè)固化維度組合時(shí),可以計(jì)算所需的維度,并從寬表中獲取相關(guān)列,按照固化維度組合指定的運(yùn)算邏輯選擇不同的算法進(jìn)行計(jì)算,可選的,在計(jì)算時(shí)可以支持多路合并、指標(biāo)值累加、指標(biāo)值去重累加等多種算法,在采用上述多種算法進(jìn)行計(jì)算時(shí),可以根據(jù)現(xiàn)有技術(shù)進(jìn)行計(jì)算,在此不再一一贅述。
      [0081]可選的,父View生成后,將該父View可遞推的子View列表下發(fā),并進(jìn)行子View的計(jì)算,其中,子View列表為多個(gè)子View組成的列表,每個(gè)子View列表指從父View中獲取的相關(guān)列。在計(jì)算子View時(shí)可以從父View中獲取所需列,采用指定算法計(jì)算子View結(jié)果O
      [0082]計(jì)算View時(shí),一次運(yùn)算可以涉及多個(gè)View,運(yùn)算的結(jié)果可以采用多路輸出。
      [0083]可選的,本實(shí)施例根據(jù)固化維度組合以及優(yōu)固化維度組合的運(yùn)算路徑,計(jì)算所述計(jì)算任務(wù),使得整體計(jì)算所需的運(yùn)算資源較少,從而可以提高運(yùn)算速度。
      [0084]進(jìn)一步可選的,如圖4所示的指標(biāo)計(jì)算狀態(tài)轉(zhuǎn)移示意圖,對(duì)執(zhí)行流水預(yù)處理成功之后的海量預(yù)處理數(shù)據(jù)啟動(dòng)計(jì)算任務(wù)的計(jì)算后,如果計(jì)算成功,則完成計(jì)算,結(jié)束操作。如果計(jì)算失敗,則可以重新從流水處理成功后的指標(biāo)狀態(tài)重新進(jìn)行計(jì)算。當(dāng)進(jìn)行計(jì)算的失敗次數(shù)達(dá)到預(yù)設(shè)閾值時(shí)還沒(méi)有計(jì)算成功,則計(jì)算失敗,結(jié)束操作,當(dāng)進(jìn)行計(jì)算的失敗次數(shù)未達(dá)到預(yù)設(shè)閾值時(shí)計(jì)算成功,則完成計(jì)算,結(jié)束操作。
      [0085]步驟307,將所述多路獲得的所述計(jì)算結(jié)果,分別保存在對(duì)應(yīng)的列表中,所述一路計(jì)算結(jié)果對(duì)應(yīng)一個(gè)列表。
      [0086]一路計(jì)算結(jié)果對(duì)應(yīng)一個(gè)列表,在本實(shí)施例中,落地的View表分表策略為根據(jù)ViewID (Identity,身份標(biāo)識(shí)號(hào)碼)進(jìn)行分表存儲(chǔ),即一個(gè)View計(jì)算的輸出結(jié)果保存在一個(gè)列表中。
      [0087]步驟308,將保存在列表中的所述計(jì)算結(jié)果存儲(chǔ)在分布式數(shù)據(jù)庫(kù)中,并對(duì)保存在列表中的所述計(jì)算結(jié)果中的關(guān)鍵維度組合保存在內(nèi)存中,所述關(guān)鍵維度組合包括用戶(hù)經(jīng)常查詢(xún)的維度組合或者用戶(hù)預(yù)設(shè)時(shí)間段內(nèi)使用的維度組合。
      [0088]可選的,本實(shí)施例中將計(jì)算結(jié)果保存在分布式數(shù)據(jù)庫(kù)中,采用分布式文件系統(tǒng)的大表(Big Table)存儲(chǔ),即采用支持列存儲(chǔ)的方式存儲(chǔ)計(jì)算結(jié)果,分布式數(shù)據(jù)庫(kù)為數(shù)據(jù)分別存儲(chǔ)在計(jì)算機(jī)網(wǎng)絡(luò)中的不同臺(tái)計(jì)算機(jī)上的數(shù)據(jù)庫(kù),存儲(chǔ)的數(shù)據(jù)量較大,并且可以提供高效訪問(wèn)能力。需要說(shuō)明的是,當(dāng)采用支持列存儲(chǔ)的方式存儲(chǔ)計(jì)算結(jié)果時(shí),對(duì)于沒(méi)有數(shù)據(jù)的列則不占用存儲(chǔ)資源,即僅有數(shù)據(jù)的列占用存儲(chǔ)資源,與現(xiàn)有技術(shù)中存儲(chǔ)數(shù)據(jù)相比,可以節(jié)省大量存儲(chǔ)資源,用來(lái)存儲(chǔ)有效數(shù)據(jù)。
      [0089]可選的,將關(guān)鍵維度組合保存在內(nèi)存中,可以提高查詢(xún)速度,增強(qiáng)用戶(hù)體驗(yàn)。
      [0090]可選的,如圖5所示的列存儲(chǔ)示意圖,關(guān)鍵值(KEY)存儲(chǔ)數(shù)據(jù)日期和View的維度值,列存儲(chǔ)每個(gè)指標(biāo)對(duì)應(yīng)的指標(biāo)值,其中,數(shù)據(jù)日期即獲取用戶(hù)產(chǎn)生此數(shù)據(jù)的日期。例如,20130601_10_1_010表示數(shù)據(jù)產(chǎn)生日期為2013年6月I日,View的維度值分別為10、1、010,其中,第一個(gè)維度值可以為年齡的值,例如,年齡為10歲,第二個(gè)維度值可以為性別的值,例如,女性為1,男性為2,則表示此用戶(hù)為女性,第三個(gè)維度值可以為地址的值,例如,北京采用010表示,則當(dāng)前用戶(hù)的地址為北京,可選的,屬性采用哪些值表示可以預(yù)先設(shè)置好的。其中,101:200表示指標(biāo)ID_101的指標(biāo)值為200,例如,指標(biāo)可以為用戶(hù)活躍度,則當(dāng)前活躍的人數(shù)為200。102:108表示指標(biāo)ID_102的指標(biāo)值為108。
      [0091]步驟309,根據(jù)用戶(hù)發(fā)送的數(shù)據(jù)查詢(xún)請(qǐng)求,判斷所述分布式數(shù)據(jù)庫(kù)或者內(nèi)存中是否保存有待查詢(xún)維度組合對(duì)應(yīng)的維度組合數(shù)據(jù)。
      [0092]所述數(shù)據(jù)查詢(xún)請(qǐng)求中包括所述待查詢(xún)維度組合。
      [0093]可選的,接收用戶(hù)發(fā)送的數(shù)據(jù)查詢(xún)請(qǐng)求,然后判斷分布式數(shù)據(jù)庫(kù)或者內(nèi)存中是否保存有待查詢(xún)維度組合對(duì)應(yīng)的維度組合數(shù)據(jù)。分布式數(shù)據(jù)庫(kù)中保存有各個(gè)固化維度組合,內(nèi)存中保存有關(guān)鍵固化維度組合,當(dāng)分布式數(shù)據(jù)庫(kù)或者內(nèi)存中保存有用戶(hù)請(qǐng)求的待查詢(xún)維度組合時(shí),則可以直接訪問(wèn)分布式數(shù)據(jù)庫(kù)或者內(nèi)存,從而可以直接獲得查詢(xún)結(jié)果。當(dāng)分布式數(shù)據(jù)庫(kù)或者內(nèi)存中未保存用戶(hù)請(qǐng)求的維度組合時(shí),則需要啟動(dòng)按需請(qǐng)求計(jì)算,即執(zhí)行步驟311。
      [0094]步驟310,當(dāng)所述分布式數(shù)據(jù)庫(kù)或者內(nèi)存中保存有所述待查詢(xún)維度組合對(duì)應(yīng)的所述維度組合數(shù)據(jù)時(shí),則將所述數(shù)據(jù)查詢(xún)請(qǐng)求發(fā)送給所述分布式數(shù)據(jù)庫(kù)或者內(nèi)存,并接收所述分布式數(shù)據(jù)庫(kù)或者內(nèi)存發(fā)送的所述維度組合數(shù)據(jù)。
      [0095]步驟311,當(dāng)所述分布式數(shù)據(jù)庫(kù)或者內(nèi)存中未保存所述待查詢(xún)維度組合對(duì)應(yīng)的所述維度組合數(shù)據(jù)時(shí),則合并預(yù)設(shè)時(shí)間段內(nèi)的至少一個(gè)用戶(hù)發(fā)送的數(shù)據(jù)查詢(xún)請(qǐng)求,并根據(jù)所述固化維度組合以及所述最優(yōu)固化維度組合的運(yùn)算路徑,批量啟動(dòng)維度組合計(jì)算的計(jì)算任務(wù),批量執(zhí)行所述維度組合計(jì)算的計(jì)算任務(wù),獲得計(jì)算結(jié)果。
      [0096]可選的,為了提高計(jì)算速度,可以合并一段時(shí)間內(nèi)的數(shù)據(jù)查詢(xún)請(qǐng)求,進(jìn)行批量按需請(qǐng)求計(jì)算,預(yù)設(shè)時(shí)間段可以為3秒或者5秒等時(shí)間段。
      [0097]進(jìn)一步的,在執(zhí)行批量按需請(qǐng)求計(jì)算時(shí),可以根據(jù)固化維度組合以及最優(yōu)固化維度組合的運(yùn)算路徑進(jìn)行計(jì)算,這樣可以提高按需View生成速度。
      [0098]進(jìn)一步可選的,當(dāng)啟動(dòng)按需請(qǐng)求計(jì)算時(shí),獲得計(jì)算結(jié)果后將計(jì)算結(jié)果保存在列表中,并將列表保存在分布式數(shù)據(jù)庫(kù)中,或者保存在內(nèi)存中。
      [0099]需要說(shuō)明的是,采用現(xiàn)有技術(shù)對(duì)多維組合結(jié)果采用數(shù)據(jù)分析系統(tǒng)分析數(shù)據(jù)時(shí),例如采用淘寶數(shù)據(jù)魔方、有夢(mèng)數(shù)據(jù)分析平臺(tái)等數(shù)據(jù)分析系統(tǒng)針對(duì)單維度查詢(xún)或者分析數(shù)據(jù),例如,分析預(yù)設(shè)年齡的活躍人數(shù),即分析活躍人數(shù)這個(gè)指標(biāo)時(shí),根據(jù)預(yù)設(shè)年齡這個(gè)維度進(jìn)行分析。采用本發(fā)明實(shí)施例提供的方法可以滿(mǎn)足用戶(hù)維度組合查詢(xún)需求的數(shù)據(jù),從而提高用戶(hù)體驗(yàn)。
      [0100]本發(fā)明實(shí)施例提供一種多維度拆分的計(jì)算方法,通過(guò)將計(jì)算任務(wù)根據(jù)固化維度組合以及所述最優(yōu)固化維度組合的運(yùn)算路徑進(jìn)行計(jì)算,并將計(jì)算結(jié)果保存在分布式數(shù)據(jù)庫(kù)或者內(nèi)存中,使得本發(fā)明實(shí)施例可以對(duì)海量數(shù)據(jù)進(jìn)行多維度拆分計(jì)算,從而降低計(jì)算復(fù)雜度,提聞訪問(wèn)能力。
      [0101]本發(fā)明實(shí)施例提供一種多維度拆分的計(jì)算系統(tǒng),如圖6所示,該系統(tǒng)包括:運(yùn)算決策模塊601,運(yùn)算控制模塊602,維度組合生成模塊603 ;
      [0102]所述運(yùn)算決策模塊601,用于根據(jù)預(yù)處理后的海量預(yù)處理數(shù)據(jù),生成遞推拓?fù)?,所述遞推拓?fù)溆删S度組合以及各維度組合之間的遞推路徑構(gòu)成,所述維度組合由各維度的屬性名稱(chēng)以及與所述屬性名稱(chēng)對(duì)應(yīng)的所述海量預(yù)處理數(shù)據(jù)中的數(shù)據(jù)構(gòu)成;
      [0103]所述運(yùn)算決策模塊601,還用于根據(jù)預(yù)設(shè)固化策略,確定固化維度組合并確定構(gòu)成最優(yōu)固化維度組合的運(yùn)算路徑;
      [0104]運(yùn)算控制模塊602,用于根據(jù)所述遞推拓?fù)?,生成?jì)算任務(wù);
      [0105]所述運(yùn)算控制模塊602,還用于根據(jù)所述固化維度組合以及所述最優(yōu)固化維度組合的運(yùn)算路徑,啟動(dòng)計(jì)算任務(wù);
      [0106]維度組合生成模塊603,用于計(jì)算所述計(jì)算任務(wù),獲得計(jì)算結(jié)果。
      [0107]進(jìn)一步可選的,如圖7所示,所述系統(tǒng)還包括:流水預(yù)處理模塊604 ;
      [0108]所述流水預(yù)處理模塊604,用于接收海量待處理數(shù)據(jù);以及,對(duì)所述海量待處理數(shù)據(jù)進(jìn)行流水預(yù)處理,獲得海量預(yù)處理數(shù)據(jù)。
      [0109]可選的,接收到的海量待處理數(shù)據(jù)可以為獲取的用戶(hù)一天的流水?dāng)?shù)據(jù),也可以為用戶(hù)預(yù)設(shè)時(shí)間段內(nèi)的流水?dāng)?shù)據(jù),預(yù)設(shè)時(shí)間段可以根據(jù)經(jīng)驗(yàn)設(shè)置,例如預(yù)設(shè)時(shí)間段可以為一周、8天等時(shí)間段。海量待處理數(shù)據(jù)可以為T(mén)B級(jí)海量待處理數(shù)據(jù)。
      [0110]可選的,可以通過(guò)接口接收用戶(hù)上報(bào)的海量待處理數(shù)據(jù),或者還可以接收用戶(hù)通過(guò)文本文件的方式提供的海量待處理數(shù)據(jù)。
      [0111]進(jìn)一步可選的,所述流水預(yù)處理模塊,包括:選擇預(yù)處理規(guī)則子模塊6041,清洗子模塊6042,抽取子模塊6043,存儲(chǔ)模塊6044,壓縮模塊6045 ;
      [0112]選擇預(yù)處理規(guī)則子模塊6041,用于根據(jù)所述海量待處理數(shù)據(jù)以及預(yù)設(shè)選擇預(yù)處理規(guī)則,確定與所述海量待處理數(shù)據(jù)對(duì)應(yīng)的預(yù)處理規(guī)則;可選的,預(yù)設(shè)選擇預(yù)處理規(guī)則為指定海量待處理數(shù)據(jù)采用哪種預(yù)處理規(guī)則進(jìn)行處理的規(guī)則。
      [0113]清洗子模塊6042,用于根據(jù)所述預(yù)處理規(guī)則,對(duì)所述海量待處理數(shù)據(jù)進(jìn)行清洗處理,獲得第一處理數(shù)據(jù);可選的,根據(jù)上述描述的預(yù)處理規(guī)則對(duì)不同的海量待處理數(shù)據(jù)進(jìn)行清洗處理,即對(duì)海量待處理數(shù)據(jù)中的非法字段過(guò)濾。
      [0114]抽取子模塊6043,用于根據(jù)預(yù)設(shè)抽取字段規(guī)則,在所述第一處理數(shù)據(jù)中抽取多維度拆分所需的至少一個(gè)字段或者至少一個(gè)字段組合;可選的,預(yù)設(shè)抽取字段規(guī)則可以為根據(jù)經(jīng)驗(yàn)設(shè)置的需要抽取的字段,即需要在第一處理數(shù)據(jù)中分別抽取需要的維度組合;
      [0115]存儲(chǔ)模塊6044,用于根據(jù)抽取的所述至少一個(gè)字段或者至少一個(gè)字段組合生成寬表,并將所述至少一個(gè)字段或者至少一個(gè)字段組合保存在所述寬表中;
      [0116]寬表指以列存儲(chǔ)的形式存儲(chǔ)數(shù)據(jù)的表,即每一個(gè)字段占用寬表中的一列進(jìn)行存儲(chǔ)。
      [0117]壓縮模塊6045,用于將所述寬表中保存的所述至少一個(gè)字段或者至少一個(gè)字段組合進(jìn)行壓縮,獲得所述海量預(yù)處理數(shù)據(jù)。
      [0118]可選的,所述壓縮模塊6045,用于:將所述寬表中保存的所述至少一個(gè)字段或者至少一個(gè)字段組合進(jìn)行輕量壓縮,獲得所述海量預(yù)處理數(shù)據(jù)。
      [0119]進(jìn)一步可選的,如圖7所示,所述運(yùn)算控制模塊602根據(jù)所述固化維度組合以及所述最優(yōu)固化維度組合的運(yùn)算路徑,啟動(dòng)計(jì)算任務(wù)時(shí),所述運(yùn)算控制模塊602包括:獲取子模塊6021,確定子模塊6022,運(yùn)算啟動(dòng)子模塊6023 ;
      [0120]獲取子模塊6021,用于獲取所述固化維度組合;
      [0121]確定子模塊6022,用于根據(jù)獲取的所述固化維度組合,確定待計(jì)算的固化維度組合;
      [0122]所述確定子模塊6022,還用于根據(jù)所述待計(jì)算的固化維度組合,確定第一最優(yōu)固化維度組合的運(yùn)算路徑,所述最優(yōu)固化維度組合的運(yùn)算路徑包括所述第一最優(yōu)固化維度組合的運(yùn)算路徑;
      [0123]運(yùn)算啟動(dòng)子模塊6023,用于根據(jù)所述第一最優(yōu)固化維度組合的運(yùn)算路徑啟動(dòng)所述計(jì)算任務(wù)。
      [0124]進(jìn)一步可選的,所述運(yùn)算啟動(dòng)子模塊根據(jù)所述第一最優(yōu)固化維度組合的運(yùn)算路徑啟動(dòng)所述計(jì)算任務(wù)時(shí),所述運(yùn)算啟動(dòng)子模塊包括:分組單元,合并單元,啟動(dòng)單元;需要說(shuō)明的是,在附圖中不顯示運(yùn)算啟動(dòng)子模塊中包括的各個(gè)單元。
      [0125]分組單元,用于將所述第一最優(yōu)固化維度組合的運(yùn)算路徑中的所述待計(jì)算的固化維度組合按照路徑遞推關(guān)系進(jìn)行分組,獲得第一分組;
      [0126]合并單元,用于當(dāng)所述第一分組中存在相同路徑遞推關(guān)系時(shí),合并所述第一分組中具有所述相同路徑遞推關(guān)系的固化維度組合,獲得第二分組;
      [0127]啟動(dòng)單元,用于按照所述路徑遞推關(guān)系并行啟動(dòng)計(jì)算所述第二分組中的各個(gè)固化維度組合的所述計(jì)算任務(wù),多路獲得所述計(jì)算結(jié)果。
      [0128]可選的,所述維度組合生成模塊603,用于:按照啟動(dòng)的所述計(jì)算任務(wù)進(jìn)行并行計(jì)算,多路獲得計(jì)算結(jié)果。
      [0129]進(jìn)一步可選的,如圖7所示,所述系統(tǒng),還包括:存儲(chǔ)模塊605 ;
      [0130]按照啟動(dòng)的所述計(jì)算任務(wù)進(jìn)行并行計(jì)算,多路獲得計(jì)算結(jié)果之后,存儲(chǔ)模塊605,用于將所述多路獲得的所述計(jì)算結(jié)果,分別保存在對(duì)應(yīng)的列表中,所述一路計(jì)算結(jié)果對(duì)應(yīng)一個(gè)列表。
      [0131]進(jìn)一步可選的,將所述多路獲得的所述計(jì)算結(jié)果,分別保存在對(duì)應(yīng)的列表中之后,所述存儲(chǔ)模塊605,還用于:將保存在列表中的所述計(jì)算結(jié)果存儲(chǔ)在分布式數(shù)據(jù)庫(kù)中,并對(duì)保存在列表中的所述計(jì)算結(jié)果中的關(guān)鍵維度組合保存在內(nèi)存中,所述關(guān)鍵維度組合包括用戶(hù)經(jīng)常查詢(xún)的維度組合或者用戶(hù)預(yù)設(shè)時(shí)間段內(nèi)使用的維度組合。
      [0132]可選的,將計(jì)算結(jié)果保存在分布式數(shù)據(jù)庫(kù)中,采用分布式文件系統(tǒng)的大表(BigTable)存儲(chǔ),即采用支持列存儲(chǔ)的方式存儲(chǔ)計(jì)算結(jié)果,分布式數(shù)據(jù)庫(kù)為數(shù)據(jù)分別存儲(chǔ)在計(jì)算機(jī)網(wǎng)絡(luò)中的不同臺(tái)計(jì)算機(jī)上的數(shù)據(jù)庫(kù),存儲(chǔ)的數(shù)據(jù)量較大,并且可以提供高效訪問(wèn)能力。需要說(shuō)明的是,當(dāng)采用支持列存儲(chǔ)的方式存儲(chǔ)計(jì)算結(jié)果時(shí),對(duì)于沒(méi)有數(shù)據(jù)的列則不占用存儲(chǔ)資源,即僅有數(shù)據(jù)的列占用存儲(chǔ)資源,與現(xiàn)有技術(shù)中存儲(chǔ)數(shù)據(jù)相比,可以節(jié)省大量存儲(chǔ)資源,用來(lái)存儲(chǔ)有效數(shù)據(jù)。
      [0133]進(jìn)一步可選的,當(dāng)接收到用戶(hù)發(fā)送的數(shù)據(jù)查詢(xún)請(qǐng)求之后,所述運(yùn)算控制模塊602,還用于根據(jù)用戶(hù)發(fā)送的數(shù)據(jù)查詢(xún)請(qǐng)求,判斷所述分布式數(shù)據(jù)庫(kù)或者內(nèi)存中是否保存有待查詢(xún)維度組合對(duì)應(yīng)的維度組合數(shù)據(jù),所述數(shù)據(jù)查詢(xún)請(qǐng)求中包括所述待查詢(xún)維度組合;
      [0134]所述運(yùn)算控制模塊602,還用于當(dāng)所述分布式數(shù)據(jù)庫(kù)或者內(nèi)存中保存有所述待查詢(xún)維度組合對(duì)應(yīng)的所述維度組合數(shù)據(jù)時(shí),則將所述數(shù)據(jù)查詢(xún)請(qǐng)求發(fā)送給所述分布式數(shù)據(jù)庫(kù)或者內(nèi)存,并接收所述分布式數(shù)據(jù)庫(kù)或者內(nèi)存發(fā)送的所述維度組合數(shù)據(jù);
      [0135]所述運(yùn)算控制模塊602,還用于當(dāng)所述分布式數(shù)據(jù)庫(kù)或者內(nèi)存中未保存所述待查詢(xún)維度組合對(duì)應(yīng)的所述維度組合數(shù)據(jù)時(shí),則合并預(yù)設(shè)時(shí)間段內(nèi)的至少一個(gè)用戶(hù)發(fā)送的數(shù)據(jù)查詢(xún)請(qǐng)求,并根據(jù)所述固化維度組合以及所述最優(yōu)固化維度組合的運(yùn)算路徑,批量啟動(dòng)維度組合計(jì)算的計(jì)算任務(wù);
      [0136]所述維度組合模塊603,還用于批量執(zhí)行所述維度組合計(jì)算的計(jì)算任務(wù),獲得計(jì)算結(jié)果。
      [0137]進(jìn)一步可選的,所述系統(tǒng)還可以包括中控模塊,中控模塊負(fù)載子流程的串起,子流程的失敗重試、運(yùn)算告警等。
      [0138]需要說(shuō)明的是,附圖6或附圖7所示裝置中,其各個(gè)模塊的具體實(shí)施過(guò)程以及各個(gè)模塊之間的信息交互等內(nèi)容,由于與本發(fā)明方法實(shí)施例基于同一發(fā)明構(gòu)思,可以參見(jiàn)方法實(shí)施例,在此不一一贅述。
      [0139]本發(fā)明實(shí)施例提供一種多維度拆分的計(jì)算系統(tǒng),通過(guò)將計(jì)算任務(wù)根據(jù)固化維度組合以及所述最優(yōu)固化維度組合的運(yùn)算路徑進(jìn)行計(jì)算,并將計(jì)算結(jié)果保存在分布式數(shù)據(jù)庫(kù)或者內(nèi)存中,使得本發(fā)明實(shí)施例可以對(duì)海量數(shù)據(jù)進(jìn)行多維度拆分計(jì)算,從而降低計(jì)算復(fù)雜度,提聞訪問(wèn)能力。
      [0140]需說(shuō)明的是,以上所描述的裝置實(shí)施例僅僅是示意性的,其中所述作為分離部件說(shuō)明的單元可以是或者也可以不是物理上分開(kāi)的,作為單元顯示的部件可以是或者也可以不是物理單元,即可以位于一個(gè)地方,或者也可以分布到多個(gè)網(wǎng)絡(luò)單元上??梢愿鶕?jù)實(shí)際的需要選擇其中的部分或者全部模塊來(lái)實(shí)現(xiàn)本實(shí)施例方案的目的。本領(lǐng)域普通技術(shù)人員在不付出創(chuàng)造性勞動(dòng)的情況下,即可以理解并實(shí)施。
      [0141]通過(guò)以上的實(shí)施方式的描述,所屬領(lǐng)域的技術(shù)人員可以清楚地了解到本發(fā)明可借助軟件加必需的通用硬件的方式來(lái)實(shí)現(xiàn),當(dāng)然也可以通過(guò)專(zhuān)用硬件包括專(zhuān)用集成電路、專(zhuān)用CPU、專(zhuān)用存儲(chǔ)器、專(zhuān)用元器件等來(lái)實(shí)現(xiàn),但很多情況下前者是更佳的實(shí)施方式。基于這樣的理解,本發(fā)明的技術(shù)方案本質(zhì)上或者說(shuō)對(duì)現(xiàn)有技術(shù)做出貢獻(xiàn)的部分可以以軟件產(chǎn)品的形式體現(xiàn)出來(lái),該計(jì)算機(jī)軟件產(chǎn)品存儲(chǔ)在可讀取的存儲(chǔ)介質(zhì)中,如計(jì)算機(jī)的軟盤(pán),U盤(pán)、移動(dòng)硬盤(pán)、只讀存儲(chǔ)器、隨機(jī)存取存儲(chǔ)器、磁碟或者光盤(pán)等,包括若干指令用以使得一臺(tái)計(jì)算機(jī)設(shè)備(可以是個(gè)人計(jì)算機(jī),服務(wù)器,或者網(wǎng)絡(luò)設(shè)備等)執(zhí)行本發(fā)明各個(gè)實(shí)施例所述的方法。
      [0142]本說(shuō)明書(shū)中的各個(gè)實(shí)施例均采用遞進(jìn)的方式描述,各個(gè)實(shí)施例之間相同相似的部分互相參見(jiàn)即可,每個(gè)實(shí)施例重點(diǎn)說(shuō)明的都是與其他實(shí)施例的不同之處。尤其,對(duì)于裝置和系統(tǒng)實(shí)施例而言,由于其基本相似于方法實(shí)施例,所以描述得比較簡(jiǎn)單,相關(guān)之處參見(jiàn)方法實(shí)施例的部分說(shuō)明即可。
      [0143]以上所述,僅為本發(fā)明的【具體實(shí)施方式】,但本發(fā)明的保護(hù)范圍并不局限于此,任何熟悉本【技術(shù)領(lǐng)域】的技術(shù)人員在本發(fā)明揭露的技術(shù)范圍內(nèi),可輕易想到變化或替換,都應(yīng)涵蓋在本發(fā)明的保護(hù)范圍之內(nèi)。因此,本發(fā)明的保護(hù)范圍應(yīng)所述以權(quán)利要求的保護(hù)范圍為準(zhǔn)。
      【權(quán)利要求】
      1.一種多維度拆分的計(jì)算方法,其特征在于,包括: 根據(jù)預(yù)處理后的海量預(yù)處理數(shù)據(jù),生成遞推拓?fù)洌鲞f推拓?fù)溆删S度組合以及各維度組合之間的遞推路徑構(gòu)成,所述維度組合由各維度的屬性名稱(chēng)以及與所述屬性名稱(chēng)對(duì)應(yīng)的所述海量預(yù)處理數(shù)據(jù)中的數(shù)據(jù)構(gòu)成; 根據(jù)預(yù)設(shè)固化策略,確定固化維度組合并確定構(gòu)成最優(yōu)固化維度組合的運(yùn)算路徑; 根據(jù)所述遞推拓?fù)?,生成?jì)算任務(wù); 根據(jù)所述固化維度組合以及所述最優(yōu)固化維度組合的運(yùn)算路徑,啟動(dòng)計(jì)算任務(wù),計(jì)算所述計(jì)算任務(wù),獲得計(jì)算結(jié)果。
      2.根據(jù)權(quán)利要求1所述的方法,其特征在于,在所述根據(jù)預(yù)處理后的海量預(yù)處理數(shù)據(jù),生成遞推拓?fù)渲?,還包括: 接收海量待處理數(shù)據(jù); 對(duì)所述海量待處理數(shù)據(jù)進(jìn)行流水預(yù)處理,獲得海量預(yù)處理數(shù)據(jù)。
      3.根據(jù)權(quán)利要求2所述的方法,其特征在于,所述對(duì)所述海量待處理數(shù)據(jù)進(jìn)行流水預(yù)處理,獲得海量預(yù)處理數(shù)據(jù),包括: 根據(jù)所述海量待處理數(shù)據(jù)以及預(yù)設(shè)選擇預(yù)處理規(guī)則,確定與所述海量待處理數(shù)據(jù)對(duì)應(yīng)的預(yù)處理規(guī)則; 根據(jù)所述預(yù)處理規(guī)則,對(duì)所述海量待處理數(shù)據(jù)進(jìn)行清洗處理,獲得第一處理數(shù)據(jù); 根據(jù)預(yù)設(shè)抽取字段規(guī)則,在所述第一處理數(shù)據(jù)中抽取多維度拆分所需的至少一個(gè)字段或者至少一個(gè)字段組合; 根據(jù)抽取的所述至少一個(gè)字段或者至少一個(gè)字段組合生成寬表,并將所述至少一個(gè)字段或者至少一個(gè)字段組合保存在所述寬表中; 將所述寬表中保存的所述至少一個(gè)字段或者至少一個(gè)字段組合進(jìn)行壓縮,獲得所述海量預(yù)處理數(shù)據(jù)。
      4.根據(jù)權(quán)利要求3所述的方法,其特征在于,所述將所述寬表中保存的所述至少一個(gè)字段或者至少一個(gè)字段組合進(jìn)行壓縮,獲得所述海量預(yù)處理數(shù)據(jù),包括: 將所述寬表中保存的所述至少一個(gè)字段或者至少一個(gè)字段組合進(jìn)行輕量壓縮,獲得所述海量預(yù)處理數(shù)據(jù)。
      5.根據(jù)權(quán)利要求1-4中任一項(xiàng)所述的方法,其特征在于,所述根據(jù)所述固化維度組合以及所述最優(yōu)固化維度組合的運(yùn)算路徑,啟動(dòng)計(jì)算任務(wù),包括: 獲取所述固化維度組合,并確定待計(jì)算的固化維度組合; 根據(jù)所述待計(jì)算的固化維度組合,確定第一最優(yōu)固化維度組合的運(yùn)算路徑,所述最優(yōu)固化維度組合的運(yùn)算路徑包括所述第一最優(yōu)固化維度組合的運(yùn)算路徑; 根據(jù)所述第一最優(yōu)固化維度組合的運(yùn)算路徑啟動(dòng)所述計(jì)算任務(wù)。
      6.根據(jù)權(quán)利要求5所述的方法,其特征在于,所述根據(jù)所述第一最優(yōu)固化維度組合的運(yùn)算路徑啟動(dòng)所述計(jì)算任務(wù),包括: 將所述第一最優(yōu)固化維度組合的運(yùn)算路徑中的所述待計(jì)算的固化維度組合按照路徑遞推關(guān)系進(jìn)行分組,獲得第一分組; 當(dāng)所述第一分組中存在相同路徑遞推關(guān)系時(shí),合并所述第一分組中具有所述相同路徑遞推關(guān)系的固化維度組合,獲得第二分組; 按照所述路徑遞推關(guān)系并行啟動(dòng)計(jì)算所述第二分組中的各個(gè)固化維度組合的所述計(jì)算任務(wù),多路獲得所述計(jì)算結(jié)果。
      7.根據(jù)權(quán)利要求6所述的方法,其特征在于,所述計(jì)算所述計(jì)算任務(wù),獲得計(jì)算結(jié)果,包括: 按照啟動(dòng)的所述計(jì)算任務(wù)進(jìn)行并行計(jì)算,多路獲得計(jì)算結(jié)果。
      8.根據(jù)權(quán)利要求7所述的方法,其特征在于,所述按照啟動(dòng)的所述計(jì)算任務(wù)進(jìn)行并行計(jì)算,多路獲得計(jì)算結(jié)果之后,還包括: 將所述多路獲得的所述計(jì)算結(jié)果,分別保存在對(duì)應(yīng)的列表中,所述一路計(jì)算結(jié)果對(duì)應(yīng)一個(gè)列表。
      9.根據(jù)權(quán)利要求8所述的方法,其特征在于,在所述將所述多路獲得的所述計(jì)算結(jié)果,分別保存在對(duì)應(yīng)的列表中之后,還包括: 將保存在列表中的所述計(jì)算結(jié)果存儲(chǔ)在分布式數(shù)據(jù)庫(kù)中,并對(duì)保存在列表中的所述計(jì)算結(jié)果中的關(guān)鍵維度組合保存在內(nèi)存中,所述關(guān)鍵維度組合包括用戶(hù)經(jīng)常查詢(xún)的維度組合或者用戶(hù)預(yù)設(shè)時(shí)間段內(nèi)使用的維度組合。
      10.根據(jù)權(quán)利要求9所述的方法,其特征在于,在所述將保存在列表中的所述計(jì)算結(jié)果存儲(chǔ)在分布式數(shù)據(jù)庫(kù)中,并對(duì)保存在列表中的所述計(jì)算結(jié)果中的關(guān)鍵維度組合保存在內(nèi)存中之后,還包括: 根據(jù)用戶(hù)發(fā)送的數(shù)據(jù)查詢(xún)請(qǐng)求,判斷所述分布式數(shù)據(jù)庫(kù)或者內(nèi)存中是否保存有待查詢(xún)維度組合對(duì)應(yīng)的維度組合數(shù)據(jù),所述數(shù)據(jù)查詢(xún)請(qǐng)求中包括所述待查詢(xún)維度組合; 當(dāng)所述分布式數(shù)據(jù)庫(kù)或者內(nèi)存中保存有所述待查詢(xún)維度組合對(duì)應(yīng)的所述維度組合數(shù)據(jù)時(shí),則將所述數(shù)據(jù)查詢(xún)請(qǐng)求發(fā)送給所述分布式數(shù)據(jù)庫(kù)或者內(nèi)存,并接收所述分布式數(shù)據(jù)庫(kù)或者內(nèi)存發(fā)送的所述維度組合數(shù)據(jù); 當(dāng)所述分布式數(shù)據(jù)庫(kù)或者內(nèi)存中未保存所述待查詢(xún)維度組合對(duì)應(yīng)的所述維度組合數(shù)據(jù)時(shí),則合并預(yù)設(shè)時(shí)間段內(nèi)的至少一個(gè)用戶(hù)發(fā)送的數(shù)據(jù)查詢(xún)請(qǐng)求,并根據(jù)所述固化維度組合以及所述最優(yōu)固化維度組合的運(yùn)算路徑,批量啟動(dòng)維度組合計(jì)算的計(jì)算任務(wù),批量執(zhí)行所述維度組合計(jì)算的計(jì)算任務(wù),獲得計(jì)算結(jié)果。
      11.一種多維度拆分的計(jì)算系統(tǒng),其特征在于,包括:運(yùn)算決策模塊,運(yùn)算控制模塊,維度組合生成模塊; 所述運(yùn)算決策模塊,用于根據(jù)預(yù)處理后的海量預(yù)處理數(shù)據(jù),生成遞推拓?fù)?,所述遞推拓?fù)溆删S度組合以及各維度組合之間的遞推路徑構(gòu)成,所述維度組合由各維度的屬性名稱(chēng)以及與所述屬性名稱(chēng)對(duì)應(yīng)的所述海量預(yù)處理數(shù)據(jù)中的數(shù)據(jù)構(gòu)成; 所述運(yùn)算決策模塊,還用于根據(jù)預(yù)設(shè)固化策略,確定固化維度組合并確定構(gòu)成最優(yōu)固化維度組合的運(yùn)算路徑; 運(yùn)算控制模塊,用于根據(jù)所述遞推拓?fù)?,生成?jì)算任務(wù); 所述運(yùn)算控制模塊,還用于根據(jù)所述固化維度組合以及所述最優(yōu)固化維度組合的運(yùn)算路徑,啟動(dòng)計(jì)算任務(wù); 維度組合生成模塊,用于計(jì)算所述計(jì)算任務(wù),獲得計(jì)算結(jié)果。
      12.根據(jù)權(quán)利要求11所述的系統(tǒng),其特征在于,所述系統(tǒng),還包括: 流水預(yù)處理模塊,用于接收海量待處理數(shù)據(jù);以及,對(duì)所述海量待處理數(shù)據(jù)進(jìn)行流水預(yù)處理,獲得海量預(yù)處理數(shù)據(jù),所述海量預(yù)處理數(shù)據(jù)為表示不同屬性的數(shù)據(jù)。
      13.根據(jù)權(quán)利要求12所述的系統(tǒng),其特征在于,所述流水預(yù)處理模塊,包括: 選擇預(yù)處理規(guī)則子模塊,用于根據(jù)所述海量待處理數(shù)據(jù)以及預(yù)設(shè)選擇預(yù)處理規(guī)則,確定與所述海量待處理數(shù)據(jù)對(duì)應(yīng)的預(yù)處理規(guī)則; 清洗子模塊,用于根據(jù)所述預(yù)處理規(guī)則,對(duì)所述海量待處理數(shù)據(jù)進(jìn)行清洗處理,獲得第一處理數(shù)據(jù); 抽取子模塊,用于根據(jù)預(yù)設(shè)抽取字段規(guī)則,在所述第一處理數(shù)據(jù)中抽取多維度拆分所需的至少一個(gè)字段或者至少一個(gè)字段組合; 存儲(chǔ)模塊,用于根據(jù)抽取的所述至少一個(gè)字段或者至少一個(gè)字段組合生成寬表,并將所述至少一個(gè)字段或者至少一個(gè)字段組合保存在所述寬表中; 壓縮模塊,用于將所述寬表中保存的所述至少一個(gè)字段或者至少一個(gè)字段組合進(jìn)行壓縮,獲得所述海量預(yù)處理數(shù)據(jù)。
      14.根據(jù)權(quán)利要求13所述的系統(tǒng),其特征在于,所述壓縮模塊,用于: 將所述寬表中保存的所述至少一個(gè)字段或者至少一個(gè)字段組合進(jìn)行輕量壓縮,獲得所述海量預(yù)處理數(shù)據(jù)。
      15.根據(jù)權(quán)利要求11-14中任一項(xiàng)所述的系統(tǒng),其特征在于,所述運(yùn)算控制模塊,包括: 獲取子模塊,用于獲取所述固化維度組合; 確定子模塊,用于根據(jù)獲取的所述固化維度組合,確定確定待計(jì)算的固化維度組合; 所述確定子模塊,還用于根據(jù)所述待計(jì)算的固化維度組合,確定第一最優(yōu)固化維度組合的運(yùn)算路徑,所述最優(yōu)固化維度組合的運(yùn)算路徑包括所述第一最優(yōu)固化維度組合的運(yùn)算路徑; 運(yùn)算啟動(dòng)子模塊,用于根據(jù)所述第一最優(yōu)固化維度組合的運(yùn)算路徑啟動(dòng)所述計(jì)算任務(wù)。
      16.根據(jù)權(quán)利要求15所述的系統(tǒng),其特征在于,所述運(yùn)算啟動(dòng)子模塊,包括: 分組單元,用于將所述第一最優(yōu)固化維度組合的運(yùn)算路徑中的所述待計(jì)算的固化維度組合按照路徑遞推關(guān)系進(jìn)行分組,獲得第一分組; 合并單元,用于當(dāng)所述第一分組中存在相同路徑遞推關(guān)系時(shí),合并所述第一分組中具有所述相同路徑遞推關(guān)系的固化維度組合,獲得第二分組; 啟動(dòng)單元,用于按照所述路徑遞推關(guān)系并行啟動(dòng)計(jì)算所述第二分組中的各個(gè)固化維度組合的所述計(jì)算任務(wù),多路獲得所述計(jì)算結(jié)果。
      17.根據(jù)權(quán)利要求16所述的系統(tǒng),其特征在于,所述維度組合生成模塊,用于: 按照啟動(dòng)的所述計(jì)算任務(wù)進(jìn)行并行計(jì)算,多路獲得計(jì)算結(jié)果。
      18.根據(jù)權(quán)利要求17所述的系統(tǒng),其特征在于,所述系統(tǒng),還包括: 存儲(chǔ)模塊,用于將所述多路獲得的所述計(jì)算結(jié)果,分別保存在對(duì)應(yīng)的列表中,所述一路計(jì)算結(jié)果對(duì)應(yīng)一個(gè)列表。
      19.根據(jù)權(quán)利要求18所述的系統(tǒng),其特征在于,所述存儲(chǔ)模塊,還用于: 將保存在列表中的所述計(jì)算結(jié)果存儲(chǔ)在分布式數(shù)據(jù)庫(kù)中,并對(duì)保存在列表中的所述計(jì)算結(jié)果中的關(guān)鍵維度組合保存在內(nèi)存中,所述關(guān)鍵維度組合包括用戶(hù)經(jīng)常查詢(xún)的維度組合或者用戶(hù)預(yù)設(shè)時(shí)間段內(nèi)使用的維度組合。
      20.根據(jù)權(quán)利要求19所述的系統(tǒng),其特征在于, 所述運(yùn)算控制模塊,還用于根據(jù)用戶(hù)發(fā)送的數(shù)據(jù)查詢(xún)請(qǐng)求,判斷所述分布式數(shù)據(jù)庫(kù)或者內(nèi)存中是否保存有待查詢(xún)維度組合對(duì)應(yīng)的維度組合數(shù)據(jù),所述數(shù)據(jù)查詢(xún)請(qǐng)求中包括所述待查詢(xún)維度組合; 所述運(yùn)算控制模塊,還用于當(dāng)所述分布式數(shù)據(jù)庫(kù)或者內(nèi)存中保存有所述待查詢(xún)維度組合對(duì)應(yīng)的所述維度組合數(shù)據(jù)時(shí),則將所述數(shù)據(jù)查詢(xún)請(qǐng)求發(fā)送給所述分布式數(shù)據(jù)庫(kù)或者內(nèi)存,并接收所述分布式數(shù)據(jù)庫(kù)或者內(nèi)存發(fā)送的所述維度組合數(shù)據(jù); 所述運(yùn)算控制模塊,還用于當(dāng)所述分布式數(shù)據(jù)庫(kù)或者內(nèi)存中未保存所述待查詢(xún)維度組合對(duì)應(yīng)的所述維度組合數(shù)據(jù)時(shí),則合并預(yù)設(shè)時(shí)間段內(nèi)的至少一個(gè)用戶(hù)發(fā)送的數(shù)據(jù)查詢(xún)請(qǐng)求,并根據(jù)所述固化維度組合以及所述最優(yōu)固化維度組合的運(yùn)算路徑,批量啟動(dòng)維度組合計(jì)算的計(jì)算任務(wù); 所述維度組合模塊,還用于批量執(zhí)行所述維度組合計(jì)算的計(jì)算任務(wù),獲得計(jì)算結(jié)果。
      【文檔編號(hào)】G06F17/30GK104424251SQ201310381567
      【公開(kāi)日】2015年3月18日 申請(qǐng)日期:2013年8月28日 優(yōu)先權(quán)日:2013年8月28日
      【發(fā)明者】蔡馥晗, 李 浩, 武磊, 曾偉紀(jì) 申請(qǐng)人:騰訊科技(深圳)有限公司
      網(wǎng)友詢(xún)問(wèn)留言 已有0條留言
      • 還沒(méi)有人留言評(píng)論。精彩留言會(huì)獲得點(diǎn)贊!
      1