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