[0057]在本發(fā)明的具體實施例中,根據(jù)數(shù)據(jù)源模型中立方體名稱與數(shù)據(jù)源名稱的關(guān)聯(lián)關(guān)系,獲取與所述立方體名稱匹配的數(shù)據(jù)源模型;獲取與所述數(shù)據(jù)源模型中的數(shù)據(jù)源名稱匹配的數(shù)據(jù)源;與所述數(shù)據(jù)源建立連接關(guān)系。
[0058]步驟S30:根據(jù)所述連接關(guān)系以及所述結(jié)構(gòu)化查詢語句SQL,從所述海量數(shù)據(jù)源Hadoop平臺或者所述關(guān)系數(shù)據(jù)庫獲取數(shù)據(jù)查詢結(jié)果;
[0059]在本發(fā)明的具體實施例中,若與所述立方體多維模型信息匹配的數(shù)據(jù)源為海量數(shù)據(jù)源Hadoop平臺,則與所述海量數(shù)據(jù)源Hadoop平臺建立連接關(guān)系;
[0060]若與所述立方體多維模型信息匹配的數(shù)據(jù)源為關(guān)系數(shù)據(jù)庫,則與所述關(guān)系數(shù)據(jù)庫建立連接關(guān)系。
[0061]步驟S40:根據(jù)所述立方體多維模型信息,將所述數(shù)據(jù)查詢結(jié)果轉(zhuǎn)換成多維數(shù)據(jù)結(jié)果并返回給用戶。
[0062]在本發(fā)明的具體實施例中,若與所述海量數(shù)據(jù)源Hadoop平臺建立連接關(guān)系,則向海量數(shù)據(jù)源Hadoop平臺發(fā)送所述結(jié)構(gòu)化查詢語句SQL ;
[0063]獲取所述海量數(shù)據(jù)源Hadoop平臺根據(jù)所述結(jié)構(gòu)化查詢語句SQL返回的數(shù)據(jù)查詢結(jié)果;
[0064]若與所述關(guān)系數(shù)據(jù)庫建立連接關(guān)系,則向所述關(guān)系數(shù)據(jù)庫發(fā)送所述結(jié)構(gòu)化查詢語句 SQL ;
[0065]獲取所述關(guān)系數(shù)據(jù)庫根據(jù)所述結(jié)構(gòu)化查詢語句SQL返回的數(shù)據(jù)查詢結(jié)果。
[0066]本發(fā)明實施例的海量數(shù)據(jù)的多維分析方法,可以在海量數(shù)據(jù)存儲模式下,實時、高效地進(jìn)行在線多維數(shù)據(jù)分析,且本發(fā)明實施例的海量數(shù)據(jù)的多維分析方法便于基于關(guān)系數(shù)據(jù)庫存儲的多維數(shù)據(jù)分析應(yīng)用快速切換到Hadoop存儲平臺上,并且支持?jǐn)?shù)據(jù)規(guī)??蓴U(kuò)展。
[0067]下面對本發(fā)明的上述實施例舉例說明如下:
[0068]在本發(fā)明的具體實施例中,如圖2所示,數(shù)據(jù)轉(zhuǎn)換抽取存儲組件與元數(shù)據(jù)模型管理組件交互,獲取相應(yīng)的數(shù)據(jù)模型,根據(jù)數(shù)據(jù)模型從第三方數(shù)據(jù)源提取相關(guān)數(shù)據(jù),并轉(zhuǎn)換數(shù)據(jù)、擬合數(shù)據(jù),將處理好的數(shù)據(jù)按照數(shù)據(jù)模型的存儲配置要求上傳至指定的數(shù)據(jù)存儲平臺上。若數(shù)據(jù)量比較大,則在Hadoop海量數(shù)據(jù)存儲平臺上存儲數(shù)據(jù)并指定數(shù)據(jù)文件格式。另夕卜,本發(fā)明實施例的數(shù)據(jù)轉(zhuǎn)換抽取存儲組件可以根據(jù)應(yīng)用的特點,將關(guān)系數(shù)據(jù)庫RDB集群中的數(shù)據(jù)通過Sqoop轉(zhuǎn)儲在Hadoop平臺中。
[0069]其中,Hadoop平臺有多種數(shù)據(jù)存儲組件,例如Hive,HDFS,Hbase等等,數(shù)據(jù)轉(zhuǎn)換抽取存儲組件根據(jù)具體的應(yīng)用特點,將不同的數(shù)據(jù)存儲在不同的存儲組件中。例如應(yīng)用經(jīng)常需要進(jìn)行K-V (Key-Value鍵值)查詢,則這類數(shù)據(jù)存儲在Hbase中較合適。
[0070]同時,數(shù)據(jù)轉(zhuǎn)換抽取存儲組件,可以將不同的數(shù)據(jù)以不同的數(shù)據(jù)格式進(jìn)行存儲。例如:若應(yīng)用事實表字段龐大并且數(shù)據(jù)量規(guī)模大,而數(shù)據(jù)分析往往只選取其中部分字段進(jìn)行分析,此時,將數(shù)據(jù)進(jìn)行列存儲(Parquet列存儲格式);若應(yīng)用配置表數(shù)據(jù)量規(guī)模不大,并且每個字段都會納入數(shù)據(jù)分析,該數(shù)據(jù)表則可存儲為文本格式。
[0071]進(jìn)一步地,當(dāng)單張事實表數(shù)據(jù)量非常龐大時,數(shù)據(jù)轉(zhuǎn)換抽取存儲組件將數(shù)據(jù)進(jìn)行分區(qū)存儲。分區(qū)存儲可以在進(jìn)行數(shù)據(jù)查詢時只選取部分分區(qū)目錄下的數(shù)據(jù),而不是針對總體數(shù)據(jù)量集進(jìn)行查詢,能有效提高數(shù)據(jù)查詢效率。
[0072]本發(fā)明實施例中的元數(shù)據(jù)模型管理組件,包括各類元數(shù)據(jù)的存儲模塊、查詢模塊、維護(hù)模塊、元數(shù)據(jù)模型管理組件與其它組件的通訊接口模塊。如果組件獨立進(jìn)程部署則建立簡單的站點服務(wù)WEBSERVICE接口,例如簡單對象訪問協(xié)議SOAP ;如果組件和其它進(jìn)程合一部署,優(yōu)選地,建立應(yīng)用程序編程接口 API服務(wù)接口。在本發(fā)明的具體實施例中,應(yīng)用根據(jù)自身特點,設(shè)計元數(shù)據(jù)模型(包括多維模型、關(guān)系數(shù)據(jù)模型、數(shù)據(jù)源、數(shù)據(jù)存儲配置等等),并將其存入元數(shù)據(jù)模型管理平臺中。
[0073]本發(fā)明實施例的海量數(shù)據(jù)的多維分析方法,如圖2所示,用戶在界面發(fā)起多維分析查詢請求,或者通過簡單對象訪問協(xié)議SOAP接口發(fā)起多維分析查詢請求;
[0074]服務(wù)端Servlet接收客戶端的多維分析查詢請求并將多維分析查詢請求發(fā)送給多維數(shù)據(jù)模型適配組件;
[0075]多維數(shù)據(jù)模型適配組件從元數(shù)據(jù)模型管理組件獲取與多維分析查詢請求對應(yīng)的多維數(shù)據(jù)模型,并根據(jù)多維數(shù)據(jù)模型適配組件中的多維分析語言MDX解析器對多維數(shù)據(jù)模型進(jìn)行語法解析,同時多維數(shù)據(jù)模型適配組件還對發(fā)起多維分析查詢請求用戶的權(quán)限進(jìn)行分析,得到的立方體多維模型信息、結(jié)構(gòu)化查詢語句SQL以及權(quán)限信息,其中,立方體多維模型信息包括:立方體名稱;
[0076]在本發(fā)明的具體實施例中,多維數(shù)據(jù)模型適配組件可實現(xiàn)多維數(shù)據(jù)邏輯模型與數(shù)據(jù)存儲物理模型之間的適配轉(zhuǎn)換,并進(jìn)行權(quán)限控制。多維數(shù)據(jù)模型適配組件的核心是是根據(jù)MDX規(guī)范實現(xiàn)MDX解析器的功能,該組件與元數(shù)據(jù)模型管理組件交互,獲取多維數(shù)據(jù)模型,MDX解析器根據(jù)多維數(shù)據(jù)模型進(jìn)行語法解析,之后再將二維數(shù)據(jù)結(jié)果按照多維數(shù)據(jù)模型格式轉(zhuǎn)換成多維數(shù)據(jù)結(jié)果。
[0077]數(shù)據(jù)源適配組件根據(jù)數(shù)據(jù)源模型中立方體名稱與數(shù)據(jù)源名稱的關(guān)聯(lián)關(guān)系,獲取與所述立方體名稱匹配的數(shù)據(jù)源模型,并進(jìn)一步獲取與數(shù)據(jù)源模型中的數(shù)據(jù)源名稱匹配的數(shù)據(jù)源。假定該數(shù)據(jù)源為海量數(shù)據(jù)源Hadoop平臺,數(shù)據(jù)源適配組件中的Hadoop適配組件建立與Hadoop平臺的連接通道,并將結(jié)構(gòu)化查詢語句SQL提交到Hadoop平臺;
[0078]海量數(shù)據(jù)源Hadoop平臺中的海量數(shù)據(jù)查詢組件,即Impala/Spark實時數(shù)據(jù)查詢組件,接收結(jié)構(gòu)化查詢語句SQL,實時分析查詢請求并返回數(shù)據(jù)查詢結(jié)果給數(shù)據(jù)源適配組件;
[0079]本發(fā)明的具體實施例中,海量數(shù)據(jù)查詢組件根據(jù)操作中的數(shù)據(jù)特點,從相應(yīng)的數(shù)據(jù)存儲平臺上提取分析數(shù)據(jù),并將數(shù)據(jù)返回。本發(fā)明實施例的海量數(shù)據(jù)查詢組件Impala/Spark支持JDBC/0DBC接口,有效提高了數(shù)據(jù)查詢效率。海量數(shù)據(jù)查詢組件通過JDBC接口與Hadoop適配組件連接,具備實時交互能力,海量數(shù)據(jù)查詢組件根據(jù)SQL查詢語句,實時輸出數(shù)據(jù)查詢結(jié)果。
[0080]數(shù)據(jù)源適配組件將多維數(shù)據(jù)結(jié)果返回給多維數(shù)據(jù)模型適配組件;多維數(shù)據(jù)模型適配組件根據(jù)立方體多維模型信息,將二維的數(shù)據(jù)查詢結(jié)果轉(zhuǎn)換成多維數(shù)據(jù)結(jié)果,并返回給服務(wù)端Servlet,并由服務(wù)端Servlet返回給用戶。
[0081]本發(fā)明實施例的海量數(shù)據(jù)的多維分析方法還包括:多維數(shù)據(jù)結(jié)果展示組件,該組件對多維數(shù)據(jù)結(jié)果集進(jìn)行處理,以界面的方式展示給客戶或者以可擴(kuò)展標(biāo)記語言XML數(shù)據(jù)文件格式傳遞給客戶。該展示組件分為用戶界面UI層和語言層兩個層次,其中,UI層根據(jù)多維數(shù)據(jù)格式渲染表格、圖;語言層將界面上用戶操作轉(zhuǎn)換為多維操作。
[0082]如圖3所示,用戶打開一個多維分析界面,設(shè)置度量指標(biāo):網(wǎng)絡(luò)總流量、增長率;設(shè)置維度:時間、業(yè)務(wù)名稱、業(yè)務(wù)類型、省市、端口類別;設(shè)置切片為空;系統(tǒng)以表格方式呈現(xiàn)多維分析數(shù)據(jù);用戶選擇替換鉆取模式,時間維度下鉆到2014年;省市維度下鉆到城市級別;端口類別維度下鉆到端口維度,用戶可以從這些維度成員級別查看度量數(shù)據(jù)。當(dāng)用戶選擇隱藏空值,選擇圖片顯示模式時,如圖4所示,系統(tǒng)以圖片方式呈現(xiàn)多維分析數(shù)據(jù)結(jié)果。
[0083]本發(fā)明實施例的海量數(shù)據(jù)的多維分析方法,可通過多種方式顯示數(shù)據(jù)結(jié)果,能夠直觀明確地展示數(shù)據(jù)的動態(tài)情況和變化趨勢,較好地實現(xiàn)了 OLAP的多維數(shù)據(jù)分析功能。
[0084]本發(fā)明實施例還提供了一種海量數(shù)據(jù)的多維分析裝置,如圖5所示,包括:
[0085]解析模塊,用于對用戶發(fā)起的多維分析查詢請求進(jìn)行解析處理,得到一解析結(jié)果,所述解析結(jié)果包括:所述多維分析查詢請求對應(yīng)的立方體多維模型信息以及結(jié)構(gòu)化查詢語句 SQL ;
[0086]第一獲取模塊,用于獲取與所述立方體多維模型信息匹配的數(shù)據(jù)源,并與所述數(shù)據(jù)源建立連接關(guān)系,其中,所述數(shù)據(jù)源包括:海量數(shù)據(jù)源Hadoop平臺和/或關(guān)系數(shù)據(jù)庫;
[0087]第二獲取模塊,用于根據(jù)所述連接關(guān)系以及所述結(jié)構(gòu)化查詢語句SQL,從所述海量數(shù)據(jù)源Hadoop平臺或者所述關(guān)系數(shù)據(jù)庫獲取數(shù)據(jù)查詢結(jié)果;
[0088]處理模塊,用于根據(jù)所述立方體多維模型信息,將所述數(shù)據(jù)查詢結(jié)果轉(zhuǎn)換成多維數(shù)據(jù)結(jié)果并返回給用戶。
[0089]本發(fā)明實施例的海量數(shù)據(jù)的多維分析裝置中,所述解析模塊包括:
當(dāng)前第2頁
1 
2 
3