一種信息處理方法及裝置制造方法
【專利摘要】本發(fā)明實施例提供了一種信息處理方法,包括:獲得目標字段的屬性信息;依據(jù)所述目標字段的屬性信息,獲得利用第一語言描述的目標字段的屬性信息;將所述利用第一語言描述的目標字段的屬性信息發(fā)送給使用所述第一語言的查詢引擎,以便于所述查詢引擎依據(jù)利用第一語言描述的目標字段的屬性信息,獲得所述目標字段對應的數(shù)據(jù);本發(fā)明實施例還提供一種信息處理裝置。根據(jù)本發(fā)明實施例提供的技術方案,可以實現(xiàn)自動利用語言描述的目標字段的屬性信息,以提高數(shù)據(jù)的查詢效率。
【專利說明】一種信息處理方法及裝置 【【技術領域】】
[0001] 本發(fā)明涉及計算機【技術領域】,尤其涉及一種信息處理方法及裝置。 【【背景技術】】
[0002] 目前,隨著互聯(lián)網(wǎng)的蓬勃發(fā)展,各種數(shù)據(jù)以爆炸式的速度增長?,F(xiàn)有技術中,從存 儲單元中查詢數(shù)據(jù)的方法是:依據(jù)所需要查詢的數(shù)據(jù),人工利用某種語言來描述需要查詢 的數(shù)據(jù),該利用某種語言來描述需要查詢的數(shù)據(jù)相當于人工編寫的查詢代碼,與存儲單元 對應的查詢引擎可以運行該查詢代碼,以實現(xiàn)在該存儲單元中自動查詢所需要的數(shù)據(jù)。
[0003] 然而,對于不同的數(shù)據(jù)查詢需求,需要編寫不同的查詢代碼。而且,數(shù)據(jù)的存儲單 元是多樣性的,如存儲在海杜普(Hadoop)類型的存儲單元、蜂巢(Hive)類型的存儲單元 等,數(shù)據(jù)的存儲單元不同,在處理數(shù)據(jù)需求時,所利用的語言也不同。因此,目前這種查詢代 碼需要人工進行編寫的方法,需要人工學習不同的語言,并手動編寫查詢代碼,才能查詢到 數(shù)據(jù),導致目前數(shù)據(jù)的查詢效率比較低。 【
【發(fā)明內(nèi)容】
】
[0004] 有鑒于此,本發(fā)明實施例提供了一種信息處理方法及裝置,可以實現(xiàn)自動利用語 言描述目標字段的屬性信息,以提高數(shù)據(jù)的查詢效率。
[0005] 本發(fā)明實施例提供了一種信息處理方法,包括:
[0006] 獲得目標字段的屬性信息;
[0007] 依據(jù)所述目標字段的屬性信息,獲得利用第一語言描述的目標字段的屬性信息;
[0008] 將所述利用第一語言描述的目標字段的屬性信息發(fā)送給使用所述第一語言的查 詢引擎,以便于所述查詢引擎依據(jù)利用第一語言描述的目標字段的屬性信息,獲得所述目 標字段對應的數(shù)據(jù)。
[0009] 上述方法中,所述獲得目標字段的屬性信息,包括:
[0010] 接收利用第二語言描述的候選字段的屬性信息;對所述利用第二語言描述的候選 字段的屬性信息進行解析,以獲得所述候選字段的屬性信息;
[0011] 在所述候選字段的屬性信息中去除不正確的候選字段的屬性信息,以獲得目標字 段的屬性信息。
[0012] 上述方法中,所述目標字段的屬性信息包括所述目標字段的名稱;所述依據(jù)所述 目標字段的屬性信息,獲得利用第一語言描述的目標字段的屬性信息,包括:
[0013] 依據(jù)所述目標字段的名稱,獲得存儲所述目標字段的存儲單元的類型信息;
[0014] 依據(jù)所述類型信息,獲得查詢所述目標字段的數(shù)值的查詢引擎所使用的第一語 言;
[0015] 依據(jù)所述第一語言和所述目標字段的屬性信息,獲得所述利用第一語言描述的目 標字段的屬性信息。
[0016] 上述方法中,所述目標字段的屬性信息還包括所述目標字段的聚類函數(shù),所述目 標字段的聚類函數(shù)用于所述查詢引擎對獲得的所述目標字段對應的數(shù)值進行聚類處理;其 中,所述聚類函數(shù)包括以下函數(shù)中至少一個:求和函數(shù)、求平均值函數(shù)、計數(shù)函數(shù)、求最大值 函數(shù)和求最小值函數(shù);和/或,
[0017] 所述目標字段的屬性信息還包括所述目標字段的篩選條件,所述目標字段的篩選 條件用于所述查詢引擎對獲得的所述目標字段對應的數(shù)值進行篩選處理。
[0018] 上述方法中,所述第一語言包括微軟Μ語言、R語言、Hive查詢語言HQL或者結構 化查詢語言SQL。
[0019] 本發(fā)明實施例提供了一種信息處理裝置,包括:
[0020] 獲取單元,用于獲得目標字段的屬性信息;
[0021] 處理單元,用于依據(jù)所述目標字段的屬性信息,獲得利用第一語言描述的目標字 段的屬性信息;
[0022] 發(fā)送單元,用于將所述利用第一語言描述的目標字段的屬性信息發(fā)送給使用所述 第一語言的查詢引擎,以便于所述查詢引擎依據(jù)利用第一語言描述的目標字段的屬性信 息,獲得所述目標字段對應的數(shù)據(jù)。
[0023] 上述裝置中,所述獲取單元具體用于:
[0024] 接收利用第二語言描述的候選字段的屬性信息;對所述利用第二語言描述的候選 字段的屬性信息進行解析,以獲得所述候選字段的屬性信息;
[0025] 在所述候選字段的屬性信息中去除不正確的候選字段的屬性信息,以獲得目標字 段的屬性信息。
[0026] 上述裝置中,所述目標字段的屬性信息包括所述目標字段的名稱;所述處理單元 具體用于:
[0027] 依據(jù)所述目標字段的名稱,獲得存儲所述目標字段的存儲單元的類型信息;
[0028] 依據(jù)所述類型信息,獲得查詢所述目標字段的數(shù)值的查詢引擎所使用的第一語 言;
[0029] 依據(jù)所述第一語言和所述目標字段的屬性信息,獲得所述利用第一語言描述的目 標字段的屬性信息。
[0030] 上述裝置中,所述目標字段的屬性信息還包括所述目標字段的聚類函數(shù),所述目 標字段的聚類函數(shù)用于所述查詢引擎對獲得的所述目標字段對應的數(shù)值進行聚類處理;其 中,所述聚類函數(shù)包括以下函數(shù)中至少一個:求和函數(shù)、求平均值函數(shù)、計數(shù)函數(shù)、求最大值 函數(shù)和求最小值函數(shù);和/或,
[0031] 所述目標字段的屬性信息還包括所述目標字段的篩選條件,所述目標字段的篩選 條件用于所述查詢引擎對獲得的所述目標字段對應的數(shù)值進行篩選處理。
[0032] 上述裝置中,所述第一語言包括微軟Μ語言、R語言、Hive查詢語言HQL或者結構 化查詢語言SQL。
[0033] 由以上技術方案可以看出,本發(fā)明實施例具有以下有益效果:
[0034] 本發(fā)明實施例中,可以利用查詢引擎使用的語言描述目標字段的屬性信息,然后 將獲得的利用該語言描述的目標字段的屬性信息發(fā)送給該查詢引擎,查詢引擎就可以依據(jù) 利用該語言描述的目標字段的屬性信息,查詢所述目標字段的數(shù)值,從而獲得目標字段對 應的數(shù)據(jù)。這樣,本發(fā)明實施例就可以實現(xiàn)自動地利用語言描述需要查詢的數(shù)據(jù),以自動生 成查詢代碼,與現(xiàn)有技術中人工利用某種語言來描述需要查詢的數(shù)據(jù)的技術方案相比,不 再需要手動編寫查詢代碼,能夠提高數(shù)據(jù)的查詢效率。 【【專利附圖】
【附圖說明】】
[0035] 為了更清楚地說明本發(fā)明實施例的技術方案,下面將對實施例中所需要使用的附 圖作簡單地介紹,顯而易見地,下面描述中的附圖僅僅是本發(fā)明的一些實施例,對于本領域 普通技術人員來講,在不付出創(chuàng)造性勞動性的前提下,還可以根據(jù)這些附圖獲得其它的附 圖。
[0036] 圖1是本發(fā)明實施例所提供的技術方案使用的系統(tǒng)示意圖;
[0037] 圖2是本發(fā)明實施例所提供的信息處理方法的流程示意圖;
[0038] 圖3是本發(fā)明實施例中前端的Π 示意圖
[0039] 圖4是本發(fā)明實施例所提供的元數(shù)據(jù)分層管理示意圖;
[0040] 圖5是本發(fā)明實施例所提供的信息處理裝置的功能方塊圖。 【【具體實施方式】】
[0041] 為了更好的理解本發(fā)明的技術方案,下面結合附圖對本發(fā)明實施例進行詳細描 述。
[0042] 應當明確,所描述的實施例僅僅是本發(fā)明一部分實施例,而不是全部的實施例?;?于本發(fā)明中的實施例,本領域普通技術人員在沒有作出創(chuàng)造性勞動前提下所獲得的所有其 它實施例,都屬于本發(fā)明保護的范圍。
[0043] 在本發(fā)明實施例中使用的術語是僅僅出于描述特定實施例的目的,而非旨在限制 本發(fā)明。在本發(fā)明實施例和所附權利要求書中所使用的單數(shù)形式的"一種"、"所述"和"該" 也旨在包括多數(shù)形式,除非上下文清楚地表示其他含義。
[0044] 應當理解,本文中使用的術語"和/或"僅僅是一種描述關聯(lián)對象的關聯(lián)關系,表 示可以存在三種關系,例如,A和/或B,可以表示:單獨存在A,同時存在A和B,單獨存在B 這三種情況。另外,本文中字符"/",一般表示前后關聯(lián)對象是一種"或"的關系。
[0045] 應當理解,盡管在本發(fā)明實施例中可能采用術語第一、第二等來描述語言,但這些 關鍵詞不應限于這些術語。這些術語僅用來將關鍵詞彼此區(qū)分開。例如,在不脫離本發(fā)明 實施例范圍的情況下,第一語言也可以被稱為第二語言,類似地,第二語言也可以被稱為第 一語目。
[0046] 取決于語境,如在此所使用的詞語"如果"可以被解釋成為"在……時"或"當…… 時"或"響應于確定"或"響應于檢測"。類似地,取決于語境,短語"如果確定"或"如果檢 測(陳述的條件或事件)"可以被解釋成為"當確定時"或"響應于確定"或"當檢測(陳述 的條件或事件)時"或"響應于檢測(陳述的條件或事件)"。
[0047] 本發(fā)明實施例所提供的技術方案使用的系統(tǒng)如圖1所示,主要由用戶界面(User Interface,Π )、信息處理裝置、查詢引擎和存儲單元組成,本發(fā)明實施例所提供的方法在 信息處理裝置側實現(xiàn)。
[0048] 本發(fā)明實施例給出一種信息處理方法,請參考圖2,其為本發(fā)明實施例所提供的信 息處理方法的流程示意圖,如圖所示,該方法包括以下步驟:
[0049] S201,獲得目標字段的屬性信息。
[0050] 具體的,本發(fā)明實施例中,上述信息處理裝置獲得目標字段的屬性信息的方法可 以包括:
[0051] 首先,接收前端的Π 發(fā)送的利用第二語言描述的候選字段的屬性信息,然后,對 所述利用第二語言描述的候選字段的屬性信息進行解析,以獲得所述候選字段的屬性信 息。然后,在所述候選字段的屬性信息中去除不正確的候選字段的屬性信息,以獲得目標字 段的屬性信息。
[0052] 優(yōu)選的,前端的Π 可以接收用戶配置的候選字段的屬性信息;其中,該候選字段 的屬性信息可以包括候選字段的名稱,還可以包括候選字段的聚類函數(shù)和候選字段的篩選 條件中至少一個。
[0053] 其中,由于后端的存儲單元中會存在大量字段以及每個字段對應的數(shù)值,因此,當 查詢引擎需要查詢存儲單元中的某數(shù)值時,需要前端的Π 接收配置的需要查詢的數(shù)值所 對應的字段的名稱,將該字段的名稱作為上述候選字段的名稱。例如,存儲單元存儲的每條 搜索日志中包含字段A、字段B、字段C和字段D,如果需要查詢引擎查詢字段B的數(shù)值,則用 戶需要在前端的UI上輸入字段B的名稱。
[0054] 例如,請參考圖3,其為本發(fā)明實施例中前端的UI示意圖,如圖所示,前端的UI顯 示了多個字段的名稱,用戶可以在該多個字段中勾選至少一個候選字段。
[0055] 其中,所述候選字段的聚類函數(shù)用于查詢引擎對獲得的候選字段對應的數(shù)值進行 聚類處理。優(yōu)選的,所述聚類函數(shù)可以包括以下函數(shù)中至少一個:求和函數(shù)、求平均值函數(shù)、 計數(shù)函數(shù)、求最大值函數(shù)和求最小值函數(shù)。相應的,若聚類函數(shù)包括求和函數(shù),則查詢引擎 在查詢到數(shù)值后可以對查詢到的數(shù)值進行求和計算。若聚類函數(shù)包括求平均值函數(shù),則查 詢引擎在查詢到數(shù)值后可以對查詢到的數(shù)值進行求平均值計算。若聚類函數(shù)包括計數(shù)函 數(shù),則查詢引擎在查詢到數(shù)值后,可以對查詢到的數(shù)值進行數(shù)目統(tǒng)計。若聚類函數(shù)包括求最 大值函數(shù),則查詢引擎在查到數(shù)值后,可以獲得數(shù)值中的最大值。若聚類函數(shù)包括求最小值 函數(shù),則查詢引擎在查到數(shù)值后,可以獲得數(shù)值中的最小值??梢岳斫獾模垲惡瘮?shù)還可以 包括其他對數(shù)值進行統(tǒng)計的函數(shù),上述聚類函數(shù)僅用以舉例說明,并不限定聚類函數(shù)只包 含上述函數(shù)。
[0056] 其中,所述候選字段的篩選條件用于查詢引擎依據(jù)該篩選條件,對獲得的數(shù)值進 行篩選處理。
[0057] 優(yōu)選的,依據(jù)該篩選條件,對獲得的數(shù)值進行篩選處理可以包括以下幾種篩選處 理中至少一個:依據(jù)黑名單或者白名單,對數(shù)值進行篩選處理;依據(jù)閾值對數(shù)值進行篩選 處理;依據(jù)精確匹配或者模糊匹配,對字段的數(shù)值進行篩選處理;依據(jù)時間區(qū)間,對數(shù)值進 行篩選出里;依據(jù)出現(xiàn)次數(shù),對字段的數(shù)值進行篩選處理。
[0058] 例如,篩選條件為檢索詞包含鮮花速遞,則對檢索詞對應的字段進行查詢,以獲得 所有檢索詞,然后對檢索詞進行篩選處理,以獲得包含鮮花速遞的檢索詞。再例如,篩選條 件為時間區(qū)間8點至22點,則對獲得的數(shù)值進行篩選處理,只保留8點至22點的日志中的 數(shù)值。再例如,篩選條件為獲得出現(xiàn)次數(shù)最多的檢索詞,則對依據(jù)檢索詞對應的字段進行查 詢,以獲得檢索詞,并統(tǒng)計每個檢索詞的出現(xiàn)次數(shù),然后獲得出現(xiàn)次數(shù)最多的檢索詞。
[0059] 前端的Π 可以接收用戶輸入的候選字段的屬性信息的方法可以包括以下三種中 至少一種:
[0060] 第一種:前端的π可以接收用戶直接輸入的候選字段的屬性信息。
[0061] 第二種:前端的Π 可以接收用戶在若干選項中選出的候選字段的屬性信息。
[0062] 第三種:前端的Π 可以依據(jù)預設的文件地址,從該文件地址中找到配置文件,進 而從配置文件中自動獲取候選字段的屬性信息。這種方法適用于候選字段的屬性信息比較 龐大的情況,通過配置文件可以批量獲取候選字段的屬性信息。
[0063] 前端的UI在獲得候選字段的屬性信息后,利用預設的第二語言對該候選字段的 屬性信息進行描述,然后將獲得的利用第二語言描述的候選字段的屬性信息發(fā)送給后端 的信息處理裝置,這樣信息處理裝置就可以接收到前端的Π 發(fā)送的利用第二語言描述的 候選字段的屬性信息。例如,所述第二語言可以包括一種類結構化查詢語言(structured Query Language,SQL)或者數(shù)據(jù)格式。例如,該數(shù)據(jù)格式可以包括輕量級的數(shù)據(jù)交換格式 (JavaScript Object Notation, JSON)〇
[0064] 后端的信息處理裝置在從前端的Π 獲得利用第二語言描述的候選字段的屬性信 息后,對利用第二語言描述的候選字段的屬性信息進行解析處理,就可以獲得候選字段的 屬性信息,信息處理裝置還需要進一步對獲得的候選字段的屬性信息進行正確性判斷,判 斷屬性字段的名稱是否正確,若不正確,就在候選字段的屬性信息中去除該不正確的字段 的名稱以及針對該不正確的字段的聚類函數(shù)和篩選條件,從而實現(xiàn)在所述候選字段的屬性 信息中去除不正確的候選字段的屬性信息,其余的候選字段的屬性信息就可以作為本發(fā)明 實施例中的目標字段的屬性信息。
[0065] 可以理解的,目標字段的屬性信息可以包括全部或者部分的候選字段的屬性信 息,因此,所述目標字段的屬性信息可以包括目標字段的名稱,還可以包括目標字段的聚類 函數(shù)和目標字段的篩選條件中至少一個。同理,所述目標字段的聚類函數(shù)用于所述查詢引 擎對獲得的所述目標字段對應的數(shù)值進行聚類處理;其中,所述聚類函數(shù)包括以下函數(shù)中 至少一個:求和函數(shù)、求平均值函數(shù)、計數(shù)函數(shù)、求最大值函數(shù)、求最小值函數(shù)。所述目標字 段的屬性信息還包括所述目標字段的篩選條件,所述目標字段的篩選條件用于所述查詢引 擎對獲得的所述目標字段對應的數(shù)值進行篩選處理。
[0066] S202,依據(jù)所述目標字段的屬性信息,獲得利用第一語言描述的目標字段的屬性 信息。
[0067] 具體的,后端的信息處理裝置在獲得目標字段的屬性信息后,可以獲得利用第一 語言描述的目標字段的屬性信息。
[0068] 舉例說明,依據(jù)目標字段的屬性信息,獲得利用第一語言描述的目標字段的屬性 信息的方法可以包括:
[0069] 首先,依據(jù)所述目標字段的名稱,獲得存儲所述目標字段的存儲單元的類型信息。
[0070] 例如,可以依據(jù)目標字段的名稱以及預設的字段的名稱與表的對應關系,獲得一 個存儲目標字段的表或者獲得至少兩個存儲目標字段的表。
[0071] 若獲得至少兩個存儲目標字段的表,則選擇包含的內(nèi)容最少的表,將選出的包含 的內(nèi)容最少的表作為所述存儲目標字段的表。這里,包含的內(nèi)容最少的表對應的查詢速度 最快,因此,為了優(yōu)化查詢速度,當存在至少兩個存儲目標字段的表時,只選擇一個內(nèi)容最 少的表即可。
[0072] 請參考圖4,其為本發(fā)明實施例所提供的元數(shù)據(jù)分層管理示意圖,如圖所示,在獲 得一個存儲目標字段的表后,依據(jù)該目標字段的表所包含的數(shù)據(jù)源號,獲得數(shù)據(jù)源信息,該 數(shù)據(jù)源信息中保存后端存儲該目標字段的存儲單元的相關信息,如編號、名稱、描述、賬號、 密碼、主機、端口號、路徑、參數(shù)和類型編號,依據(jù)其中的類型編號可以獲得后端存儲該目標 字段的存儲單元的類型信息。
[0073] 然后,依據(jù)所述類型信息,獲得查詢所述目標字段的數(shù)值的查詢引擎所使用的第 一語目。
[0074] 優(yōu)選的,可以依據(jù)該存儲單元的類型信息以及類型與第一語言的對應關系,可以 獲得該類型信息所對應的第一語言。本發(fā)明實施例中,所述第一語言指的是能夠在該存儲 單元執(zhí)行查詢操作的查詢引擎所使用的語言。
[0075] 優(yōu)選的,所述第一語言包括微軟(Microsoft,M)語言、R語言、蜂巢查詢語言(Hive Query Language, HQL)或者結構化查詢語言(Structured Query Language, SQL)。
[0076] 最后,依據(jù)所述第一語言和所述目標字段的屬性信息,獲得所述利用第一語言描 述的目標字段的屬性信息。
[0077] 可以理解的,第一語言、查詢引擎以及存儲單元是一一對應的,后端的每個存儲單 元都存在與該存儲單元對應的查詢引擎,該查詢引擎能夠在對應的存儲單元中執(zhí)行查詢操 作,然而查詢引擎想要在存儲單元中執(zhí)行查詢操作,以獲得目標字段對應的數(shù)值,則查詢引 擎需要運行可執(zhí)行代碼,該可執(zhí)行代碼需要利用查詢引擎所使用的第一語言實現(xiàn),這樣,查 詢引擎才能夠運行該可執(zhí)行代碼,從而實現(xiàn)查詢操作。
[0078] 如圖1所示,如果存儲單元為Hadoop類型的存儲單元,Hadoop類型的存儲單元對 應的查詢引擎所使用的第一語言是Μ語言或者R語言,則Hadoop類型的存儲單元對應的第 一語言是Μ語言或者R語言。再例如,如果存儲單元為Hive類型的存儲單元,HIVE類型的 存儲單元對應的查詢引擎所使用的第一語言是HQL,則Hive類型的存儲單元對應的第一語 言是HQL。再例如,如果存儲單元為My SQL類型的存儲單元,My SQL類型的存儲單元對應 的查詢引擎所使用的第一語言是SQL,則My SQL類型的存儲單元對應的第一語言是SQL。
[0079] S203,將所述利用第一語言描述的目標字段的屬性信息發(fā)送給使用所述第一語言 的查詢引擎,以便于所述查詢引擎依據(jù)利用第一語言描述的目標字段的屬性信息,獲得所 述目標字段對應的數(shù)據(jù)。
[0080] 具體的,信息處理裝置在獲得利用第一語言描述的目標字段的屬性信息后,將該 利用第一語言描述的目標字段的屬性信息發(fā)送給使用第一語言的查詢引擎,即發(fā)送給查詢 目標字段的數(shù)值的查詢引擎,以便于查詢引擎在收到利用第一語言描述的目標字段的屬性 信息后,依據(jù)利用第一語言描述的目標字段的屬性信息,獲得目標字段對應的數(shù)據(jù)。
[0081] 例如,查詢引擎可以運行利用第一語言描述的目標字段的屬性信息,然后依據(jù)第 一語言中的語法,讀取其中的目標字段的屬性信息,依據(jù)其中目標字段的名稱,在對應的存 儲單元中查詢該目標字段對應的數(shù)值,在獲得目標字段對應的數(shù)值后,可以將該數(shù)值作為 目標字段對應的數(shù)據(jù)直接返回給前端的UI進行顯示,也可以依據(jù)目標字段的屬性信息中 的聚類函數(shù)和/或篩選條件,對查詢到的數(shù)值進行聚類處理和/或篩選處理,將處理后獲得 的數(shù)據(jù)作為目標字段對應的數(shù)據(jù)返回給前端的UI進行顯示。
[0082] 隨著后端平臺的發(fā)展,需要由大量的存儲單元接入,因此為了更好的對存儲單元 中的數(shù)據(jù)進行管理和維護,需要使用元數(shù)據(jù),元數(shù)據(jù)主要用于描述哪些數(shù)據(jù)在哪個存儲單 元中、定義要進入存儲單元中的數(shù)據(jù)和從存儲單元中產(chǎn)生的數(shù)據(jù)等。
[0083] 如圖4所示,元數(shù)據(jù)分為三層,從上到下依次為:業(yè)務元數(shù)據(jù)、模型抽象元數(shù)據(jù)和 物理元數(shù)據(jù)。
[0084] 其中,業(yè)務元數(shù)據(jù)指的是從業(yè)務角度描述存儲單元中存儲的數(shù)據(jù),主要包含主題 的屬性信息、每個主題對應的字段和每個字段的屬性信息。業(yè)務元數(shù)據(jù)還可以包括聚類函 數(shù)和/或篩選條件。
[0085] 其中,模型抽象元數(shù)據(jù)支持兩種數(shù)據(jù)查詢模式,即星型數(shù)據(jù)查詢模式和單表數(shù)據(jù) 查詢模式。如圖4所示,如果是星型數(shù)據(jù)查詢模式,模型抽象元數(shù)據(jù)包含星型表的屬性信 息、星型表中的維度表以及維度表對應的聚合表。星型表包含一個基礎表和至少一個維度 表,其中,基礎表用于保存至少一個字段的標識,維度表用于保存字段的標識與字段的名稱 的對應關系。
[0086] 其中,如圖4所示,物理元數(shù)據(jù)用于利用表的形式來記錄存儲單元存儲的數(shù)據(jù)的 屬性信息。其中,該表可以包括若干列,每一列用于保存一個字段的屬性信息,如編號、位 置、名稱、數(shù)據(jù)類型的編號、長度、所屬表的編號、編碼等,物理元數(shù)據(jù)中還包含該表的可用 狀態(tài)信息,該可用狀態(tài)信息可以表示該表中的內(nèi)容是否可用、在什么時間段可用等。對于每 個列,物理元數(shù)據(jù)還包含該列的數(shù)據(jù)類型。該表還包含表自身的屬性信息,如編碼、名稱、描 述、標簽、編碼、大小以及字段所在的數(shù)據(jù)源的編號。依據(jù)數(shù)據(jù)源的編號可以獲得對應的數(shù) 據(jù)源的屬性信息,如數(shù)據(jù)源的編號、名稱、描述、賬號、密碼、主機、端口號、路徑、參數(shù)和類型 編號。對于數(shù)據(jù)源,物理元數(shù)據(jù)還可以保存該數(shù)據(jù)源的類型編號所對應的類型信息,如數(shù)據(jù) 源的類型編號、類型名稱和描述。
[0087] 本發(fā)明實施例進一步給出實現(xiàn)上述方法實施例中各步驟及方法的裝置實施例。
[0088] 請參考圖5,其為本發(fā)明實施例所提供的信息處理裝置的功能方塊圖。如圖所示, 該裝置包括:
[0089] 獲取單元501,用于獲得目標字段的屬性信息;
[0090] 處理單元502,用于依據(jù)所述目標字段的屬性信息,獲得利用第一語言描述的目標 字段的屬性信息;
[0091] 發(fā)送單元503,用于將所述利用第一語言描述的目標字段的屬性信息發(fā)送給使用 所述第一語言的查詢引擎,以便于所述查詢引擎依據(jù)利用第一語言描述的目標字段的屬性 信息,獲得所述目標字段對應的數(shù)據(jù)。
[0092] 優(yōu)選的,所述獲取單元501具體用于:
[0093] 接收利用第二語言描述的候選字段的屬性信息;對所述利用第二語言描述的候選 字段的屬性信息進行解析,以獲得所述候選字段的屬性信息;
[0094] 在所述候選字段的屬性信息中去除不正確的候選字段的屬性信息,以獲得目標字 段的屬性信息。
[0095] 優(yōu)選的,所述目標字段的屬性信息包括所述目標字段的名稱;所述處理單元502 具體用于:
[0096] 依據(jù)所述目標字段的名稱,獲得存儲所述目標字段的存儲單元的類型信息;
[0097] 依據(jù)所述類型信息,獲得查詢所述目標字段的數(shù)值的查詢引擎所使用的第一語 言;
[0098] 依據(jù)所述第一語言和所述目標字段的屬性信息,獲得所述利用第一語言描述的目 標字段的屬性信息。
[0099] 優(yōu)選的,所述目標字段的屬性信息還包括所述目標字段的聚類函數(shù),所述目標字 段的聚類函數(shù)用于所述查詢引擎對獲得的所述目標字段對應的數(shù)值進行聚類處理;其中, 所述聚類函數(shù)包括以下函數(shù)中至少一個:求和函數(shù)、求平均值函數(shù)、計數(shù)函數(shù)、求最大值函 數(shù)和求最小值函數(shù);和/或,
[0100] 所述目標字段的屬性信息還包括所述目標字段的篩選條件,所述目標字段的篩選 條件用于所述查詢引擎對獲得的所述目標字段對應的數(shù)值進行篩選處理。
[0101] 優(yōu)選的,所述第一語言包括微軟Μ語言、R語言、Hive查詢語言HQL或者結構化查 詢語言SQL。
[0102] 由于本實施例中的各單元能夠執(zhí)行圖2所示的方法,本實施例未詳細描述的部 分,可參考對圖2的相關說明。
[0103] 本發(fā)明實施例的技術方案具有以下有益效果:
[0104] 本發(fā)明實施例中,可以利用查詢引擎使用的語言描述目標字段的屬性信息,然后 將獲得的利用該語言描述的目標字段的屬性信息發(fā)送給該查詢引擎,查詢引擎就可以依據(jù) 利用該語言描述的目標字段的屬性信息,查詢所述目標字段的數(shù)值,從而獲得目標字段對 應的數(shù)據(jù)。這樣,本發(fā)明實施例就可以實現(xiàn)自動地利用語言描述需要查詢的數(shù)據(jù),以自動生 成查詢代碼,與現(xiàn)有技術中人工利用某種語言來描述需要查詢的數(shù)據(jù)的技術方案相比,不 再需要手動編寫查詢代碼,能夠提高數(shù)據(jù)的查詢效率。
[0105] 所屬領域的技術人員可以清楚地了解到,為描述的方便和簡潔,上述描述的系統(tǒng), 裝置和單元的具體工作過程,可以參考前述方法實施例中的對應過程,在此不再贅述。
[0106] 在本發(fā)明所提供的幾個實施例中,應該理解到,所揭露的系統(tǒng),裝置和方法,可以 通過其它的方式實現(xiàn)。例如,以上所描述的裝置實施例僅僅是示意性的,例如,所述單元的 劃分,僅僅為一種邏輯功能劃分,實際實現(xiàn)時可以有另外的劃分方式,例如,多個單元或組 件可以結合或者可以集成到另一個系統(tǒng),或一些特征可以忽略,或不執(zhí)行。另一點,所顯示 或討論的相互之間的耦合或直接耦合或通信連接可以是通過一些接口,裝置或單元的間接 耦合或通信連接,可以是電性,機械或其它的形式。
[0107] 所述作為分離部件說明的單元可以是或者也可以不是物理上分開的,作為單元顯 示的部件可以是或者也可以不是物理單元,即可以位于一個地方,或者也可以分布到多個 網(wǎng)絡單元上??梢愿鶕?jù)實際的需要選擇其中的部分或者全部單元來實現(xiàn)本實施例方案的目 的。
[0108] 另外,在本發(fā)明各個實施例中的各功能單元可以集成在一個處理單元中,也可以 是各個單元單獨物理存在,也可以兩個或兩個以上單元集成在一個單元中。上述集成的單 元既可以采用硬件的形式實現(xiàn),也可以采用硬件加軟件功能單元的形式實現(xiàn)。
[0109] 上述以軟件功能單元的形式實現(xiàn)的集成的單元,可以存儲在一個計算機可讀取存 儲介質(zhì)中。上述軟件功能單元存儲在一個存儲介質(zhì)中,包括若干指令用以使得一臺計算 機裝置(可以是個人計算機,服務器,或者網(wǎng)絡裝置等)或處理器(Processor)執(zhí)行本發(fā) 明各個實施例所述方法的部分步驟。而前述的存儲介質(zhì)包括:U盤、移動硬盤、只讀存儲器 (Read-Only Memory, ROM)、隨機存取存儲器(Random Access Memory, RAM)、磁碟或者光盤 等各種可以存儲程序代碼的介質(zhì)。
[0110] 以上所述僅為本發(fā)明的較佳實施例而已,并不用以限制本發(fā)明,凡在本發(fā)明的精 神和原則之內(nèi),所做的任何修改、等同替換、改進等,均應包含在本發(fā)明保護的范圍之內(nèi)。
【權利要求】
1. 一種信息處理方法,其特征在于,所述方法包括: 獲得目標字段的屬性信息; 依據(jù)所述目標字段的屬性信息,獲得利用第一語言描述的目標字段的屬性信息; 將所述利用第一語言描述的目標字段的屬性信息發(fā)送給使用所述第一語言的查詢引 擎,以便于所述查詢引擎依據(jù)利用第一語言描述的目標字段的屬性信息,獲得所述目標字 段對應的數(shù)據(jù)。
2. 根據(jù)權利要求1所述的方法,其特征在于,所述獲得目標字段的屬性信息,包括: 接收利用第二語言描述的候選字段的屬性信息;對所述利用第二語言描述的候選字段 的屬性信息進行解析,以獲得所述候選字段的屬性信息; 在所述候選字段的屬性信息中去除不正確的候選字段的屬性信息,以獲得目標字段的 屬性信息。
3. 根據(jù)權利要求1所述的方法,其特征在于,所述目標字段的屬性信息包括所述目標 字段的名稱;所述依據(jù)所述目標字段的屬性信息,獲得利用第一語言描述的目標字段的屬 性信息,包括: 依據(jù)所述目標字段的名稱,獲得存儲所述目標字段的存儲單元的類型信息; 依據(jù)所述類型信息,獲得查詢所述目標字段的數(shù)值的查詢引擎所使用的第一語言; 依據(jù)所述第一語言和所述目標字段的屬性信息,獲得所述利用第一語言描述的目標字 段的屬性信息。
4. 根據(jù)權利要求2或3所述的方法,其特征在于, 所述目標字段的屬性信息還包括所述目標字段的聚類函數(shù),所述目標字段的聚類函數(shù) 用于所述查詢引擎對獲得的所述目標字段對應的數(shù)值進行聚類處理;其中,所述聚類函數(shù) 包括以下函數(shù)中至少一個:求和函數(shù)、求平均值函數(shù)、計數(shù)函數(shù)、求最大值函數(shù)和求最小值 函數(shù);和/或, 所述目標字段的屬性信息還包括所述目標字段的篩選條件,所述目標字段的篩選條件 用于所述查詢引擎對獲得的所述目標字段對應的數(shù)值進行篩選處理。
5. 根據(jù)權利要求1或3所述的方法,其特征在于,所述第一語言包括微軟Μ語言、R語 言、Hive查詢語言HQL或者結構化查詢語言SQL。
6. -種信息處理裝置,其特征在于,所述裝置包括: 獲取單元,用于獲得目標字段的屬性信息; 處理單元,用于依據(jù)所述目標字段的屬性信息,獲得利用第一語言描述的目標字段的 屬性信息; 發(fā)送單元,用于將所述利用第一語言描述的目標字段的屬性信息發(fā)送給使用所述第一 語言的查詢引擎,以便于所述查詢引擎依據(jù)利用第一語言描述的目標字段的屬性信息,獲 得所述目標字段對應的數(shù)據(jù)。
7. 根據(jù)權利要求6所述的裝置,其特征在于,所述獲取單元具體用于: 接收利用第二語言描述的候選字段的屬性信息;對所述利用第二語言描述的候選字段 的屬性信息進行解析,以獲得所述候選字段的屬性信息; 在所述候選字段的屬性信息中去除不正確的候選字段的屬性信息,以獲得目標字段的 屬性信息。
8. 根據(jù)權利要求6所述的裝置,其特征在于,所述目標字段的屬性信息包括所述目標 字段的名稱;所述處理單元具體用于: 依據(jù)所述目標字段的名稱,獲得存儲所述目標字段的存儲單元的類型信息; 依據(jù)所述類型信息,獲得查詢所述目標字段的數(shù)值的查詢引擎所使用的第一語言; 依據(jù)所述第一語言和所述目標字段的屬性信息,獲得所述利用第一語言描述的目標字 段的屬性信息。
9. 根據(jù)權利要求7或8所述的裝置,其特征在于, 所述目標字段的屬性信息還包括所述目標字段的聚類函數(shù),所述目標字段的聚類函數(shù) 用于所述查詢引擎對獲得的所述目標字段對應的數(shù)值進行聚類處理;其中,所述聚類函數(shù) 包括以下函數(shù)中至少一個:求和函數(shù)、求平均值函數(shù)、計數(shù)函數(shù)、求最大值函數(shù)和求最小值 函數(shù);和/或, 所述目標字段的屬性信息還包括所述目標字段的篩選條件,所述目標字段的篩選條件 用于所述查詢引擎對獲得的所述目標字段對應的數(shù)值進行篩選處理。
10. 根據(jù)權利要求6或8所述的裝置,其特征在于,所述第一語言包括微軟Μ語言、R語 言、Hive查詢語言HQL或者結構化查詢語言SQL。
【文檔編號】G06F17/30GK104216992SQ201410456925
【公開日】2014年12月17日 申請日期:2014年9月9日 優(yōu)先權日:2014年9月9日
【發(fā)明者】梁變, 郭謝, 孫勇義, 劉生, 張道泉, 王玉嫻, 史曉峰, 王勇, 陳愈堅, 李呈奇, 劉小林, 朱栩甲, 任峰 申請人:百度在線網(wǎng)絡技術(北京)有限公司