本申請(qǐng)涉及數(shù)據(jù)庫領(lǐng)域,具體而言,涉及一種多維度數(shù)據(jù)的查詢方法及裝置。
背景技術(shù):
::在聯(lián)機(jī)分析處理(on-lineanalyticalprocessing,簡稱olap)的環(huán)境下,目前常用的查詢引擎有hive、impala等結(jié)構(gòu)化的帶元數(shù)據(jù)的數(shù)據(jù)庫。在這些數(shù)據(jù)庫中,通常,將各類事件的數(shù)據(jù)記錄在各個(gè)事實(shí)數(shù)據(jù)表中。例如,在“教學(xué)管理系統(tǒng)”中,教學(xué)管理數(shù)據(jù)庫包含以下幾個(gè)事實(shí)數(shù)據(jù)表:“教師”表、“課程”表、“成績”表、“學(xué)生”表、“班級(jí)”表和“授課”表等,通過以上事實(shí)數(shù)據(jù)表可管理教學(xué)過程中學(xué)生、教師、課程等信息。再例如,在對(duì)互聯(lián)網(wǎng)的會(huì)話進(jìn)行監(jiān)測時(shí),一般有會(huì)話表(session)、頁面瀏覽表(pageview)、站內(nèi)搜索表(sitesearch)、訂單表(ecommerce)和自定義事件表(event)等多種代表各種業(yè)務(wù)場景的事實(shí)數(shù)據(jù)表,這些數(shù)據(jù)表可通過客戶的會(huì)話標(biāo)識(shí)(sessionid)進(jìn)行關(guān)聯(lián),以形成整個(gè)會(huì)話的所有實(shí)體。當(dāng)用戶需要從多個(gè)角度、跨越多個(gè)事實(shí)數(shù)據(jù)表將數(shù)據(jù)關(guān)聯(lián)以查看指標(biāo)數(shù)據(jù)和維度數(shù)據(jù)時(shí),在相關(guān)技術(shù)中,通常根據(jù)用戶查詢需求專門編寫相應(yīng)代碼,進(jìn)而實(shí)現(xiàn)在數(shù)據(jù)庫中查詢相關(guān)的指標(biāo)數(shù)據(jù)和維度數(shù)據(jù)。由于相關(guān)技術(shù)中缺乏統(tǒng)一將用戶查詢需求迅速轉(zhuǎn)化為查詢語言的技術(shù)方案,導(dǎo)致多維度數(shù)據(jù)查詢的執(zhí)行效率較低。針對(duì)相關(guān)技術(shù)中多維度數(shù)據(jù)查詢的執(zhí)行效率較低的問題,目前尚未提出有效的解決方案。技術(shù)實(shí)現(xiàn)要素:本申請(qǐng)實(shí)施例提供了一種多維度數(shù)據(jù)的查詢方法及裝置,以至少解決相關(guān)技術(shù)中多維度數(shù)據(jù)查詢的執(zhí)行效率較低的技術(shù)問題。根據(jù)本申請(qǐng)實(shí)施例的一個(gè)方面,提供了一種多維度數(shù)據(jù)的查詢方法,包括:獲取查詢條件,其中,查詢條件為用于執(zhí)行多維度數(shù)據(jù)查詢的條件;從多個(gè)事實(shí)數(shù)據(jù)表中獲取滿足查詢條件的表集合;將待分配字段分配給表集合中的相應(yīng)的事實(shí)數(shù)據(jù)表,得到目標(biāo)表集合,其中,待分配字段為從查詢條件中獲取的所需列字段;根據(jù)目標(biāo)表集合中的事實(shí)數(shù)據(jù)表之間的連接關(guān)系生成用于反映數(shù)據(jù)流過程的數(shù)據(jù)結(jié)構(gòu);以及根據(jù)數(shù) 據(jù)結(jié)構(gòu)生成相應(yīng)的數(shù)據(jù)查詢語言并通過數(shù)據(jù)查詢語言執(zhí)行多維度數(shù)據(jù)查詢。進(jìn)一步地,將待分配字段分配給表集合中的相應(yīng)的事實(shí)數(shù)據(jù)表,得到目標(biāo)表集合包括:對(duì)于多個(gè)事實(shí)數(shù)據(jù)表中包含同一維度的多張事實(shí)數(shù)據(jù)表,按照事實(shí)數(shù)據(jù)表的數(shù)據(jù)量由小到大的次序,依次判斷每張事實(shí)數(shù)據(jù)表是否包含于表集合,直到判斷出一張事實(shí)數(shù)據(jù)表包含于表集合;判斷該包含于表集合的事實(shí)數(shù)據(jù)表是否包含待分配字段;如果判斷出該包含于表集合的事實(shí)數(shù)據(jù)表包含待分配字段,則將待分配字段分配給該包含于表集合的事實(shí)數(shù)據(jù)表;以及將該包含于表集合的事實(shí)數(shù)據(jù)表添加至目標(biāo)表集合。進(jìn)一步地,判斷該包含于表集合的事實(shí)數(shù)據(jù)表是否包含待分配字段包括:依次判斷該包含于表集合的事實(shí)數(shù)據(jù)表是否包含待分配字段集合中的待分配字段,其中,待分配字段集合中包含至少一個(gè)待分配字段,在將待分配字段分配給該包含于表集合的事實(shí)數(shù)據(jù)表之后,該方法還包括:將分配給該包含于表集合的事實(shí)數(shù)據(jù)表的待分配字段從待分配字段集合中刪除。進(jìn)一步地,根據(jù)目標(biāo)表集合中的事實(shí)數(shù)據(jù)表之間的連接關(guān)系生成用于反映數(shù)據(jù)流過程的數(shù)據(jù)結(jié)構(gòu)包括:根據(jù)目標(biāo)表集合中的事實(shí)數(shù)據(jù)表和該事實(shí)數(shù)據(jù)表對(duì)應(yīng)的待分配字段確定連接關(guān)系;以及根據(jù)連接關(guān)系生成用于反映數(shù)據(jù)流過程的數(shù)據(jù)結(jié)構(gòu)。進(jìn)一步地,查詢條件包括查詢維度鏈和查詢指標(biāo),查詢維度鏈包括至少一個(gè)查詢維度,至少一個(gè)查詢維度包括第一查詢維度,從多個(gè)事實(shí)數(shù)據(jù)表中獲取滿足查詢條件的表集合包括:判斷第一查詢維度是否僅包含于一個(gè)事實(shí)數(shù)據(jù)表;如果判斷出第一查詢維度僅包含于一個(gè)事實(shí)數(shù)據(jù)表,則將包含第一查詢維度的事實(shí)數(shù)據(jù)表添加至表集合;以及如果判斷出第一查詢維度包含于至少兩個(gè)事實(shí)數(shù)據(jù)表,則獲取至少兩個(gè)事實(shí)數(shù)據(jù)表中數(shù)據(jù)量最小的事實(shí)數(shù)據(jù)表,并將該數(shù)據(jù)量最小的事實(shí)數(shù)據(jù)表添加至表集合。進(jìn)一步地,如果判斷出第一查詢維度僅包含于一個(gè)事實(shí)數(shù)據(jù)表,將包含第一查詢維度的事實(shí)數(shù)據(jù)表添加至表集合包括:檢測包含第一查詢維度的事實(shí)數(shù)據(jù)表是否存在于表集合中;以及如果檢測出包含第一查詢維度的事實(shí)數(shù)據(jù)表不存在于表集合中,則將包含第一查詢維度的事實(shí)數(shù)據(jù)表添加至表集合。進(jìn)一步地,在判斷第一查詢維度是否僅包含于一個(gè)事實(shí)數(shù)據(jù)表之前,該方法還包括:將指標(biāo)表添加至表集合,其中,指標(biāo)表包括查詢指標(biāo)。根據(jù)本申請(qǐng)實(shí)施例的另一方面,還提供了一種多維度數(shù)據(jù)的查詢裝置,包括:第一獲取單元,用于獲取查詢條件,其中,查詢條件為用于執(zhí)行多維度數(shù)據(jù)查詢的條件;第二獲取單元,用于從多個(gè)事實(shí)數(shù)據(jù)表中獲取滿足查詢條件的表集合;分配單元,用于將待分配字段分配給表集合中的相應(yīng)的事實(shí)數(shù)據(jù)表,得到目標(biāo)表集合,其中,待分 配字段為從查詢條件中獲取的所需列字段;生成單元,用于根據(jù)目標(biāo)表集合中的事實(shí)數(shù)據(jù)表之間的連接關(guān)系生成用于反映數(shù)據(jù)流過程的數(shù)據(jù)結(jié)構(gòu);以及執(zhí)行單元,用于根據(jù)數(shù)據(jù)結(jié)構(gòu)生成相應(yīng)的數(shù)據(jù)查詢語言并通過數(shù)據(jù)查詢語言執(zhí)行多維度數(shù)據(jù)查詢。進(jìn)一步地,分配單元包括:第一判斷模塊,用于對(duì)于多個(gè)事實(shí)數(shù)據(jù)表中包含同一維度的多張事實(shí)數(shù)據(jù)表,按照事實(shí)數(shù)據(jù)表的數(shù)據(jù)量由小到大的次序,依次判斷每張事實(shí)數(shù)據(jù)表是否包含于表集合,直到判斷出一張事實(shí)數(shù)據(jù)表包含于表集合;第二判斷模塊,用于判斷該包含于表集合的事實(shí)數(shù)據(jù)表是否包含待分配字段;分配模塊,用于在判斷出該包含于表集合的事實(shí)數(shù)據(jù)表包含待分配字段時(shí),將待分配字段分配給該包含于表集合的事實(shí)數(shù)據(jù)表;以及添加模塊,用于將該包含于表集合的事實(shí)數(shù)據(jù)表添加至目標(biāo)表集合。進(jìn)一步地,第二判斷模塊包括:判斷子模塊,用于依次判斷該包含于表集合的事實(shí)數(shù)據(jù)表是否包含待分配字段集合中的待分配字段,其中,待分配字段集合中包含至少一個(gè)待分配字段,該裝置還包括:刪除單元,用于將分配給該包含于表集合的事實(shí)數(shù)據(jù)表的待分配字段從待分配字段集合中刪除。在本申請(qǐng)實(shí)施例中,通過獲取查詢條件,其中,查詢條件為用于執(zhí)行多維度數(shù)據(jù)查詢的條件;從多個(gè)事實(shí)數(shù)據(jù)表中獲取滿足查詢條件的表集合;將待分配字段分配給表集合中的相應(yīng)的事實(shí)數(shù)據(jù)表,得到目標(biāo)表集合,其中,待分配字段為從查詢條件中獲取的所需列字段;根據(jù)目標(biāo)表集合中的事實(shí)數(shù)據(jù)表之間的連接關(guān)系生成用于反映數(shù)據(jù)流過程的數(shù)據(jù)結(jié)構(gòu);以及根據(jù)數(shù)據(jù)結(jié)構(gòu)生成相應(yīng)的數(shù)據(jù)查詢語言并通過數(shù)據(jù)查詢語言執(zhí)行多維度數(shù)據(jù)查詢,解決了相關(guān)技術(shù)中多維度數(shù)據(jù)查詢的執(zhí)行效率較低的技術(shù)問題,達(dá)到了快速實(shí)現(xiàn)多維度數(shù)據(jù)查詢的技術(shù)效果。附圖說明此處所說明的附圖用來提供對(duì)本申請(qǐng)的進(jìn)一步理解,構(gòu)成本申請(qǐng)的一部分,本申請(qǐng)的示意性實(shí)施例及其說明用于解釋本申請(qǐng),并不構(gòu)成對(duì)本申請(qǐng)的不當(dāng)限定。在附圖中:圖1是根據(jù)本申請(qǐng)實(shí)施例的多維度數(shù)據(jù)的查詢方法的流程圖;以及圖2是根據(jù)本申請(qǐng)實(shí)施例的多維度數(shù)據(jù)的查詢裝置的示意圖。具體實(shí)施方式為了使本
技術(shù)領(lǐng)域:
:的人員更好地理解本申請(qǐng)方案,下面將結(jié)合本申請(qǐng)實(shí)施例中的附圖,對(duì)本申請(qǐng)實(shí)施例中的技術(shù)方案進(jìn)行清楚、完整地描述,顯然,所描述的實(shí)施例 僅僅是本申請(qǐng)一部分的實(shí)施例,而不是全部的實(shí)施例?;诒旧暾?qǐng)中的實(shí)施例,本領(lǐng)域普通技術(shù)人員在沒有做出創(chuàng)造性勞動(dòng)前提下所獲得的所有其他實(shí)施例,都應(yīng)當(dāng)屬于本申請(qǐng)保護(hù)的范圍。需要說明的是,本申請(qǐng)的說明書和權(quán)利要求書及上述附圖中的術(shù)語“第一”、“第二”等是用于區(qū)別類似的對(duì)象,而不必用于描述特定的順序或先后次序。應(yīng)該理解這樣使用的數(shù)據(jù)在適當(dāng)情況下可以互換,以便這里描述的本申請(qǐng)的實(shí)施例能夠以除了在這里圖示或描述的那些以外的順序?qū)嵤4送?,術(shù)語“包括”和“具有”以及他們的任何變形,意圖在于覆蓋不排他的包含,例如,包含了一系列步驟或單元的過程、方法、系統(tǒng)、產(chǎn)品或設(shè)備不必限于清楚地列出的那些步驟或單元,而是可包括沒有清楚地列出的或?qū)τ谶@些過程、方法、產(chǎn)品或設(shè)備固有的其它步驟或單元。下面,首先對(duì)本申請(qǐng)實(shí)施例中涉及的相關(guān)技術(shù)術(shù)語進(jìn)行解釋,以方便對(duì)本申請(qǐng)的理解。指標(biāo)(查詢指標(biāo)):是指可以進(jìn)行聚合運(yùn)算的值,例如,綜合瀏覽量是一個(gè)指標(biāo),使用求和進(jìn)行聚合;平均停留時(shí)間也是一個(gè)指標(biāo),使用平均進(jìn)行聚合,其中,聚合運(yùn)算包括求和、平均、計(jì)數(shù)等。維度(查詢維度):是指查看指標(biāo)的角度,例如,瀏覽器是一個(gè)維度,可以從瀏覽器這個(gè)維度查詢頁面瀏覽(pageview,簡稱為pv),從而可以知道用戶使用哪些瀏覽器查看頁面,以及使用這些瀏覽器查看頁面的次數(shù);操作系統(tǒng)為另一個(gè)維度,也可以從操作系統(tǒng)這個(gè)維度查詢pv,從而可以知道用戶使用哪些操作系統(tǒng)查看頁面,以及使用這些操作系統(tǒng)查看頁面的次數(shù)。多維剖析(多維度數(shù)據(jù)查詢):是指可以從多個(gè)維度剖析多個(gè)指標(biāo)的值,例如,從操作系統(tǒng)維度查看會(huì)話量值后,選擇其中幾個(gè)成員后,繼續(xù)從瀏覽器維度查看會(huì)話值,即從兩個(gè)維度剖析會(huì)話值。依次類推,可以從多個(gè)維度進(jìn)行自由的剖析。其中,成員是指維度具體對(duì)應(yīng)的對(duì)象,例如,瀏覽器是一個(gè)維度,而ie瀏覽器、chrome瀏覽器即為該維度的一個(gè)成員。維度表:維度表可以看作是用戶來分析數(shù)據(jù)的窗口,維度表中包含事實(shí)數(shù)據(jù)表中事實(shí)記錄的特性,有些特性提供描述性信息,有些特性指定如何匯總事實(shí)數(shù)據(jù)表數(shù)據(jù),以便為分析者提供有用的信息,維度表包含幫助匯總數(shù)據(jù)的特性的層次結(jié)構(gòu)。例如,包含產(chǎn)品信息的維度表通常包含將產(chǎn)品分為食品、飲料、非消費(fèi)品等若干類的層次結(jié)構(gòu),這些產(chǎn)品中的每一類進(jìn)一步多次細(xì)分,直到各產(chǎn)品達(dá)到最低級(jí)別。在維度表中,每個(gè)表都包含獨(dú)立于其他維度表的事實(shí)特性,例如,客戶維度表包含有關(guān)客戶的數(shù)據(jù)。 維度表中的列字段可以將信息分為不同層次的結(jié)構(gòu)級(jí)。事實(shí)數(shù)據(jù)表:數(shù)據(jù)倉庫架構(gòu)中的中央表,它包含聯(lián)系事實(shí)與維度表的數(shù)字度量值和鍵。事實(shí)數(shù)據(jù)表包含描述業(yè)務(wù)(如銀行事務(wù)或產(chǎn)品銷售)內(nèi)特定事件的數(shù)據(jù)。一般來說,一個(gè)事實(shí)數(shù)據(jù)表都要和一個(gè)或多個(gè)維度表相關(guān)聯(lián),用戶在利用事實(shí)數(shù)據(jù)表創(chuàng)建多維數(shù)據(jù)集時(shí),可以使用一個(gè)或多個(gè)維度表。關(guān)聯(lián)鍵:是關(guān)系型數(shù)據(jù)庫的重要組成部分,是一個(gè)表中的一個(gè)或者幾個(gè)屬性,用于標(biāo)識(shí)該表的每一行或者與另一個(gè)表產(chǎn)生聯(lián)系。根據(jù)本申請(qǐng)實(shí)施例,提供了一種多維度數(shù)據(jù)的查詢方法的實(shí)施例,需要說明的是,在附圖的流程圖示出的步驟可以在諸如一組計(jì)算機(jī)可執(zhí)行指令的計(jì)算機(jī)系統(tǒng)中執(zhí)行,并且,雖然在流程圖中示出了邏輯順序,但是在某些情況下,可以以不同于此處的順序執(zhí)行所示出或描述的步驟。圖1是根據(jù)本申請(qǐng)實(shí)施例的多維度數(shù)據(jù)的查詢方法的流程圖,如圖1所示,該方法包括如下步驟:步驟s102,獲取查詢條件,其中,查詢條件為用于執(zhí)行多維度數(shù)據(jù)查詢的條件。在該步驟中,查詢條件可以通過讀取用戶輸入的查詢指令獲取,用戶查詢指令為用戶從多個(gè)角度、跨越多個(gè)事實(shí)數(shù)據(jù)表將數(shù)據(jù)關(guān)聯(lián)以查看指標(biāo)數(shù)據(jù)和維度數(shù)據(jù)的指令。具體地,查詢條件可包括查詢維度鏈和查詢指標(biāo)。其中,查詢維度鏈用于對(duì)多個(gè)事實(shí)數(shù)據(jù)表進(jìn)行過濾,其中,查詢維度鏈包括至少一個(gè)查詢維度。例如,查詢維度鏈包括以下各個(gè)維度節(jié)點(diǎn):操作系統(tǒng)版本(window7)>>瀏覽器(chrome)>>是否新訪問者(是)>>頁面查看量(1)>>訪問時(shí)長;查詢指標(biāo)為訪問量。可選地,在獲取查詢條件之前,可配置查詢維度和查詢指標(biāo)的元數(shù)據(jù)信息,確定查詢維度和查詢指標(biāo)的相關(guān)屬性。例如,可通過以下方式進(jìn)行查詢維度的配置:"dimensions":[{"name":"sourcetype",//名稱,類型"column":"sourcetype",//列,類型"tables":["session","pageview","ecommerce","sitesearch","mouseclick","event"]},//表:會(huì)話表,頁面游覽表,訂單表,網(wǎng)站搜索表,點(diǎn)擊表,自定義事件表{"name":"channelname",//名稱,來源渠道名稱"column":"channelname",//列"tables":["session","pageview","ecommerce","sitesearch","mouseclick","event"]}//表:會(huì)話表,頁面游覽表,訂單表,網(wǎng)站搜索表,點(diǎn)擊表,自定義事件表]可以通過以下方式進(jìn)行查詢指標(biāo)的配置:"measures":[{"name":"visits",//名稱,訪問量"table":"session",//表,會(huì)話表"column":null,"aggregatetype":"count"},{"name":"bouncesvisits",//名稱,訪問量"table":"session",//表,會(huì)話表"column":"isbouce",//列,isbouce列"aggregatetype":"sum"}]步驟s104,從多個(gè)事實(shí)數(shù)據(jù)表中獲取滿足查詢條件的表集合。由于一個(gè)維度可能在多個(gè)表上出現(xiàn),且表示同樣的過濾意義,因此在進(jìn)行多維度數(shù)據(jù)查詢時(shí),判斷選取哪些事實(shí)數(shù)據(jù)表參與計(jì)算顯得尤為重要。其中,選取的參與計(jì) 算的事實(shí)數(shù)據(jù)表的數(shù)據(jù)量越小、事實(shí)數(shù)據(jù)表的個(gè)數(shù)越少,查詢效率就越高,內(nèi)存開銷也越少,更有利于優(yōu)化整個(gè)系統(tǒng)的查詢性能。例如,多個(gè)事實(shí)數(shù)據(jù)表為多個(gè)銷售數(shù)據(jù)表,多個(gè)銷售數(shù)據(jù)表包括北方地區(qū)銷售數(shù)據(jù)表、南方地區(qū)銷售數(shù)據(jù)表、以及各個(gè)省份的銷售數(shù)據(jù)表。其中,在查詢維度為河北省(比如指標(biāo)為年平均銷售量)時(shí),在北方地區(qū)銷售數(shù)據(jù)表和河北省銷售數(shù)據(jù)表中均存在該維度。因此,在選擇參與計(jì)算(查詢)的事實(shí)數(shù)據(jù)表時(shí),由于河北省銷售數(shù)據(jù)表的數(shù)據(jù)量小于北方地區(qū)銷售數(shù)據(jù)表的數(shù)據(jù)量,因此優(yōu)先選擇河北省銷售數(shù)據(jù)表執(zhí)行數(shù)據(jù)查詢,以減少不必要的計(jì)算開銷,提高查詢效率。同樣地,數(shù)據(jù)表的個(gè)數(shù)越少也越有利于提高查詢的效率。在該步驟中,滿足查詢條件的表集合優(yōu)選的為最少表集合。最少表集合為多個(gè)事實(shí)數(shù)據(jù)表中至少包含一個(gè)查詢維度和一個(gè)查詢指標(biāo)的、數(shù)量最少的事實(shí)數(shù)據(jù)表的集合。最少表集合中的每個(gè)事實(shí)數(shù)據(jù)表可以包括查詢維度鏈上的多個(gè)查詢維度。獲取到最少表集合即獲取到后續(xù)查詢數(shù)據(jù)的元數(shù)據(jù)信息。為了提高獲取最少表集合的效率,可選地,查詢條件包括查詢維度鏈和查詢指標(biāo),查詢維度鏈包括至少一個(gè)查詢維度,至少一個(gè)查詢維度包括第一查詢維度,從多個(gè)事實(shí)數(shù)據(jù)表中獲取滿足查詢條件的表集合包括:判斷第一查詢維度是否僅包含于一個(gè)事實(shí)數(shù)據(jù)表;如果判斷出第一查詢維度僅包含于一個(gè)事實(shí)數(shù)據(jù)表,則將包含第一查詢維度的事實(shí)數(shù)據(jù)表添加至表集合;以及如果判斷出第一查詢維度包含于至少兩個(gè)事實(shí)數(shù)據(jù)表,則獲取至少兩個(gè)事實(shí)數(shù)據(jù)表中數(shù)據(jù)量最小的事實(shí)數(shù)據(jù)表,并將該數(shù)據(jù)量最小的事實(shí)數(shù)據(jù)表添加至表集合。該表集合即得到的最少表集合。為了保證最少表集合中保存需要參與計(jì)算的數(shù)量盡可能少的事實(shí)數(shù)據(jù)表,以提高后續(xù)的查詢效率,可選地,如果判斷出第一查詢維度僅包含于一個(gè)事實(shí)數(shù)據(jù)表,將包含第一查詢維度的事實(shí)數(shù)據(jù)表添加至表集合包括:檢測包含第一查詢維度的事實(shí)數(shù)據(jù)表是否存在于表集合中;以及如果檢測出包含第一查詢維度的事實(shí)數(shù)據(jù)表不存在于表集合中,則將包含第一查詢維度的事實(shí)數(shù)據(jù)表添加至表集合。為了提高后續(xù)多維度數(shù)據(jù)的查詢效率,可選地,如果檢測出包含第一查詢維度的事實(shí)數(shù)據(jù)表存在于上述表集合,該方法還包括:不對(duì)該表集合執(zhí)行事實(shí)數(shù)據(jù)表的添加處理。為了保證得到的最少表集合中保存需要參與計(jì)算的數(shù)量盡可能少、并且數(shù)據(jù)量盡可能小的事實(shí)數(shù)據(jù)表,以提高后續(xù)的查詢效率,可選地,如果判斷出第一查詢維度包含于至少兩個(gè)事實(shí)數(shù)據(jù)表,獲取至少兩個(gè)事實(shí)數(shù)據(jù)表中數(shù)據(jù)量最小的事實(shí)數(shù)據(jù)表,并 將該數(shù)據(jù)量最小的事實(shí)數(shù)據(jù)表添加至表集合包括:判斷至少兩個(gè)事實(shí)數(shù)據(jù)表中是否存在包含于表集合的事實(shí)數(shù)據(jù)表;如果判斷出至少兩個(gè)事實(shí)數(shù)據(jù)表中不存在包含于表集合的事實(shí)數(shù)據(jù)表,則獲取至少兩個(gè)事實(shí)數(shù)據(jù)表中數(shù)據(jù)量最小的事實(shí)數(shù)據(jù)表,并將該數(shù)據(jù)量最小的事實(shí)數(shù)據(jù)表添加至表集合。為了提高后續(xù)多維度數(shù)據(jù)的查詢效率,可選地,如果判斷出至少兩個(gè)事實(shí)數(shù)據(jù)表中存在包含于表集合的事實(shí)數(shù)據(jù)表,該方法還包括:不對(duì)表集合執(zhí)行事實(shí)數(shù)據(jù)表的添加處理??蛇x地,在判斷第一查詢維度是否僅包含于一個(gè)事實(shí)數(shù)據(jù)表之前,該方法還包括:將指標(biāo)表添加至表集合,其中,指標(biāo)表包括查詢指標(biāo)。步驟s106,將待分配字段分配給表集合中的相應(yīng)的事實(shí)數(shù)據(jù)表,得到目標(biāo)表集合,其中,待分配字段為從查詢條件中獲取的所需列字段。為了提高多維度數(shù)據(jù)查詢的執(zhí)行效率,可選地,將待分配字段分配給表集合中的相應(yīng)的事實(shí)數(shù)據(jù)表,得到目標(biāo)表集合包括:對(duì)于多個(gè)事實(shí)數(shù)據(jù)表中包含同一維度的多張事實(shí)數(shù)據(jù)表,按照事實(shí)數(shù)據(jù)表的數(shù)據(jù)量由小到大的次序,依次判斷每張事實(shí)數(shù)據(jù)表是否包含于表集合,直到判斷出一張事實(shí)數(shù)據(jù)表包含于表集合;判斷該包含于表集合的事實(shí)數(shù)據(jù)表是否包含待分配字段;如果判斷出該包含于表集合的事實(shí)數(shù)據(jù)表包含待分配字段,則將待分配字段分配給該包含于表集合的事實(shí)數(shù)據(jù)表;以及將該包含于表集合的事實(shí)數(shù)據(jù)表添加至目標(biāo)表集合。其中,待分配字段為從查詢條件中獲取的所需列字段。其中,某些待分配字段可能僅存在于一張表中,也可能存在于多張表中。例如,待分配字段為select、groupby、where、orderby、having等。通常情況下,在進(jìn)行多維度剖析時(shí),一個(gè)維度有可能存在于多張表。例如,在進(jìn)行多維度數(shù)據(jù)查詢之前,瀏覽器browser維度存在于多張表上:{"name":"browser","column":"browser","tables":["session","pageview","ecommerce","sitesearch","mouseclick","event"]}其中,瀏覽器維度存在于會(huì)話表、pv表等多張表。同時(shí),根據(jù)事實(shí)數(shù)據(jù)表存儲(chǔ)的數(shù)據(jù)量的大小不同,可以對(duì)不同的事實(shí)數(shù)據(jù)表建立大表和小表的配置。例如:/*allthesmalltableswillbejointogether,thetablesizeintheleftissmallerthantherightones*/;所有的小表將被連接在一起,小表在左,大表在右;"smalltables":["sitesearchclick","sitesearch","ecommerce","product","mouseclick","event"];/*allthelargetableswon'tbejointogher,,thetablesizeintheleftissmallerthantherightones;不將所有的大表連接在一起,小表在左,大表在右;willjointhesmalltablesfirst,andthenjointhelargetablesonebyoneacorrdingtothetablesize,先連接小表,再按照表的大小順序逐一連接大表;leftone(smallerone)willbejoinearliar小表首先被連接*/"largetables":["session","pageview"]需要說明的是,本申請(qǐng)不對(duì)配置大表和小表的方法進(jìn)行具體的限制。例如,也可以采用數(shù)組的方式,在數(shù)組中事實(shí)數(shù)據(jù)表按照數(shù)據(jù)量由小到大的次序排列。具體地,對(duì)于包含同一維度的多張事實(shí)數(shù)據(jù)表,首先確定各個(gè)事實(shí)數(shù)據(jù)表的數(shù)據(jù)量,按照數(shù)據(jù)量由小到大的次序?qū)Ω鱾€(gè)事實(shí)數(shù)據(jù)表進(jìn)行排列。從小表開始,判斷該表是否存在于表集合中,如果判斷出該表存在于表集合中,則不再對(duì)該維度對(duì)應(yīng)的其他事實(shí)數(shù)據(jù)表進(jìn)行判斷。如果判斷出該表不存在于表集合中,則按照數(shù)據(jù)量由小到大的次序依次判斷其他表是否存在于表集合中,直到判斷出有一個(gè)表存在于表集合為止。另外,將待分配字段分配給判斷出的存在于表集合中的表,并對(duì)此進(jìn)行記錄,以及將該包含于表集合的表添加至目標(biāo)表集合。這樣,對(duì)于每一維度,都將得到其對(duì)應(yīng)的數(shù)據(jù)量最小的表,進(jìn)行在后續(xù)的多維度數(shù)據(jù)查詢中將極大地提升性能??蛇x地,判斷該包含于表集合的事實(shí)數(shù)據(jù)表是否包含待分配字段包括:依次判斷該包含于表集合的事實(shí)數(shù)據(jù)表是否包含待分配字段集合中的待分配字段,其中,待分配字段集合中包含至少一個(gè)待分配字段,在將待分配字段分配給該包含于表集合的事實(shí)數(shù)據(jù)表之后,該方法還包括:將分配給該包含于表集合的事實(shí)數(shù)據(jù)表的待分配字段從待分配字段集合中刪除。在該實(shí)施例中,待分配字段集合中包括至少一個(gè)待分配字段,在對(duì)每個(gè)事實(shí)數(shù)據(jù)表執(zhí)行判斷時(shí),需要依次遍歷各個(gè)待分配字段,以判斷各個(gè)待分配字段是否包含于待判斷的事實(shí)數(shù)據(jù)表中。將判斷結(jié)果為包含的待分配字段分配給該事實(shí)數(shù)據(jù)表,其中, 該待分配字段可以是多個(gè)。在針對(duì)一個(gè)事實(shí)數(shù)據(jù)表判斷結(jié)束后,將分配給該事實(shí)數(shù)據(jù)表的待分配字段從待分配字段集合中刪除,也即在對(duì)下一個(gè)維度對(duì)應(yīng)的事實(shí)數(shù)據(jù)表執(zhí)行判斷時(shí),不需要再對(duì)該待分配字段進(jìn)行判斷。通過該方法,可以有效地將每個(gè)待分配字段分配至表集合中數(shù)據(jù)量最小的事實(shí)數(shù)據(jù)表,從而能夠極大地提升多維度數(shù)據(jù)查詢的性能。可選地,根據(jù)目標(biāo)表集合中的事實(shí)數(shù)據(jù)表之間的連接關(guān)系生成用于反映數(shù)據(jù)流過程的數(shù)據(jù)結(jié)構(gòu)包括:根據(jù)目標(biāo)表集合中的事實(shí)數(shù)據(jù)表和該事實(shí)數(shù)據(jù)表對(duì)應(yīng)的待分配字段確定連接關(guān)系;以及根據(jù)連接關(guān)系生成用于反映數(shù)據(jù)流過程的數(shù)據(jù)結(jié)構(gòu)。其中,待分配字段為從查詢條件中獲取的所需列字段。例如,待分配字段為select、groupby、where、orderby、having等。步驟s108,根據(jù)目標(biāo)表集合中的事實(shí)數(shù)據(jù)表之間的連接關(guān)系生成用于反映數(shù)據(jù)流過程的數(shù)據(jù)結(jié)構(gòu)。在該步驟中,用于反映數(shù)據(jù)流過程的數(shù)據(jù)結(jié)構(gòu)可以理解為一種解析樹的數(shù)據(jù)結(jié)構(gòu)。該解析樹是由查詢條件和連接關(guān)系生成并用于反應(yīng)數(shù)據(jù)流的過程的數(shù)據(jù)結(jié)構(gòu)。該結(jié)構(gòu)記錄了生成結(jié)構(gòu)化查詢語言所需要的所有條件和樣式,根據(jù)查詢需求的維度鏈,剖析維度和指標(biāo)(即上述的查詢條件),計(jì)算出所需要的表結(jié)點(diǎn)以及過濾信息,并將所有表結(jié)點(diǎn)通過相關(guān)的關(guān)聯(lián)關(guān)系連接起來。其中,解析樹中的每一個(gè)節(jié)點(diǎn),相當(dāng)于定義了一個(gè)臨時(shí)表數(shù)據(jù)結(jié)構(gòu)。整個(gè)解析樹反映了如何從原始的數(shù)據(jù)表中通過相應(yīng)的過濾、選取、變化,逐步得到最終結(jié)果的過程,解析樹中記錄了所有的數(shù)據(jù)表結(jié)點(diǎn)??蛇x地,根據(jù)目標(biāo)表集合中的事實(shí)數(shù)據(jù)表之間的連接關(guān)系生成用于反映數(shù)據(jù)流過程的數(shù)據(jù)結(jié)構(gòu)包括:確定目標(biāo)表集合中各個(gè)事實(shí)數(shù)據(jù)表之間連接的順序關(guān)系;按照預(yù)設(shè)條件調(diào)整各個(gè)事實(shí)數(shù)據(jù)表之間連接的順序關(guān)系;以及根據(jù)調(diào)整后的各個(gè)事實(shí)數(shù)據(jù)表之間連接的順序關(guān)系生成用于反映數(shù)據(jù)流過程的數(shù)據(jù)結(jié)構(gòu)。具體地,針對(duì)查詢維度鏈計(jì)算出的所有表節(jié)點(diǎn)(目標(biāo)表集合中的各個(gè)事實(shí)數(shù)據(jù)表),需要進(jìn)行表連接,而表連接順序的設(shè)定對(duì)整個(gè)查詢系統(tǒng)的性能的影響較大。在本申請(qǐng)中,不對(duì)各個(gè)事實(shí)數(shù)據(jù)表之間連接的順序關(guān)系進(jìn)行具體的限定。由于各引擎的查詢的實(shí)現(xiàn)方式不同,因此可以采用不同的表連接順序。例如,可以采用大表連小表的策略(數(shù)據(jù)量大的表連接數(shù)據(jù)量小的表),該方法的性能通常優(yōu)于小表連大表的性能。可選地,在從多個(gè)事實(shí)數(shù)據(jù)表中獲取滿足查詢條件的表集合之后,在根據(jù)目標(biāo)表集合中的事實(shí)數(shù)據(jù)表之間的連接關(guān)系生成用于反映數(shù)據(jù)流過程的數(shù)據(jù)結(jié)構(gòu)之前,該方法還包括:獲取目標(biāo)表集合中各事實(shí)數(shù)據(jù)表對(duì)應(yīng)的連接鍵值;以及根據(jù)連接鍵值將目 標(biāo)表集合中的各個(gè)事實(shí)數(shù)據(jù)表進(jìn)行連接。具體地,事實(shí)數(shù)據(jù)表之間通常采用關(guān)聯(lián)鍵進(jìn)行關(guān)聯(lián)。采用關(guān)聯(lián)鍵將目標(biāo)表集合中的各個(gè)事實(shí)數(shù)據(jù)表進(jìn)行關(guān)聯(lián)。例如,關(guān)聯(lián)鍵為會(huì)話標(biāo)識(shí)(sessionid)。目標(biāo)表集合中的各事實(shí)數(shù)據(jù)表對(duì)應(yīng)的連接鍵值為相應(yīng)的id等共有維度字段,基于id等共有維度字段將目標(biāo)表集合中的各個(gè)事實(shí)數(shù)據(jù)表進(jìn)行連接。對(duì)于數(shù)據(jù)倉庫,各事實(shí)數(shù)據(jù)表都可能有相應(yīng)的關(guān)系,并且通過相應(yīng)的id等共有維度字段會(huì)進(jìn)行關(guān)聯(lián)。優(yōu)選地,可以將上述的多個(gè)事實(shí)數(shù)據(jù)表處理為展平的事實(shí)數(shù)據(jù)表。例如,會(huì)話等字段會(huì)派生到其子實(shí)體,如頁面瀏覽,電商訂單等事實(shí)數(shù)據(jù)表上,這樣在僅剖析會(huì)話類的維度時(shí),如瀏覽器等,就不需要進(jìn)行會(huì)話表的關(guān)聯(lián),從而達(dá)到性能提升的目的。步驟s110,根據(jù)數(shù)據(jù)結(jié)構(gòu)生成相應(yīng)的數(shù)據(jù)查詢語言并通過數(shù)據(jù)查詢語言執(zhí)行多維度數(shù)據(jù)查詢。上述的數(shù)據(jù)查詢語言可以為結(jié)構(gòu)化查詢語言(structuredquerylanguage,簡稱sql)。例如,查詢維度鏈為:isbounce=0andpageduration>10andsessionpageviews>10;剖析維度為:osbrief;查詢指標(biāo)為:visits,avgsessionduration,sessionpageviews。獲取到與查詢維度鏈、剖析維度和查詢指標(biāo)相關(guān)聯(lián)的表集合,對(duì)表集合中的事實(shí)數(shù)據(jù)表進(jìn)行相應(yīng)字段的分配,得到目標(biāo)表集合,根據(jù)目標(biāo)表集合中各個(gè)事實(shí)數(shù)據(jù)表的連接關(guān)系生成用于反映數(shù)據(jù)流過程的數(shù)據(jù)結(jié)構(gòu)(解析樹),根據(jù)該數(shù)據(jù)結(jié)構(gòu)可生成相應(yīng)的數(shù)據(jù)查詢語言,如下所示:withsas(selectserversessionid,osbrief,pvcount,sessiondurationfromsessionwhereisbounce=0andpvcount>10)pvas(selectserversessionidfrompageviewgroupbyserversessionidhavingmax(pageduration)>10)selectosbrief,sum(pvcount)assessionpageviews,count(*)asvisits,avg(sessionduration)asavgsessiondurationfromsinnerjoinpvons.serversessionid=pv.serversessionidgroupbyosbrieforderbycount(*)desclimit10通過上述生成的數(shù)據(jù)查詢語言執(zhí)行可實(shí)現(xiàn)相應(yīng)的多維度數(shù)據(jù)查詢。又例如,查詢維度鏈為:isbounce=0andpageduration>10andsessionpageview>10;剖析維度:osbrief;查詢指標(biāo)為:visits,avgsessionduratuon,sessionpageviews。獲取到與查詢維度鏈、剖析維度和查詢指標(biāo)相關(guān)聯(lián)的表集合,對(duì)表集合中的事實(shí)數(shù)據(jù)表進(jìn)行相應(yīng)字段的分配,得到目標(biāo)表集合,根據(jù)目標(biāo)表集合中各個(gè)事實(shí)數(shù)據(jù)表的連接關(guān)系生成用于反映數(shù)據(jù)流過程的數(shù)據(jù)結(jié)構(gòu)(解析樹),根據(jù)該數(shù)據(jù)結(jié)構(gòu)可生成相應(yīng)的數(shù)據(jù)查詢語言,如下所示:pv_jion_session(selectcolumns:osbrief,measuresgroupby:osbrieforderby:visitsdescpaging:1,10)通過上述生成的數(shù)據(jù)查詢語言可實(shí)現(xiàn)相應(yīng)的多維度數(shù)據(jù)查詢。本申請(qǐng)通過查詢條件獲取參與多維度數(shù)據(jù)查詢的數(shù)據(jù)量最小的表集合(目標(biāo)表集合),避免了大數(shù)據(jù)量的事實(shí)數(shù)據(jù)表參與計(jì)算造成的查詢開銷大、查詢效率低下的問題,進(jìn)而通過對(duì)目標(biāo)表集合中的事實(shí)數(shù)據(jù)表進(jìn)行連接,很大程度上減小了查詢的開銷,可以實(shí)現(xiàn)對(duì)多維度數(shù)據(jù)的快速查詢。在該實(shí)施例中,獲取查詢條件,其中,查詢條件為用于執(zhí)行多維度數(shù)據(jù)查詢的條件;從多個(gè)事實(shí)數(shù)據(jù)表中獲取滿足查詢條件的表集合;將待分配字段分配給表集合中的相應(yīng)的事實(shí)數(shù)據(jù)表,得到目標(biāo)表集合,其中,待分配字段為從查詢條件中獲取的所需列字段;根據(jù)目標(biāo)表集合中的事實(shí)數(shù)據(jù)表之間的連接關(guān)系生成用于反映數(shù)據(jù)流過程的數(shù)據(jù)結(jié)構(gòu);以及根據(jù)數(shù)據(jù)結(jié)構(gòu)生成相應(yīng)的數(shù)據(jù)查詢語言并通過數(shù)據(jù)查詢語言執(zhí)行多維度數(shù)據(jù)查詢,解決了相關(guān)技術(shù)中多維度數(shù)據(jù)查詢的執(zhí)行效率較低的技術(shù)問題,達(dá)到了快速執(zhí)行多維度數(shù)據(jù)查詢的技術(shù)效果。下面,根據(jù)本申請(qǐng)實(shí)施例提供了一種多維度數(shù)據(jù)的查詢裝置。需要說明的是,根據(jù)本申請(qǐng)實(shí)施例的多維度數(shù)據(jù)的查詢裝置可以用于執(zhí)行根據(jù)本申請(qǐng)實(shí)施例的多維度數(shù)據(jù)的查詢方法,根據(jù)本申請(qǐng)實(shí)施例的多維度數(shù)據(jù)的查詢方法也可以通過根據(jù)本申請(qǐng)實(shí)施例的多維度數(shù)據(jù)的查詢裝置來執(zhí)行。圖2是根據(jù)本申請(qǐng)實(shí)施例的多維度數(shù)據(jù)的查詢裝置的示意圖,如圖2所示,該裝置包括:第一獲取單元20、第二獲取單元22、分配單元24、生成單元26和執(zhí)行單元28。第一獲取單元20,用于獲取查詢條件,其中,查詢條件為用于執(zhí)行多維度數(shù)據(jù)查詢的條件。第二獲取單元22,用于從多個(gè)事實(shí)數(shù)據(jù)表中獲取滿足查詢條件的表集合。分配單元24,用于將待分配字段分配給表集合中的相應(yīng)的事實(shí)數(shù)據(jù)表,得到目標(biāo)表集合,其中,待分配字段為從查詢條件中獲取的所需列字段。生成單元26,用于根據(jù)目標(biāo)表集合中的事實(shí)數(shù)據(jù)表之間的連接關(guān)系生成用于反映數(shù)據(jù)流過程的數(shù)據(jù)結(jié)構(gòu)。執(zhí)行單元28,用于根據(jù)數(shù)據(jù)結(jié)構(gòu)生成相應(yīng)的數(shù)據(jù)查詢語言并通過數(shù)據(jù)查詢語言執(zhí)行多維度數(shù)據(jù)查詢??蛇x地,分配單元24包括:第一判斷模塊,用于對(duì)于多個(gè)事實(shí)數(shù)據(jù)表中包含同一維度的多張事實(shí)數(shù)據(jù)表,按照事實(shí)數(shù)據(jù)表的數(shù)據(jù)量由小到大的次序,依次判斷每張事實(shí)數(shù)據(jù)表是否包含于表集合,直到判斷出一張事實(shí)數(shù)據(jù)表包含于表集合;第二判斷模塊,用于判斷該包含于表集合的事實(shí)數(shù)據(jù)表是否包含待分配字段;分配模塊,用于在判斷出該包含于表集合的事實(shí)數(shù)據(jù)表包含待分配字段時(shí),將待分配字段分配給該包含于表集合的事實(shí)數(shù)據(jù)表;以及添加模塊,用于將該包含于表集合的事實(shí)數(shù)據(jù)表添加至目標(biāo)表集合??蛇x地,第二判斷模塊包括:判斷子模塊,用于依次判斷該包含于表集合的事實(shí)數(shù)據(jù)表是否包含待分配字段集合中的待分配字段,其中,待分配字段集合中包含至少一個(gè)待分配字段,該裝置還包括:刪除單元,用于將分配給該包含于表集合的事實(shí)數(shù)據(jù)表的待分配字段從待分配字段集合中刪除。在該實(shí)施例中,通過第一獲取單元20獲取查詢條件,其中,查詢條件為用于執(zhí)行多維度數(shù)據(jù)查詢的條件;第二獲取單元22從多個(gè)事實(shí)數(shù)據(jù)表中獲取滿足查詢條件的表集合;分配單元24將待分配字段分配給表集合中的相應(yīng)的事實(shí)數(shù)據(jù)表,得到目標(biāo)表集合,其中,待分配字段為從查詢條件中獲取的所需列字段;生成單元26根據(jù)目標(biāo)表集合中的事實(shí)數(shù)據(jù)表之間的連接關(guān)系生成用于反映數(shù)據(jù)流過程的數(shù)據(jù)結(jié)構(gòu);以及執(zhí)行單元28根據(jù)數(shù)據(jù)結(jié)構(gòu)生成相應(yīng)的數(shù)據(jù)查詢語言并通過數(shù)據(jù)查詢語言執(zhí)行多維度數(shù)據(jù)查詢,解決了相關(guān)技術(shù)中多維度數(shù)據(jù)查詢的執(zhí)行效率較低的技術(shù)問題,達(dá)到了快速執(zhí)行多維度數(shù)據(jù)查詢的技術(shù)效果。所述多維度數(shù)據(jù)的查詢裝置包括處理器和存儲(chǔ)器,上述第一獲取單元20、第二獲取單元22、分配單元24、生成單元26和執(zhí)行單元28等均作為程序單元存儲(chǔ)在存儲(chǔ)器中,由處理器執(zhí)行存儲(chǔ)在存儲(chǔ)器中的上述程序單元。處理器中包含內(nèi)核,由內(nèi)核去存儲(chǔ)器中調(diào)取相應(yīng)的程序單元。內(nèi)核可以設(shè)置一個(gè)或以上,通過調(diào)整內(nèi)核參數(shù)查詢多維度數(shù)據(jù)。存儲(chǔ)器可能包括計(jì)算機(jī)可讀介質(zhì)中的非永久性存儲(chǔ)器,隨機(jī)存取存儲(chǔ)器(ram)和/或非易失性內(nèi)存等形式,如只讀存儲(chǔ)器(rom)或閃存(flashram),存儲(chǔ)器包括至少一個(gè)存儲(chǔ)芯片。本申請(qǐng)還提供了一種計(jì)算機(jī)程序產(chǎn)品的實(shí)施例,當(dāng)在數(shù)據(jù)處理設(shè)備上執(zhí)行時(shí),適于執(zhí)行初始化有如下方法步驟的程序代碼:獲取查詢條件,其中,查詢條件為用于執(zhí)行多維度數(shù)據(jù)查詢的條件;從多個(gè)事實(shí)數(shù)據(jù)表中獲取滿足查詢條件的表集合;將待分配字段分配給表集合中的相應(yīng)的事實(shí)數(shù)據(jù)表,得到目標(biāo)表集合,其中,待分配字段為從查詢條件中獲取的所需列字段;根據(jù)目標(biāo)表集合中的事實(shí)數(shù)據(jù)表之間的連接關(guān)系生成用于反映數(shù)據(jù)流過程的數(shù)據(jù)結(jié)構(gòu);以及根據(jù)數(shù)據(jù)結(jié)構(gòu)生成相應(yīng)的數(shù)據(jù)查詢語言并通過數(shù)據(jù)查詢語言執(zhí)行多維度數(shù)據(jù)查詢。上述本申請(qǐng)實(shí)施例序號(hào)僅僅為了描述,不代表實(shí)施例的優(yōu)劣。在本申請(qǐng)的上述實(shí)施例中,對(duì)各個(gè)實(shí)施例的描述都各有側(cè)重,某個(gè)實(shí)施例中沒有詳述的部分,可以參見其他實(shí)施例的相關(guān)描述。在本申請(qǐng)所提供的幾個(gè)實(shí)施例中,應(yīng)該理解到,所揭露的技術(shù)內(nèi)容,可通過其它的方式實(shí)現(xiàn)。其中,以上所描述的裝置實(shí)施例僅僅是示意性的,例如所述單元的劃分,可以為一種邏輯功能劃分,實(shí)際實(shí)現(xiàn)時(shí)可以有另外的劃分方式,例如多個(gè)單元或組件可以結(jié)合或者可以集成到另一個(gè)系統(tǒng),或一些特征可以忽略,或不執(zhí)行。另一點(diǎn),所顯示或討論的相互之間的耦合或直接耦合或通信連接可以是通過一些接口,單元或模塊的間接耦合或通信連接,可以是電性或其它的形式。所述作為分離部件說明的單元可以是或者也可以不是物理上分開的,作為單元顯示的部件可以是或者也可以不是物理單元,即可以位于一個(gè)地方,或者也可以分布到多個(gè)單元上??梢愿鶕?jù)實(shí)際的需要選擇其中的部分或者全部單元來實(shí)現(xiàn)本實(shí)施例方案的目的。另外,在本申請(qǐng)各個(gè)實(shí)施例中的各功能單元可以集成在一個(gè)處理單元中,也可以是各個(gè)單元單獨(dú)物理存在,也可以兩個(gè)或兩個(gè)以上單元集成在一個(gè)單元中。上述集成的單元既可以采用硬件的形式實(shí)現(xiàn),也可以采用軟件功能單元的形式實(shí)現(xiàn)。所述集成的單元如果以軟件功能單元的形式實(shí)現(xiàn)并作為獨(dú)立的產(chǎn)品銷售或使用時(shí),可以存儲(chǔ)在一個(gè)計(jì)算機(jī)可讀取存儲(chǔ)介質(zhì)中?;谶@樣的理解,本申請(qǐng)的技術(shù)方案本質(zhì)上或者說對(duì)現(xiàn)有技術(shù)做出貢獻(xiàn)的部分或者該技術(shù)方案的全部或部分可以以軟件產(chǎn)品的形式體現(xiàn)出來,該計(jì)算機(jī)軟件產(chǎn)品存儲(chǔ)在一個(gè)存儲(chǔ)介質(zhì)中,包括若干指令用以使得一臺(tái)計(jì)算機(jī)設(shè)備(可為個(gè)人計(jì)算機(jī)、服務(wù)器或者網(wǎng)絡(luò)設(shè)備等)執(zhí)行本申請(qǐng)各個(gè)實(shí)施例所 述方法的全部或部分步驟。以上所述僅是本申請(qǐng)的優(yōu)選實(shí)施方式,應(yīng)當(dāng)指出,對(duì)于本
技術(shù)領(lǐng)域:
:的普通技術(shù)人員來說,在不脫離本申請(qǐng)?jiān)淼那疤嵯?,還可以做出若干改進(jìn)和潤飾,這些改進(jìn)和潤飾也應(yīng)視為本申請(qǐng)的保護(hù)范圍。當(dāng)前第1頁12當(dāng)前第1頁12