專利名稱:多維建模系統(tǒng)和多維建模方法
技術(shù)領(lǐng)域:
本發(fā)明涉及數(shù)據(jù)處理技術(shù)領(lǐng)域,具體而言,涉及一種多維建模系統(tǒng)和一種多維建模方法。
背景技術(shù):
在一些分析報表應(yīng)用中,二維模型已不能滿足企業(yè)的要求。他們要求實現(xiàn)從多個方面查詢業(yè)務(wù)信息,常見的方式是使用OLAP (On-line Analytical Processing,聯(lián)系分析處理)系統(tǒng),通過多個維度和多個指標(biāo),來建立多維度分析模型,獲取分析數(shù)據(jù)。而從模型中獲取數(shù)據(jù)就是要通過MDX (mult1-dimensional expressions,多維表達式)語句來實現(xiàn)。MDX語句和SQL (Structured Query Language,結(jié)構(gòu)化查詢語言)語句一樣,都可以理解為結(jié)構(gòu)化查詢語句,也都有SELECT,F(xiàn)ROM等主要部分組成。但是,MDX語句要比SQL語句復(fù)雜得多,手寫MDX語句很容易出現(xiàn)錯誤。因此,需要一種新的技術(shù)方案,可以通過自動生成復(fù)雜的MDX語句,以代替手寫的方式,從而避免手寫錯誤的發(fā)生。
發(fā)明內(nèi)容
本發(fā)明正是基于上述問題,提出了一種新的技術(shù)方案,可以通過自動生成復(fù)雜的MDX語句,以代替手寫的方式,從而避免手寫錯誤的發(fā)生。有鑒于此,本發(fā)明提出了一種多維建模系統(tǒng),包括:界面生成單元,用于生成可視化操作界面,在所述可視化操作界面上顯示出可選業(yè)務(wù)操作對應(yīng)的圖標(biāo)以及相應(yīng)的操作功能菜單選項;模型選擇單元,用于根據(jù)用戶的選擇操作,從所述可視化操作界面中進行選擇,以確定多維立方體模型;信息定義單元,用于在所述可視化操作界面中定義所述多維立方體模型中的行維度和/或列維度、指標(biāo);語句生成單元,用于利用所述多維立方體模型的類型信息、所述行維度和/或列維度和所述指標(biāo)生成相應(yīng)的查詢語句。在該技術(shù)方案中,通過生成可視化操作界面,從而使得用戶僅需要在該界面內(nèi)進行選擇操作,即可基于用戶選中的信息生成相應(yīng)的查詢語句,實現(xiàn)多維建模,以獲取分析數(shù)據(jù)。在上述技術(shù)方案中,優(yōu)選地,所述查詢語句為MDX語句。在上述技術(shù)方案中,優(yōu)選地,所述語句生成單元將所述立方體模型的類型信息拼接至MDX語句的FROM子句上,將所述行維度和/或列維度、所述指標(biāo)拼接至MDX語句的SELECT子句上,然后將FROM子句和SELECT子句拼接成MDX語句。在上述技術(shù)方案中,優(yōu)選地,所述語句生成單元將所述指標(biāo)拼接至SELECT子句的COLUMN 部分。在上述技術(shù)方案中,優(yōu)選地,所述界面生成單元利用樹形結(jié)構(gòu)對所述可選業(yè)務(wù)操作進行顯示。根據(jù)本發(fā)明的又一方面,還提出了一種多維建模方法,包括:步驟202,生成可視化操作界面,在所述可視化操作界面上顯示出可選業(yè)務(wù)操作對應(yīng)的圖標(biāo)以及相應(yīng)的操作功能菜單選項;步驟204,根據(jù)用戶的選擇操作,從所述可視化操作界面中進行選擇,以確定多維立方體模型;步驟206,在所述可視化操作界面中定義所述多維立方體模型中的行維度和/或列維度;步驟208,在所述可視化操作界面中定義所述多維立方體模型中的指標(biāo);步驟210,利用所述多維立方體模型的類型信息、所述行維度和/或列維度和所述指標(biāo)生成相應(yīng)的查詢語句。在該技術(shù)方案中,通過生成可視化操作界面,從而使得用戶僅需要在該界面內(nèi)進行選擇操作,即可基于用戶選中的信息生成相應(yīng)的查詢語句,實現(xiàn)多維建模,以獲取分析數(shù)據(jù)。在上述技術(shù)方案中,優(yōu)選地,所述查詢語句為MDX語句。在上述技術(shù)方案中,優(yōu)選地,所述步驟210包括:將所述立方體模型的類型信息拼接至MDX語句的FROM子句上,將所述行維度和/或列維度、所述指標(biāo)拼接至MDX語句的SELECT子句上,然后將FROM子句和SELECT子句拼接成MDX語句。在上述技術(shù)方案中,優(yōu)選地,將所述指標(biāo)拼接至SELECT子句的COLUMN部分。在上述技術(shù)方案中,優(yōu)選地,還包括:利用樹形結(jié)構(gòu)對所述可選業(yè)務(wù)操作進行顯
/Jn ο通過以上技術(shù)方案,可以通過自動生成復(fù)雜的MDX語句,以代替手寫的方式,從而避免手寫錯誤的發(fā)生。
圖1示出了根據(jù)本發(fā)明的實施例的多維建模系統(tǒng)的框圖;圖2示出了根據(jù)本發(fā)明的實施例的多維建模方法的流程圖;圖3示出了根據(jù)本發(fā)明的實施例的執(zhí)行多維建模的具體流程圖;圖4示出了根據(jù)本發(fā)明的實施例的執(zhí)行多維建模所需的功能模塊的結(jié)構(gòu)示意圖;圖5示出了根據(jù)本發(fā)明的實施例的執(zhí)行多維建模的運行界面效果圖。
具體實施例方式為了能夠更清楚地理解本發(fā)明的上述目的、特征和優(yōu)點,下面結(jié)合附圖和具體實施方式
對本發(fā)明進行進一步的詳細描述。需要說明的是,在不沖突的情況下,本申請的實施例及實施例中的特征可以相互組合。在下面的描述中闡述了很多具體細節(jié)以便于充分理解本發(fā)明,但是,本發(fā)明還可以采用其他不同于在此描述的其他方式來實施,因此,本發(fā)明的保護范圍并不受下面公開的具體實施例的限制。圖1示出了根據(jù)本發(fā)明的實施例的多維建模系統(tǒng)的框圖。如圖1所示,根據(jù)本發(fā)明的實施例的多維建模系統(tǒng)100,包括:界面生成單元102,用于生成可視化操作界面,在所述可視化操作界面上顯示出可選業(yè)務(wù)操作對應(yīng)的圖標(biāo)以及相應(yīng)的操作功能菜單選項;模型選擇單元104,用于根據(jù)用戶的選擇操作,從所述可視化操作界面中進行選擇,以確定多維立方體模型;信息定義單元106,用于在所述可視化操作界面中定義所述多維立方體模型中的行維度和/或列維度、指標(biāo);語句生成單元108,用于利用所述多維立方體模型的類型信息、所述行維度和/或列維度和所述指標(biāo)生成相應(yīng)的查詢語句。在該技術(shù)方案中,通過生成可視化操作界面,從而使得用戶僅需要在該界面內(nèi)進行選擇操作,即可基于用戶選中的信息生成相應(yīng)的查詢語句,實現(xiàn)多維建模,以獲取分析數(shù)據(jù)。在上述技術(shù)方案中,優(yōu)選地,所述查詢語句為MDX語句。在上述技術(shù)方案中,優(yōu)選地,所述語句生成單元108將所述立方體模型的類型信息拼接至MDX語句的FROM子句上,將所述行維度和/或列維度、所述指標(biāo)拼接至MDX語句的SELECT子句上,然后將FROM子句和SELECT子句拼接成MDX語句。在上述技術(shù)方案中,優(yōu)選地,所述語句生成單元108將所述指標(biāo)拼接至SELECT子句的COLUMN部分。在上述技術(shù)方案中,優(yōu)選地,所述界面生成單元102利用樹形結(jié)構(gòu)對所述可選業(yè)務(wù)操作進行顯示。圖2示出了根據(jù)本發(fā)明的實施例的多維建模方法的流程圖。如圖2所示,根據(jù)本發(fā)明的實施例的多維建模方法,包括:步驟202,生成可視化操作界面,在所述可視化操作界面上顯示出可選業(yè)務(wù)操作對應(yīng)的圖標(biāo)以及相應(yīng)的操作功能菜單選項;步驟204,根據(jù)用戶的選擇操作,從所述可視化操作界面中進行選擇,以確定多維立方體模型;步驟206,在所述可視化操作界面中定義所述多維立方體模型中的行維度和/或列維度;步驟208,在所述可視化操作界面中定義所述多維立方體模型中的指標(biāo);步驟210,利用所述多維立方體模型的類型信息、所述行維度和/或列維度和所述指標(biāo)生成相應(yīng)的查詢語句。在該技術(shù)方案中,通過生成可視化操作界面,從而使得用戶僅需要在該界面內(nèi)進行選擇操作,即可基于用戶選中的信息生成相應(yīng)的查詢語句,實現(xiàn)多維建模,以獲取分析數(shù)據(jù)。在上述技術(shù)方案中,優(yōu)選地,所述查詢語句為MDX語句。在上述技術(shù)方案中,優(yōu)選地,所述步驟210包括:將所述立方體模型的類型信息拼接至MDX語句的FROM子句上,將所述行維度和/或列維度、所述指標(biāo)拼接至MDX語句的SELECT子句上,然后將FROM子句和SELECT子句拼接成MDX語句。在上述技術(shù)方案中,優(yōu)選地,將所述指標(biāo)拼接至SELECT子句的COLUMN部分。在上述技術(shù)方案中,優(yōu)選地,還包括:利用樹形結(jié)構(gòu)對所述可選業(yè)務(wù)操作進行顯
/Jn ο圖3示出了根據(jù)本發(fā)明的實施例的執(zhí)行多維建模的具體流程圖。如圖3所示,根據(jù)本發(fā)明的實施例的執(zhí)行多維建模的具體流程包括:第一步:選擇一個多維立方體模型,該模型上定義了要查詢的數(shù)據(jù)信息,包括行列維度和指標(biāo)維度。該立方體模型會拼接到MDX語句的FROM子句上。這一步是后面選擇行列維度和指標(biāo)維度的基礎(chǔ)。第二步:定義MDX中的行列維度。維度信息會拼接到MDX語句的SELECT子句上。行列維度都是可選的,但是不能一個都不選,至少要選擇一個。為了實現(xiàn)的準(zhǔn)確性,應(yīng)按照實際需求進行選擇。第三步:定義指標(biāo),也叫度量值。度量值是最終用戶瀏覽多維數(shù)據(jù)集時重點查看的數(shù)字數(shù)據(jù)。最終會拼接到SELECT子句上。第四步:生成MDX語句。圖4示出了根據(jù)本發(fā)明的實施例的執(zhí)行多維建模所需的功能模塊的結(jié)構(gòu)示意圖。如圖4所示,根據(jù)本發(fā)明的實施例的執(zhí)行多維建模所需的功能模塊的結(jié)構(gòu)包括:
多維立方體模型選擇器:選擇一個多維立方體模型,模型提供行列維度和指標(biāo)選擇的立方體模型會拼接到FROM子句上,例如:FR0M cube_name。列維度定義器:定義查詢分析的列維度,對應(yīng)最終顯示的二維數(shù)據(jù)集的列。選中的列會拼接到MDX語句的SELECT子句上,每個列維度都用[]括起,外圍加{},形如{[column_specification]},多個之間用逗號隔開,兩兩之間用CrossjoinO括起。然后,后面再拼接ON COLUMNS 關(guān)鍵字。行維度定義器:定義查詢分析的行維度,對應(yīng)最終顯示的二維數(shù)據(jù)集的行。選中的行會拼接到MDX語句的SELECT子句上,每個行維度用[]括起,外圍加{},形如{[row_specification]},多個之間用逗號隔開,兩兩之間用CrossjoinO括起。然后,后面再拼接ON ROWS關(guān)鍵字。并且,行維度部分和列維度部分用逗號隔開。指標(biāo)定義器:定義查詢分析的指標(biāo),一般為數(shù)字。是最終用戶瀏覽多維數(shù)據(jù)集時要重點查看的數(shù)字數(shù)據(jù)。本發(fā)明中,將指標(biāo)拼接到SELECT子句的COLUMN部分。形如[Measures].[Member],多個之間用逗號隔開。如果列維度也有定義,則列維度和指標(biāo)之間用 CrossjoinO 括起。MDX生成器:將SELECT和FROM子句拼接到一起。圖5示出了根據(jù)本發(fā)明的實施例的執(zhí)行多維建模的運行界面效果圖,其中,上半部分為生成的用于用戶執(zhí)行選擇操作的可視化操作界面,而下半部分為根據(jù)用戶的選擇,自動生成的MDX語句。以上結(jié)合附圖詳細說明了本發(fā)明的技術(shù)方案,本發(fā)明將MDX語句拆分成SELECT,F(xiàn)ROM連個主要部分,分別對應(yīng)每個部分做界面實現(xiàn),后臺做MDX語句的拼接操作。省去了手寫MDX的過程,避免手寫MDX發(fā)生錯誤的可能,提高了執(zhí)行的準(zhǔn)確性。以上所述僅為本發(fā)明的優(yōu)選實施例而已,并不用于限制本發(fā)明,對于本領(lǐng)域的技術(shù)人員來說,本發(fā)明可以有各種更改和變化。凡在本發(fā)明的精神和原則之內(nèi),所作的任何修改、等同替換、改進等,均應(yīng)包含在本發(fā)明的保護范圍之內(nèi)。
權(quán)利要求
1.一種多維建模系統(tǒng),其特征在于,包括: 界面生成單元,用于生成可視化操作界面,在所述可視化操作界面上顯示出可選業(yè)務(wù)操作對應(yīng)的圖標(biāo)以及相應(yīng)的操作功能菜單選項; 模型選擇單元,用于根據(jù)用戶的選擇操作,從所述可視化操作界面中進行選擇,以確定多維立方體模型; 信息定義單元,用于在所述可視化操作界面中定義所述多維立方體模型中的行維度和/或列維度、指標(biāo); 語句生成單元,用于利用所述多維立方體模型的類型信息、所述行維度和/或列維度和所述指標(biāo)生成相應(yīng)的查詢語句。
2.根據(jù)權(quán)利要求1所述的多維建模系統(tǒng),其特征在于,所述查詢語句為MDX語句。
3.根據(jù)權(quán)利要求2所述的多維建模系統(tǒng),其特征在于,所述語句生成單元將所述立方體模型的類型信息拼接至MDX語句的FROM子句上,將所述行維度和/或列維度、所述指標(biāo)拼接至MDX語句的SELECT子句上,然后將FROM子句和SELECT子句拼接成MDX語句。
4.根據(jù)權(quán)利要求3所述的多維建模系統(tǒng),其特征在于,所述語句生成單元將所述指標(biāo)拼接至SELECT子句的COLUMN部分。
5.根據(jù)權(quán)利要求1至4中任一項所述的多維建模系統(tǒng),其特征在于,所述界面生成單元利用樹形結(jié)構(gòu)對所述可選業(yè)務(wù)操作進行顯示。
6.—種多維建模方法,其特征在于,包括: 步驟202,生成可視化操作界面,在所述可視化操作界面上顯示出可選業(yè)務(wù)操作對應(yīng)的圖標(biāo)以及相應(yīng)的操作功能菜單選項; 步驟204,根據(jù)用戶的選擇操作,從所述可視化操作界面中進行選擇,以確定多維立方體模型; 步驟206,在所述可視化操作界面中定義所述多維立方體模型中的行維度和/或列維度; 步驟208,在所述可視化操作界面中定義所述多維立方體模型中的指標(biāo); 步驟210,利用所述多維立方體模型的類型信息、所述行維度和/或列維度和所述指標(biāo)生成相應(yīng)的查詢語句。
7.根據(jù)權(quán)利要求6所述的多維建模方法,其特征在于,所述查詢語句為MDX語句。
8.根據(jù)權(quán)利要求7所述的多維建模方法,其特征在于,所述步驟210包括: 將所述立方體模型的類型信息拼接至MDX語句的FROM子句上,將所述行維度和/或列維度、所述指標(biāo)拼接至MDX語句的SELECT子句上,然后將FROM子句和SELECT子句拼接成MDX語句。
9.根據(jù)權(quán)利要求8所述的多維建模方法,其特征在于,將所述指標(biāo)拼接至SELECT子句的COLUMN部分。
10.根據(jù)權(quán)利要求6至9中任一項所述的多維建模方法,其特征在于,還包括: 利用樹形結(jié)構(gòu)對所述可選業(yè)務(wù)操作進行顯示。
全文摘要
本發(fā)明提供了一種多維建模系統(tǒng),包括界面生成單元,用于生成可視化操作界面,在所述可視化操作界面上顯示出可選業(yè)務(wù)操作對應(yīng)的圖標(biāo)以及相應(yīng)的操作功能菜單選項;模型選擇單元,用于根據(jù)用戶的選擇操作,從所述可視化操作界面中進行選擇,以確定多維立方體模型;信息定義單元,用于在可視化操作界面中定義所述多維立方體模型中的行維度和/或列維度、指標(biāo);語句生成單元,用于利用所述多維立方體模型的類型信息、所述行維度和/或列維度和所述指標(biāo)生成相應(yīng)的查詢語句。本發(fā)明還提出了一種多維建模方法。通過本發(fā)明的技術(shù)方案,可以將MDX的各個部分獨立開來,使用圖形界面單獨的生成每一個部分,然后在將各個部分組合成一個完整的MDX語句。
文檔編號G06F9/44GK103164222SQ20131005900
公開日2013年6月19日 申請日期2013年2月25日 優(yōu)先權(quán)日2013年2月25日
發(fā)明者張一桐 申請人:用友軟件股份有限公司