一種海量數(shù)據(jù)的處理方法及裝置的制造方法
【技術(shù)領(lǐng)域】
[0001] 本發(fā)明涉及數(shù)據(jù)業(yè)務(wù)領(lǐng)域,特別涉及一種海量數(shù)據(jù)的處理方法及裝置。
【背景技術(shù)】
[0002] 現(xiàn)有的綜合分析系統(tǒng)對大量數(shù)據(jù)的查詢、數(shù)據(jù)導(dǎo)出等給出了相關(guān)的技術(shù)思路。如 圖1所示是該綜合分析系統(tǒng)中的查詢方案實現(xiàn)過程。從圖1中可知,現(xiàn)有的綜合分析系統(tǒng) 采用傳統(tǒng)關(guān)系型數(shù)據(jù)庫存儲多結(jié)構(gòu)化數(shù)據(jù),并且直接對外提供詳單查詢。
[0003] 由此可知,現(xiàn)有的綜合分析系統(tǒng)在處理海量數(shù)據(jù)查詢和存儲過程中,至少存在如 下技術(shù)問題:
[0004] 傳統(tǒng)關(guān)系型數(shù)據(jù)庫存儲和查詢文本非結(jié)構(gòu)化數(shù)據(jù)效率極其低下,文本在數(shù)據(jù)庫中 只能采用大字段存儲,無論是存儲還是檢索,效率非常低下。
[0005] 查詢并發(fā)性低,通過rowkey從關(guān)系數(shù)據(jù)庫中直接查詢詳單數(shù)據(jù),受磁盤10和關(guān)系 數(shù)據(jù)庫存儲方式的約束,不能提供低延時的高并發(fā)查詢。
[0006] 查詢條件需要輸入較專業(yè)的技術(shù)內(nèi)容,對查詢?nèi)藛T的技術(shù)要求較高,并且組合條 件查詢需要建立非常多的聯(lián)合索引,為了保持?jǐn)?shù)據(jù)的一致性,會影響入庫效率,為了能夠匹 配更多的條件組合,需要建立非常多的聯(lián)合索引,以提高查詢效率,直接導(dǎo)致聯(lián)合索引的維 護(hù)性差。
【發(fā)明內(nèi)容】
[0007] 為了解決現(xiàn)有技術(shù)中面對海量數(shù)據(jù)的存儲和查詢時效率低、維護(hù)性差等技術(shù)問 題,本發(fā)明提出一種海量數(shù)據(jù)的處理方法及裝置。
[0008] 一種海量數(shù)據(jù)的處理方法,包括:
[0009] 接收用業(yè)務(wù)元數(shù)據(jù)描述的查詢請求,所述查詢請求中包括查詢條件;
[0010] 根據(jù)業(yè)務(wù)元數(shù)據(jù)與技術(shù)元數(shù)據(jù)之間的映射關(guān)系查找所述查詢條件對應(yīng)的技術(shù)元 數(shù)據(jù);
[0011] 根據(jù)所述技術(shù)元數(shù)據(jù)到數(shù)據(jù)庫中查找符合查詢條件的索引范圍;
[0012] 在所述索引范圍中根據(jù)查詢請求確定詳單數(shù)據(jù)。
[0013] 一種海量數(shù)據(jù)的處理裝置,包括:
[0014] 接收模塊,用于接收用業(yè)務(wù)元數(shù)據(jù)描述的查詢請求,所述查詢請求中包括查詢條 件;
[0015] 映射模塊,用于根據(jù)業(yè)務(wù)元數(shù)據(jù)與技術(shù)元數(shù)據(jù)之間的映射關(guān)系查找所述查詢條件 對應(yīng)的技術(shù)元數(shù)據(jù);
[0016] 索引模塊,用于根據(jù)所述技術(shù)元數(shù)據(jù)到數(shù)據(jù)庫中查找符合查詢條件的索引范圍;
[0017] 確定模塊,用于在所述索引范圍中根據(jù)查詢條件確定詳單數(shù)據(jù)。
[0018] 本發(fā)明提供的方案中結(jié)合開源的大數(shù)據(jù)架構(gòu),通過將業(yè)務(wù)元數(shù)據(jù)自動映射成業(yè)務(wù) 元數(shù)據(jù)的手段,對應(yīng)用屏蔽了復(fù)雜的技術(shù)結(jié)構(gòu),解決了現(xiàn)有技術(shù)中查詢?nèi)藛T使用數(shù)據(jù)庫時 由于需要較專業(yè)的技術(shù)內(nèi)容導(dǎo)致的查詢效率低下,可用性差的技術(shù)問題,提高了系統(tǒng)的易 用性和靈活性,并且通過確定的范圍索引提高了組合條件查詢的實用性,提高了查詢效率 和系統(tǒng)的維護(hù)性。
【附圖說明】
[0019] 附圖用來提供對本發(fā)明的進(jìn)一步理解,并且構(gòu)成說明書的一部分,與本發(fā)明的實 施例一起用于解釋本發(fā)明,并不構(gòu)成對本發(fā)明的限制。在附圖中:
[0020] 為了更清楚地說明本發(fā)明實施例或現(xiàn)有技術(shù)中的技術(shù)方案,下面將對實施例或現(xiàn) 有技術(shù)描述中所需要使用的附圖作簡單地介紹,顯而易見地,下面描述中的附圖僅僅是本 發(fā)明的一些實施例,對于本領(lǐng)域普通技術(shù)人員來講,在不付出創(chuàng)造性勞動性的前提下,還可 以根據(jù)這些附圖獲得其他的附圖。
[0021] 圖1為【背景技術(shù)】中綜合分析系統(tǒng)中的查詢方案實現(xiàn)過程示意圖;
[0022] 圖2為本發(fā)明實施例1提供的海量數(shù)據(jù)的處理過程示意圖;
[0023] 圖3為本發(fā)明實施例1提供的海量數(shù)據(jù)的處理方法的流程圖;
[0024] 圖4為本發(fā)明實施例1提供的海量數(shù)據(jù)的處理方法中業(yè)務(wù)元數(shù)據(jù)與技術(shù)元數(shù)據(jù)之 間的關(guān)系不意圖;
[0025] 圖5為本發(fā)明實施例1提供的海量數(shù)據(jù)的處理方法中業(yè)務(wù)元數(shù)據(jù)與技術(shù)元數(shù)據(jù)之 間的另一關(guān)系不意圖;
[0026] 圖6為本發(fā)明實施例1提供的海量數(shù)據(jù)的處理方法中實現(xiàn)多級索引過程的示意 圖;
[0027] 圖7為本發(fā)明實施例2提供的海量數(shù)據(jù)的處理裝置的結(jié)構(gòu)示意圖。
【具體實施方式】
[0028] 下面將結(jié)合本發(fā)明實施例中的附圖,對本發(fā)明實施例中的技術(shù)方案進(jìn)行清楚、完 整地描述,顯然,所描述的實施例僅僅是本發(fā)明一部分實施例,而不是全部的實施例?;?本發(fā)明中的實施例,本領(lǐng)域普通技術(shù)人員在沒有作出創(chuàng)造性勞動前提下所獲得的所有其他 實施例,都屬于本發(fā)明保護(hù)的范圍。
[0029] 并且,以下各實施例均為本發(fā)明的可選方案,實施例的排列順序及實施例的編號 與其優(yōu)選執(zhí)行的順序無關(guān)。
[0030] 實施例1
[0031] 本實施例,提供了一種海量數(shù)據(jù)的處理方法,該方法適合基于分布式文件系統(tǒng)和 非關(guān)系型的數(shù)據(jù)庫(N0SQL)中海量數(shù)據(jù)的查詢與存儲等處理。具體的,該數(shù)據(jù)庫可以為 HBase(Hadoop Database,-種分布式的、面向列的開源數(shù)據(jù)庫)。此外,本實施例方法中的 執(zhí)行主體為索引服務(wù)器,該索引服務(wù)器可以部署在HBase數(shù)據(jù)庫系統(tǒng)中的適當(dāng)位置,如該 索引服務(wù)器可以部署在關(guān)系節(jié)點服務(wù)器上等。
[0032] 如圖2為該方法實施改進(jìn)的示意圖,其中將應(yīng)用層、接口(即查詢代理服務(wù))、元數(shù) 據(jù)、數(shù)據(jù)庫(即Hbaes)、存儲(HDFS,文件存儲系統(tǒng))等五個獨立模塊解耦,重新組合到一起, 以提高低延時的高并發(fā)性隨機(jī)查詢服務(wù)。
[0033] 如圖3所示,該方法主要包括:
[0034] 步驟101,應(yīng)用層將用業(yè)務(wù)元數(shù)據(jù)描述的查詢請求發(fā)給查詢代理服務(wù)的業(yè)務(wù)元數(shù) 據(jù)轉(zhuǎn)義功能部分,該查詢請求中包括查詢條件,所述查詢條件即為至少一個業(yè)務(wù)維度。
[0035] 元數(shù)據(jù)(Metadata)是關(guān)于數(shù)據(jù)的數(shù)據(jù)。在數(shù)據(jù)倉庫系統(tǒng)中,元數(shù)據(jù)可以幫助數(shù) 據(jù)倉庫管理員和數(shù)據(jù)倉庫的開發(fā)人員非常方便地找到他們所關(guān)心的數(shù)據(jù);元數(shù)據(jù)是描述 數(shù)據(jù)倉庫內(nèi)數(shù)據(jù)的結(jié)構(gòu)和建立方法的數(shù)據(jù),可將其按用途的不同分為兩類:技術(shù)元數(shù)據(jù) (TechnicalMetadata)和業(yè)務(wù)兀數(shù)據(jù)(BusinessMetadata)
[0036] 1.技術(shù)元數(shù)據(jù)是存儲關(guān)于數(shù)據(jù)倉庫系統(tǒng)技術(shù)細(xì)節(jié)的數(shù)據(jù),是用于開發(fā)和管理數(shù) 據(jù)倉庫使用的數(shù)據(jù),它主要包括以下信息:(1)數(shù)據(jù)倉庫結(jié)構(gòu)的描述,包括倉庫模式、視圖、 維、層次結(jié)構(gòu)和導(dǎo)出數(shù)據(jù)的定義,以及數(shù)據(jù)集市的位置和內(nèi)容;(2)業(yè)務(wù)系統(tǒng)、數(shù)據(jù)倉庫和 數(shù)據(jù)集市的體系結(jié)構(gòu)和模式;(3)匯總用的算法,包括度量和維定義算法,數(shù)據(jù)粒度、主題 領(lǐng)域、聚集、匯總、預(yù)定義的查詢與報告;(4)由操作環(huán)境到數(shù)據(jù)倉庫環(huán)境的映射,包括源數(shù) 據(jù)和它們的內(nèi)容、數(shù)據(jù)分割、數(shù)據(jù)提取、清理、轉(zhuǎn)換規(guī)則和數(shù)據(jù)刷新規(guī)則、安全(用戶授權(quán)和 存取控制)。
[0037] 2.業(yè)務(wù)元數(shù)據(jù)從業(yè)務(wù)角度描述了數(shù)據(jù)倉庫中的數(shù)據(jù),它提供了介于使用者和實際 系統(tǒng)之間的語義層,使得不懂計算機(jī)技術(shù)的業(yè)務(wù)人員也能夠"讀懂"數(shù)據(jù)倉庫中的數(shù)據(jù)。業(yè) 務(wù)元數(shù)據(jù)主要包括以下信息:使用者的業(yè)務(wù)術(shù)語所表達(dá)的數(shù)據(jù)模型、對象名和屬性名;訪 問數(shù)據(jù)的原則和數(shù)據(jù)的來源;系統(tǒng)所提供的分析方法以及公式和報表的信息等。由于技術(shù) 元數(shù)據(jù)與業(yè)務(wù)元數(shù)據(jù)在本實施例中的定義與現(xiàn)有技術(shù)相同,同時也屬于本領(lǐng)域技術(shù)人員的 公知常識范圍,故而不贅述。
[0038] 步驟102,業(yè)務(wù)元數(shù)據(jù)轉(zhuǎn)義功能部分接收應(yīng)用層用業(yè)務(wù)元數(shù)據(jù)描述的查詢請求后, 在元數(shù)據(jù)中根據(jù)業(yè)務(wù)元數(shù)據(jù)與技術(shù)元數(shù)據(jù)之間的映射關(guān)系查找用業(yè)務(wù)元數(shù)據(jù)描述的該查 詢條件所對應(yīng)的技術(shù)元數(shù)據(jù)。
[0039] 元數(shù)據(jù)在IT系統(tǒng)中比較常見,但大多描述技術(shù)方面的元數(shù)據(jù)信息,而業(yè)務(wù)信息的 元數(shù)據(jù)通常都是使用文檔形式來記錄,而且沒有手段可以保證文檔與系統(tǒng)的定義的一致 性;并且,技術(shù)元數(shù)據(jù)與業(yè)務(wù)元數(shù)據(jù)關(guān)聯(lián)性不直觀,通常需要業(yè)務(wù)人員掌握一定的IT技術(shù), 才可以找到對應(yīng)的關(guān)聯(lián)性,費時費力。因此上述步驟102中將業(yè)務(wù)元數(shù)據(jù)映射成技術(shù)元數(shù) 據(jù)的過程,是本實施例的一個改進(jìn)點之一,故而上述根據(jù)業(yè)務(wù)元數(shù)據(jù)與技術(shù)元數(shù)據(jù)之間的 映射關(guān)系查找用業(yè)務(wù)元數(shù)據(jù)描述的該查詢條件所對應(yīng)的技術(shù)元數(shù)據(jù),具體包括:
[0040] 分析用業(yè)務(wù)元數(shù)據(jù)描述的查找請求中所包含的業(yè)務(wù)維度所對應(yīng)的用技術(shù)元數(shù)據(jù) 描述的技術(shù)維度;
[0041]根據(jù)查找到的技術(shù)維度確定技術(shù)元數(shù)據(jù)的物理表,物理表中包括物理表