一種快速構(gòu)建企業(yè)關(guān)鍵業(yè)績指標(biāo)的方法和系統(tǒng)的制作方法
【專利摘要】本申請?zhí)峁┝艘环N快速構(gòu)建企業(yè)關(guān)鍵業(yè)績指標(biāo)的方法和系統(tǒng),用以解決當(dāng)KPI指標(biāo)越來越多,指標(biāo)的統(tǒng)計口徑變更比較頻繁時,指標(biāo)的開發(fā)工作量大的問題。所述方法包括:預(yù)先配置分組配置表和指標(biāo)實現(xiàn)配置表;依據(jù)調(diào)用命令中的標(biāo)識參數(shù)在分組配置表中查找出對應(yīng)的SQL-ID;根據(jù)所述SQL-ID獲取指標(biāo)實現(xiàn)配置表中對應(yīng)的SQL腳本,所述對應(yīng)SQL-ID的SQL腳本中包含多個指標(biāo)的SQL語句;通過解析并執(zhí)行所述SQL腳本中的語句來完成指標(biāo)的計算,并將指標(biāo)計算結(jié)果寫入中間過程表中;將中間過程表中的數(shù)據(jù)生成到事實表中。本申請?zhí)岣吡酥笜?biāo)的開發(fā)效率,大大減輕了工作量。
【專利說明】ー種快速構(gòu)建企業(yè)關(guān)鍵業(yè)績指標(biāo)的方法和系統(tǒng)
【技術(shù)領(lǐng)域】
[0001]本申請涉及指標(biāo)系統(tǒng)【技術(shù)領(lǐng)域】,特別是涉及ー種快速構(gòu)建企業(yè)關(guān)鍵業(yè)績指標(biāo)的方法和系統(tǒng)。
【背景技術(shù)】
[0002]KPI指標(biāo)(Key Performance Indication)即關(guān)鍵業(yè)績指標(biāo),是通過對組織內(nèi)部某一流程的輸入端、輸出端的關(guān)鍵參數(shù)進(jìn)行設(shè)置、取樣、計算、分析,衡量流程績效的一種目標(biāo)式量化管理指標(biāo),是把企業(yè)的戰(zhàn)略目標(biāo)分解為可運作的遠(yuǎn)景目標(biāo)的工具,是企業(yè)績效管理系統(tǒng)的基礎(chǔ)。KPI是現(xiàn)代企業(yè)中受到普遍重視的業(yè)績考評方法,KPI可以使部門主管明確部門的主要責(zé)任,并以此為基礎(chǔ),明確部門人員的業(yè)績衡量指標(biāo),使業(yè)績考評建立在量化的基礎(chǔ)之上,建立明確的切實可行的KPI指標(biāo)體系是做好績效管理的關(guān)鍵。
[0003]數(shù)據(jù)倉庫的指標(biāo)系統(tǒng)采用的是日期、指標(biāo)ID和指標(biāo)值的存儲策略,要實現(xiàn)指標(biāo)的計算常采用的是程序或腳本實現(xiàn)。傳統(tǒng)的KPI指標(biāo)開發(fā),是在程序中利用一段腳本來實現(xiàn)ー個指標(biāo)。如圖1所示,是現(xiàn)有技術(shù)中構(gòu)建KPI指標(biāo)的處理流程,包括一個維度表DM_KPI_BASE和一個事實表ST_KPI_BASE_DS,中間通過程序1、程序2、程序3、程序4等腳本來實現(xiàn)往事實表ST_KPI_BASE_DS中寫數(shù)據(jù)。后續(xù)有新增指標(biāo)需要計算的時候,需要増加相應(yīng)的程序5、程序6等程序來實現(xiàn)。通過這種方式,可以快速實現(xiàn)指標(biāo)的開發(fā),當(dāng)公司的KPI指標(biāo)量比較少,而且指標(biāo)的統(tǒng)計口徑(即指標(biāo)的統(tǒng)計規(guī)則)相對穩(wěn)定的時候,這種方式是ー種比較合理的方案。
[0004]但是,當(dāng)KPI指標(biāo)的量越來越多,指標(biāo)的統(tǒng)計口徑變更比較頻繁的時候,采用上述構(gòu)建指標(biāo)的方法會存在如下問題:由于現(xiàn)有的指標(biāo)構(gòu)建方法中每個指標(biāo)都是通過一段獨立的程序或腳本實現(xiàn),當(dāng)新增KPI指標(biāo)或者需要修改KPI指標(biāo)的統(tǒng)計口徑吋,需要重新開發(fā)ー批腳本或修改相應(yīng)的腳本,指標(biāo)的個數(shù)同開發(fā)工作量成正比,開發(fā)效率比較低下。
【發(fā)明內(nèi)容】
[0005]本申請所要解決的技術(shù)問題是提供ー種快速構(gòu)建企業(yè)關(guān)鍵業(yè)績指標(biāo)的方法和系統(tǒng),用以解決當(dāng)KPI指標(biāo)越來越多,指標(biāo)的統(tǒng)計口徑變更比較頻繁時,指標(biāo)的開發(fā)工作量大的問題。
[0006]為了解決上述問題,本申請公開了ー種快速構(gòu)建企業(yè)關(guān)鍵業(yè)績指標(biāo)的方法,包括:
[0007]預(yù)先配置分組配置表和指標(biāo)實現(xiàn)配置表;
[0008]依據(jù)調(diào)用命令中的標(biāo)識參數(shù)在分組配置表中查找出對應(yīng)的SQL-1D ;
[0009]根據(jù)所述SQL-1D獲取指標(biāo)實現(xiàn)配置表中對應(yīng)的SQL腳本,所述對應(yīng)SQL-1D的SQL腳本中包含多個指標(biāo)的SQL語句;
[0010]通過解析并執(zhí)行所述SQL腳本中的語句來完成指標(biāo)的計算,并將指標(biāo)計算結(jié)果寫入中間過程表中;[0011]將中間過程表中的數(shù)據(jù)生成到事實表中。
[0012]優(yōu)選地,所述分組配置表中包括分組字段和SQL-1D字段,其中,每個分組字段中包括ー個或多個SQL-1D字段。
[0013]優(yōu)選地,所述標(biāo)識參數(shù)為分組參數(shù),所述依據(jù)調(diào)用命令中的標(biāo)識參數(shù)在分組配置表中查找出對應(yīng)的SQL-1D,包括:將所述調(diào)用命令中的分組參數(shù)與分組配置表中的分組字段進(jìn)行匹配;將相匹配的分組字段中的所有SQL-1D作為與所述標(biāo)識參數(shù)對應(yīng)的SQL-1D。
[0014]優(yōu)選地,所述標(biāo)識參數(shù)為分組參數(shù)和SQL-1D參數(shù),所述依據(jù)調(diào)用命令中的標(biāo)識參數(shù)在分組配置表中查找出對應(yīng)的SQL-1D,包括:將所述調(diào)用命令中的分組參數(shù)與分組配置表中的分組字段進(jìn)行匹配;將所述調(diào)用命令中的SQL-1D參數(shù)與相匹配的分組字段中的SQL-1D字段進(jìn)行匹配;將相匹配的SQL-1D作為與所述標(biāo)識參數(shù)對應(yīng)的SQL-1D。
[0015]優(yōu)選地,所述指標(biāo)實現(xiàn)配置表中包括SQL-1D字段和對應(yīng)的SQL字段,其中,每個SQL字段對應(yīng)ー個SQL腳本;根據(jù)所述SQL-1D獲取指標(biāo)實現(xiàn)配置表中對應(yīng)的SQL腳本,包括:將所述指標(biāo)實現(xiàn)配置表與所述分組配置表通過SQL-1D字段關(guān)聯(lián),并在所述指標(biāo)實現(xiàn)配置表中查找與所述SQL-1D相匹配的SQL字段;獲取相匹配的SQL-1D字段對應(yīng)的SQL字段下的SQL腳本。
[0016]優(yōu)選地,所述調(diào)用命令中還包括日期參數(shù),根據(jù)所述SQL-1D獲取指標(biāo)實現(xiàn)配置表中對應(yīng)的SQL腳本之后,還包括:用所述調(diào)用命令中的日期參數(shù)替換所述SQL腳本中的日期參數(shù)。
[0017]優(yōu)選地,所述中間過程表中包括SQL-1D字段、COLUMN字段和日期字段,其中,每個SQL-1D字段對應(yīng)多個COLUMN字段,每個COLUMN字段對應(yīng)ー個指標(biāo)計算結(jié)果。
[0018]優(yōu)選地,所述方法還包括:配置用于指標(biāo)定義的維度表,所述維度表中包括SQL-1D字段和插入結(jié)果集對應(yīng)SQL字段,所述插入結(jié)果集對應(yīng)SQL字段中指定了 COLUMN字段;所述將中間過程表中的數(shù)據(jù)生成到事實表中,包括:將所述中間過程表與所述維度表通過SQL-1D字段關(guān)聯(lián),并在所述中間過程表中查找與所述維度表中的SQL-1D相匹配的SQL-1D字段;在所述SQL-1D字段下,將插入結(jié)果集對應(yīng)SQL字段中指定的COLUMN字段的指標(biāo)計算結(jié)果寫入事實表中。
[0019]優(yōu)選地,所述方法還包括:在維度表中對新增指標(biāo)配置指標(biāo)的定義,并對維度表中的SQL-1D字段和插入結(jié)果集對應(yīng)SQL字段進(jìn)行更新;將新增指標(biāo)對應(yīng)的SQL語句插入指標(biāo)實現(xiàn)配置表中對應(yīng)的SQL腳本中。
[0020]優(yōu)選地,所述方法還包括:對分組配置表中的分組字段和/或SQL-1D字段進(jìn)行更新。
[0021]本申請還提供了ー種快速構(gòu)建企業(yè)關(guān)鍵業(yè)績指標(biāo)的系統(tǒng),包括:
[0022]第一配置模塊,用于預(yù)先配置分組配置表和指標(biāo)實現(xiàn)配置表;
[0023]查找模塊,用于依據(jù)調(diào)用命令中的標(biāo)識參數(shù)在分組配置表中查找出對應(yīng)的SQL-1D ;
[0024]獲取模塊,用于根據(jù)所述SQL-1D獲取指標(biāo)實現(xiàn)配置表中對應(yīng)的SQL腳本,所述對應(yīng)SQL-1D的SQL腳本中包含多個指標(biāo)的SQL語句;
[0025]計算模塊,用于通過解析并執(zhí)行所述SQL腳本中的語句來完成指標(biāo)的計算,并將指標(biāo)計算結(jié)果寫入中間過程表中;[0026]生成模塊,用于將中間過程表中的數(shù)據(jù)生成到事實表中。
[0027]優(yōu)選地,所述分組配置表中包括分組字段和SQL-1D字段,其中,每個分組字段中包括ー個或多個SQL-1D字段。
[0028]優(yōu)選地,所述指標(biāo)實現(xiàn)配置表中包括SQL-1D字段和對應(yīng)的SQL字段,其中,每個SQL字段對應(yīng)ー個SQL腳本;所述獲取模塊包括:第一查找子模塊,用于將所述指標(biāo)實現(xiàn)配置表與所述分組配置表通過SQL-1D字段關(guān)聯(lián),并在所述指標(biāo)實現(xiàn)配置表中查找與所述SQL-1D相匹配的SQL字段;獲取子模塊,用于獲取相匹配的SQL-1D字段對應(yīng)的SQL字段下的SQL腳本。
[0029]優(yōu)選地,所述調(diào)用命令中還包括日期參數(shù),所述系統(tǒng)還包括:替換模塊,用于在根據(jù)所述SQL-1D獲取指標(biāo)實現(xiàn)配置表中對應(yīng)的SQL腳本之后,用所述調(diào)用命令中的日期參數(shù)替換所述SQL腳本中的日期參數(shù)。
[0030]優(yōu)選地,所述中間過程表中包括SQL-1D字段、COLUMN字段和日期字段,其中,每個SQL-1D字段對應(yīng)多個COLUMN字段,每個COLUMN字段對應(yīng)ー個指標(biāo)計算結(jié)果。
[0031]優(yōu)選地,所述系統(tǒng)還包括:第二配置模塊,用于配置用于指標(biāo)定義的維度表,所述維度表中包括SQL-1D字段和插入結(jié)果集對應(yīng)SQL字段,所述插入結(jié)果集對應(yīng)SQL字段中指定了 COLUMN字段;所述生成模塊包括:第二查找子模塊,用于將所述中間過程表與所述維度表通過SQL-1D字段關(guān)聯(lián),并在所述中間過程表中查找與所述維度表中的SQL-1D相匹配的SQL-1D字段;寫入子模塊,用于在所述SQL-1D字段下,將插入結(jié)果集對應(yīng)SQL字段中指定的COLUMN字段的指標(biāo)計算結(jié)果寫入事實表中。
[0032]優(yōu)選地,所述系統(tǒng)還包括:第一更新模塊,用于在維度表中對新增指標(biāo)配置指標(biāo)的定義,并對維度表中的SQL-1D字段和插入結(jié)果集對應(yīng)SQL字段進(jìn)行更新;插入模塊,用于將新增指標(biāo)對應(yīng)的SQL語句插入指標(biāo)實現(xiàn)配置表中對應(yīng)的SQL腳本中;第二更新模塊,用于對分組配置表中的分組字段和/或SQL-1D字段進(jìn)行更新。
[0033]與現(xiàn)有技術(shù)相比,本申請包括以下優(yōu)點:
[0034]首先,本申請擯棄了原有的每個指標(biāo)都是通過一段獨立的程序或腳本實現(xiàn)的方法,搭建好底層的指標(biāo)池處理平臺,預(yù)先配置指標(biāo)實現(xiàn)配置表以及中間過程表。在指標(biāo)實現(xiàn)配置表中SQL-1D字段對應(yīng)的SQL腳本中包含多個指標(biāo)的SQL語句,從而使多個指標(biāo)通過ー段SQL腳本實現(xiàn),當(dāng)后續(xù)需要新增指標(biāo)開發(fā)時,只需往指標(biāo)實現(xiàn)配置表中配入相應(yīng)的SQL腳本,然后系統(tǒng)自動通過循環(huán)讀取的方式來實現(xiàn)指標(biāo)數(shù)據(jù)的生成。并且在中間過程表中每個SQL-1D字段對應(yīng)多個COLUMN字段,每個COLUMN字段對應(yīng)ー個指標(biāo)計算結(jié)果,實現(xiàn)了同時將多個指標(biāo)的計算結(jié)果生成到事實表中,提高了指標(biāo)的開發(fā)效率,大大減輕了工作量。
[0035]其次,指標(biāo)的開發(fā)過程中引入分組配置表,可以預(yù)先將某些具有關(guān)聯(lián)的指標(biāo)(即指標(biāo)的實現(xiàn)腳本之間具有公用的地方)分配到同一組中,后續(xù)有與該組指標(biāo)的實現(xiàn)腳本公用的指標(biāo)的時候,可以直接在該組指標(biāo)所對應(yīng)的SQL字段進(jìn)行擴(kuò)展,而不用新增一段全新的腳本,避免類似指標(biāo)的重復(fù)開發(fā),減少計算量。
[0036]最后,本申請中每個指標(biāo)的具體實現(xiàn)代碼都存放在指標(biāo)實現(xiàn)配置表中,并且在配置的維度表中,除了指標(biāo)的固有屬性外,増加了 SQL-1D字段和插入結(jié)果集對應(yīng)SQL字段,通過SQL-1D字段即可將維度表和指標(biāo)實現(xiàn)配置表進(jìn)行關(guān)聯(lián),依據(jù)所述SQL-1D獲取指標(biāo)實現(xiàn)配置表中對應(yīng)的SQL腳本,使得指標(biāo)的定義和指標(biāo)的實現(xiàn)關(guān)聯(lián)起來,當(dāng)用戶看到一個指標(biāo)的時候,能夠直接查看到后臺計算的具體邏輯,從而實現(xiàn)指標(biāo)的源碼開放透明,降低指標(biāo)的維護(hù)成本。
【專利附圖】
【附圖說明】
[0037]圖1是現(xiàn)有技術(shù)中構(gòu)建KPI指標(biāo)的處理流程示意圖;
[0038]圖2是本申請實施例所述ー種快速構(gòu)建企業(yè)關(guān)鍵業(yè)績指標(biāo)的表結(jié)構(gòu)邏輯示意圖;
[0039]圖3是本申請實施例所述ー種快速構(gòu)建企業(yè)關(guān)鍵業(yè)績指標(biāo)的方法流程圖;
[0040]圖4是本申請實施例所述預(yù)先配置分組配置表和指標(biāo)實現(xiàn)配置表的方法流程圖;
[0041]圖5是本申請實施例所述依據(jù)調(diào)用命令中的標(biāo)識參數(shù)在分組配置表中查找出對應(yīng)的SQL-1D方法實施例一的流程圖;
[0042]圖6是本申請實施例所述依據(jù)調(diào)用命令中的標(biāo)識參數(shù)在分組配置表中查找出對應(yīng)的SQL-1D方法實施例ニ的流程圖;
[0043]圖7是本申請實施例所述根據(jù)所述SQL-1D獲取指標(biāo)實現(xiàn)配置表中對應(yīng)的SQL腳本的方法流程圖;
[0044]圖8是本申請實施例所述將中間過程表中的數(shù)據(jù)生成到事實表中的方法流程圖;
[0045]圖9是本申請實施例所述ー種快速構(gòu)建企業(yè)關(guān)鍵業(yè)績指標(biāo)的底層封裝腳本示意圖;
[0046]圖10是本申請實施例所述ー種快速構(gòu)建企業(yè)關(guān)鍵業(yè)績指標(biāo)的方法中新增指標(biāo)的方法的流程圖;
[0047]圖11是本申請實施例所述ー種快速構(gòu)建企業(yè)關(guān)鍵業(yè)績指標(biāo)的系統(tǒng)結(jié)構(gòu)圖。
【具體實施方式】
[0048]為使本申請的上述目的、特征和優(yōu)點能夠更加明顯易懂,下面結(jié)合附圖和【具體實施方式】對本申請作進(jìn)一步詳細(xì)的說明。
[0049]為了有效解決現(xiàn)有技術(shù)中存在的問題,本申請擯棄了現(xiàn)有的指標(biāo)構(gòu)建中每個指標(biāo)都是通過一段獨立的程序或腳本實現(xiàn)的方法,在指標(biāo)的構(gòu)建過程中,増加了指標(biāo)實現(xiàn)配置表、分組配置表以及中間過程表,并且在配置的維度表中増加了 SQL-1D字段和插入結(jié)果集對應(yīng)SQL字段。后續(xù)的指標(biāo)開發(fā)全都通過配置的方式實現(xiàn),大大減輕了開發(fā)的工作量。而且,可以實現(xiàn)代碼的開放透明,可以減輕指標(biāo)的開發(fā)維護(hù)成本。并且,通過一段腳本實現(xiàn)多個指標(biāo)的計算,可以有效地減少系統(tǒng)的計算量,節(jié)省計算資源。由于每一指標(biāo)的實現(xiàn)編碼可見,可以達(dá)到對指標(biāo)進(jìn)行有效的管理。
[0050]下面通過實施例進(jìn)行詳細(xì)說明。
[0051]參照圖2,示出了本申請實施例所述ー種快速構(gòu)建企業(yè)關(guān)鍵業(yè)績指標(biāo)的表結(jié)構(gòu)邏輯示意圖,在該處理流程中,通過分組配置表DM_KPI_SQL_CFG_GROUP、指標(biāo)實現(xiàn)配置表DIM_KPI_SQL_CFG,中間過程表 DW_KPI_H0R_DS、維度表 DM_KPI_BASE 以及事實表 ST_KPI_BASE_DS完成數(shù)據(jù)的存儲、調(diào)用等操作,從而實現(xiàn)企業(yè)關(guān)鍵業(yè)績指標(biāo)的快速構(gòu)建。
[0052]下面,分別對上述幾種表進(jìn)行詳細(xì)介紹:
[0053]1、分組配置表 DM_KPI_SQL_CFG_GROUP
[0054]隨著企業(yè)需求的不斷増加,企業(yè)的關(guān)鍵業(yè)績指標(biāo)(KPI指標(biāo))會不斷地增多,例如企業(yè)每天的業(yè)務(wù)量或者交易量不斷増加,因此后續(xù)會增加許多新的KPI指標(biāo)。當(dāng)KPI指標(biāo)的數(shù)量越來越多時,有些指標(biāo)之間是有關(guān)聯(lián)的,如果不能做好指標(biāo)管理,就有可能造成指標(biāo)的重復(fù)開發(fā),浪費計算資源。
[0055]其中,KPI指標(biāo)之間相關(guān)聯(lián)可能是多個KPI指標(biāo)來源于同一個來源表,或者多個KPI指標(biāo)之間的近似度很高。例如,對于系統(tǒng)用戶的交易量以及外部商家的交易量,兩者都是來源于同一個來源表(交易表)中,則這兩個KPI指標(biāo)是相關(guān)聯(lián)的。
[0056]當(dāng)然,本申請實施例中所述的指標(biāo)之間的關(guān)聯(lián)關(guān)系還可能包括其他情況,本申請對此并不加以限制。
[0057]為了解決上述問題,本申請實施例在構(gòu)建企業(yè)關(guān)鍵業(yè)績指標(biāo)(KPI指標(biāo))的過程中,增加了分組配置表DIM_KPI_SQL_CFG_GROUP,所述分組配置表中包括分組字段GR0UP_ID和SQL-1D字段INDEX_SQL_ID,其中,每個分組字段GR0UP_ID中包括ー個或多個SQL-1D字段 INDEX_SQL_ID。
[0058]通過分組配置表DM_KPI_SQL_CFG_GROUP可以預(yù)先將某些具有關(guān)聯(lián)的指標(biāo)(即指標(biāo)的實現(xiàn)腳本之間具有公用的地方)分配到同一組中,后續(xù)有與該組指標(biāo)的實現(xiàn)腳本公用的指標(biāo)的時候,可以直接在該組指標(biāo)所對應(yīng)的指標(biāo)實現(xiàn)配置表中的SQL字段進(jìn)行擴(kuò)展,而不用新增一段全新的腳本,避免類似指標(biāo)的重復(fù)開發(fā),減少計算量。
[0059]2、指標(biāo)實現(xiàn)配置表 DM_KPI_SQL_CFG
[0060]針對原有的每個指標(biāo)都是通過一段獨立的程序或腳本實現(xiàn)的方法,本申請實施例在構(gòu)建KPI指標(biāo)的過程中還增加了指標(biāo)實現(xiàn)配置表DM_KPI_SQL_CFG。在所述指標(biāo)實現(xiàn)配置表 DM_KPI_SQL_CFG 中包括 SQL-1D 字段 INDEX_SQL_ID 和對應(yīng)的 SQL 字段 INDEX_SQL,以及其他的指標(biāo)描述字段,如SQL描述、來源表、來源表描述、插入時間等。
[0061 ] 其中,每個SQL字段INDEX_SQL對應(yīng)ー個SQL腳本,每個SQL腳本中包含多個指標(biāo)的SQL語句,從而使多個指標(biāo)可以通過一段SQL腳本實現(xiàn)。當(dāng)后續(xù)需要新增指標(biāo)開發(fā)吋,只需往指標(biāo)實現(xiàn)配置表中配入相應(yīng)的SQL腳本,然后系統(tǒng)自動通過循環(huán)讀取的方式來實現(xiàn)指標(biāo)數(shù)據(jù)的生成。
[0062]其中的SQL-1D 字段 INDEX_SQL_ID 與分組配置表中 DM_KPI_SQL_CFG_GROUP 的SQL-1D 字段 INDEX_SQL_ID 相關(guān)聯(lián)。通過分組配置表中 DM_KPI_SQL_CFG_GROUP 的 SQL-1D字段INDEX_SQL_ID即可查找到指標(biāo)實現(xiàn)配置表DM_KPI_SQL_CFG中對應(yīng)的SQL-1D字段INDEX_SQL_ID,進(jìn)而獲取所述SQL-1D字段對應(yīng)的SQL字段INDEX_SQL中的SQL腳本。
[0063]3、中間過程表 DW_KPI_H0R_DS
[0064]由于在指標(biāo)實現(xiàn)配置表DM_KPI_SQL_CFG中,每個SQL字段INDEX_SQL對應(yīng)ー個SQL腳本,并且每個SQL腳本中包含多個指標(biāo)的SQL語句,從而每個SQL腳本可以同時實現(xiàn)多個指標(biāo)的計算。而按照現(xiàn)有技術(shù)中每寫一個程序計算ー個指標(biāo)后都要往事實表中寫數(shù)據(jù)的方法,無法同時實現(xiàn)多個指標(biāo)。
[0065]因此,本申請實施例引入了中間過程表DW_KPI_H0R_DS,該表主要包括SQL-1D字段 INDEX_SQL_ID、COLUMN 字段和日期字段 REP0RT_DATE。其中,每個 SQL-1D 字段 INDEX_SQL_ID對應(yīng)多個COLUMN字段,每個COLUMN字段對應(yīng)ー個指標(biāo)計算結(jié)果。
[0066]將指標(biāo)實現(xiàn)配置表DM_KPI_SQL_CFG中指標(biāo)的計算結(jié)果寫入中間過程表中,后續(xù)通過調(diào)用相應(yīng)的命令,即可實現(xiàn)將中間過程表DW_KPI_H0R_DS中的ー個或多個COLUMN字段對應(yīng)的指標(biāo)計算結(jié)果同時生成到事實表中,提高了指標(biāo)的開發(fā)效率,大大減輕了工作量。
[0067]例如,如圖2所示的中間過程表中SQL-1D字段INDEX_SQL_ID對應(yīng)30個COLUMN字段,在調(diào)用相應(yīng)命令時,即可把SQL-1D字段INDEX_SQL_ID下的30個COLUMN字段對應(yīng)的指標(biāo)計算結(jié)果同時生成到事實表中。
[0068]4、維度表 DM_KPI_BASE
[0069]維度表DM_KPI_BASE主要用于指標(biāo)的定義,本申請實施例所述的維度表中,除了指標(biāo)的固有屬性(如指標(biāo)代碼、指標(biāo)名稱、指標(biāo)業(yè)務(wù)代碼、指標(biāo)業(yè)務(wù)名稱等)タト,還增加了SQL-1D字段INDEX_SQL_ID和插入結(jié)果集對應(yīng)SQL字段。
[0070]其中,SQL-1D字段 INDEX_SQL_ID 與中間過程表 DW_KPI_H0R_DS 中的 SQL-1D 字段INDEX_SQL_ID相關(guān)聯(lián),通過維度表DM_KPI_BASE中的SQL-1D字段INDEX_SQL_ID即可在所述中間過程表DW_KPI_H0R_DS中查找與其相匹配的SQL-1D字段。
[0071 ] 在插入結(jié)果集對應(yīng)SQL字段中指定了具體的COLUMN字段,根據(jù)SQL-1D字段INDEX_SQL_ID以及插入結(jié)果集對應(yīng)SQL字段即可確定需要寫入事實表中的某一 SQL-1D下對應(yīng)的COLUMN字段的指標(biāo)計算結(jié)果。
[0072]并且,通過SQL-1D字段INDEX_SQL_ID還可以將維度表DM_KPI_BASE和指標(biāo)實現(xiàn)配置表DM_KPI_SQL_CFG進(jìn)行關(guān)聯(lián),依據(jù)所述SQL-1D獲取指標(biāo)實現(xiàn)配置表中對應(yīng)的SQL腳本,使得指標(biāo)的定義和指標(biāo)的實現(xiàn)關(guān)聯(lián)起來,當(dāng)用戶看到ー個指標(biāo)的時候,能夠直接查看到后臺計算的具體邏輯,從而實現(xiàn)指標(biāo)的源碼開放透明,降低指標(biāo)的維護(hù)成本。
[0073]5、事實表 ST_KPI_BASE_DS
[0074]事實表ST_KPI_BASE_DS主要用于存儲指標(biāo)的計算結(jié)果,其中包括數(shù)據(jù)日期、指標(biāo)ID、指標(biāo)值、生成數(shù)據(jù)來源、操作日期等。
[0075]6、衍生配置表 DM_KPI_BASE_CAL_REL
[0076]衍生配置表DM_KPI_BASE_CAL_REL主要用于實現(xiàn)對ー些衍生指標(biāo)的計算,其中包括 KPI_ID 字段、FR0M_KPI_ID 字段、IS_CAL_FLAG 字段、INST_DATE 字段,以及 GMT_MODIFIED字段等。
[0077]例如,對于存儲于中間過程表DW_KPI_H0R_DS中已經(jīng)計算過的指標(biāo)A,如果在衍生配置表DM_KPI_BASE_CAL_REL中包括與其相對應(yīng)的指標(biāo)B,而指標(biāo)A和指標(biāo)B只是指標(biāo)名稱不同,則在衍生配置表DM_KPI_BASE_CAL_REL中查找出與中間過程表DW_KPI_H0R_DS中的指標(biāo)對應(yīng)的指標(biāo)后,修改其對應(yīng)的IS_CAL_FLAG字段,將該指標(biāo)標(biāo)記為已計算,從而避免相同指標(biāo)的重復(fù)計算。
[0078]參照圖3,示出了本申請ー種快速構(gòu)建企業(yè)關(guān)鍵業(yè)績指標(biāo)的方法實施例的流程圖,所述方法包括:
[0079]步驟S301,預(yù)先配置分組配置表和指標(biāo)實現(xiàn)配置表。
[0080]參照圖4,示出了預(yù)先配置分組配置表和指標(biāo)實現(xiàn)配置表的方法流程圖,具體包括以下子步驟:
[0081 ] 步驟S3011,配置指標(biāo)實現(xiàn)配置表DM_KPI_SQL_CFG中的SQL字段INDEX_SQL ;
[0082]具體的,將當(dāng)前指標(biāo)對應(yīng)的SQL語句寫入指標(biāo)實現(xiàn)配置表DM_KPI_SQL_CFG中的SQL字段INDEX_SQL_ID對應(yīng)的腳本中;
[0083]步驟S3012,配置指標(biāo)實現(xiàn)配置表DM_KPI_SQL_CFG中的SQL-1D字段INDEX_SQL_ID,為所述當(dāng)前指標(biāo)指定ー個SQL-1D ;
[0084]步驟S3013,配置指標(biāo)實現(xiàn)配置表DM_KPI_SQL_CFG中其他的指標(biāo)描述字段,如來源表、來源表描述、插入時間等;
[0085]步驟S3014,配置分組配置表 DM_KPI_SQL_CFG_GROUP 中的 SQL-1D 字段 INDEX_SQL_ID,所述SQL-1D字段與指標(biāo)實現(xiàn)配置表DM_KPI_SQL_CFG中的SQL-1D字段INDEX_SQL_ID相對應(yīng);
[0086]步驟S3015,配置分組配置表DM_KPI_SQL_CFG_GROUP中的分組字段GR0UP_ID,依據(jù)指標(biāo)間的關(guān)聯(lián)為所述SQL-1D字段分配一特定組。
[0087]步驟S302,依據(jù)調(diào)用命令中的標(biāo)識參數(shù)在分組配置表中查找出對應(yīng)的SQL-1D。
[0088]在上述配置的分組配置表DM_KPI_SQL_CFG_GROUP中,包括分組字段GR0UP_ID和SQL-1D字段INDEX_SQL_ID,其中,每個分組字段中包括ー個或多個SQL-1D字段,具有關(guān)聯(lián)關(guān)系的指標(biāo)都存儲到同一組中。
[0089]根據(jù)調(diào)用命令中的標(biāo)識參數(shù)的不同,該步驟包括以下兩種情況:
[0090]第一種情況:所述標(biāo)識參數(shù)為分組參數(shù)。
[0091]參照圖5,所述依據(jù)調(diào)用命令中的標(biāo)識參數(shù)在分組配置表中查找出對應(yīng)的SQL-1D,包括:
[0092]步驟S3021,將所述調(diào)用命令中的分組參數(shù)與分組配置表中的分組字段進(jìn)行匹配;
[0093]步驟S3023,將相匹配的分組字段中的所有SQL-1D作為與所述標(biāo)識參數(shù)對應(yīng)的SQL-1D。
[0094]第二種情況:所述標(biāo)識參數(shù)為分組參數(shù)和SQL-1D參數(shù)。
[0095]參照圖6,所述依據(jù)調(diào)用命令中的標(biāo)識參數(shù)在分組配置表中查找出對應(yīng)的SQL-1D,包括以下子步驟:
[0096]步驟S3022,將所述調(diào)用命令中的分組參數(shù)與分組配置表中的分組字段進(jìn)行匹配;
[0097]步驟S3024,將所述調(diào)用命令中的SQL-1D參數(shù)與相匹配的分組字段中的SQL-1D字段進(jìn)行匹配;
[0098]步驟S3026,將相匹配的SQL-1D作為與所述標(biāo)識參數(shù)對應(yīng)的SQL-1D。
[0099]步驟S303,根據(jù)所述SQL-1D獲取指標(biāo)實現(xiàn)配置表中對應(yīng)的SQL腳本。
[0100]在配置的指標(biāo)實現(xiàn)配置表DM_KPI_SQL_CFG中包括SQL-1D字段INDEX_SQL_ID和對應(yīng)的SQL字段INDEX_SQL,其中,每個SQL字段對應(yīng)ー個SQL腳本,每個對應(yīng)SQL-1D的SQL腳本中包含多個指標(biāo)的SQL語句。
[0101]參照圖7,示出了本申請實施例所述根據(jù)所述SQL-1D獲取指標(biāo)實現(xiàn)配置表中對應(yīng)的SQL腳本的方法流程圖,包括以下子步驟:
[0102]步驟S3031,將所述指標(biāo)實現(xiàn)配置表與所述分組配置表通過SQL-1D字段關(guān)聯(lián),并在所述指標(biāo)實現(xiàn)配置表中查找與所述SQL-1D相匹配的SQL字段;
[0103]步驟S3032,獲取相匹配的SQL-1D字段對應(yīng)的SQL字段下的SQL腳本。
[0104]步驟S304,通過解析并執(zhí)行所述SQL腳本中的語句來完成指標(biāo)的計算,并將指標(biāo)計算結(jié)果寫入中間過程表中。[0105]解析并執(zhí)行SQL腳本中的語句對指標(biāo)進(jìn)行計算,得到指標(biāo)的計算結(jié)果,后續(xù)通過封裝的程序腳本即可實現(xiàn)自動往中間過程表中寫數(shù)據(jù)。
[0106]步驟S305,將中間過程表中的數(shù)據(jù)生成到事實表中。
[0107]所述中間過程表DW_KPI_H0R_DS中包括SQL-1D字段、COLUMN字段和日期字段,其中,每個SQL-1D字段對應(yīng)多個COLUMN字段,每個COLUMN字段對應(yīng)ー個指標(biāo)計算結(jié)果。
[0108]要實現(xiàn)將中間過程表中的數(shù)據(jù)生成到事實表中,需要通過維度表中的字段控制數(shù)據(jù)的寫入,因此,首先需要配置維度表,具體包括:
[0109]首先,配置維度表中用于指標(biāo)定義的字段,例如,指標(biāo)代碼、指標(biāo)名稱、指標(biāo)業(yè)務(wù)代碼、指標(biāo)業(yè)務(wù)名稱等字段;
[0110]其次,配置維度表中的SQL-1D字段,所述SQL-1D字段與指標(biāo)實現(xiàn)配置表中的SQL-1D字段以及中間過程表中的SQL-1D字段相關(guān)聯(lián);
[0111]最后,配置維度表中的插入結(jié)果集對應(yīng)SQL字段,所述插入結(jié)果集對應(yīng)SQL字段中指定了 COLUMN字段。
[0112]在配置好維度表之后,即可根據(jù)維度表自動將中間過程表中的指定數(shù)據(jù)生成到事實表中,參照圖8,所述將中間過程表中的數(shù)據(jù)生成到事實表中,具體包括以下步驟:
[0113]步驟S3051,將所述中間過程表與所述維度表通過SQL-1D字段關(guān)聯(lián),并在所述中間過程表中查找與所述維度表中的SQL-1D相匹配的SQL-1D字段;
[0114]步驟S3052,在所述SQL-1D字段下,將插入結(jié)果集對應(yīng)SQL字段中指定的COLUMN字段的指標(biāo)計算結(jié)果寫入事實表中。
[0115]優(yōu)選的,所述調(diào)用命令中還包括日期參數(shù),在根據(jù)所述SQL-1D獲取指標(biāo)實現(xiàn)配置表中對應(yīng)的SQL腳本之后,還包括:
[0116]用所述調(diào)用命令中的日期參數(shù)替換所述SQL腳本中的日期參數(shù)。
[0117]下面,通過一具體實施例描述指標(biāo)的計算過程,參照圖9,示出了本申請實施例所述ー種快速構(gòu)建企業(yè)關(guān)鍵業(yè)績指標(biāo)的底層封裝腳本示意圖。
[0118]其中,Kpi_cfg_common.tel 主要封裝的是一些通用函數(shù),Ctl_dim_kpi_sql_cfg_dd.tel程序主要實現(xiàn)指標(biāo)的計算功能。程序調(diào)用的時候,通過傳遞不同的參數(shù),實現(xiàn)不同的日期及分組指標(biāo)的計算。
[0119]例如,調(diào)用命令為/datal/alipaydw/alipaydw/bin/dss_postg-ul-vl_sctl_dim_kpi_sql_cfg_dd.tcl-o-t 2011-10_18-p4,以上命令表不,調(diào)用 ctl_dim_kpi_sql_cfg_dd.tel程序的日期為2011-10-18,分組參數(shù)為4的INDEX_SQL_ID指標(biāo)組。
[0120]根據(jù)該調(diào)用命令執(zhí)行的具體操作如下:
[0121]步驟1,將所述調(diào)用命令中的分組參數(shù)GR0UP_ID = 4與分組配置表中的分組字段進(jìn)行匹配,查找出分組配置表中相匹配的GR0UP_ID = 4的組;
[0122]步驟2,將分組配置表中GR0UP_ID = 4的組中的所有SQL-1D作為對應(yīng)的SQL-1D,將所有的SQL-1D按照升序排序;
[0123]步驟3,根據(jù)所述SQL-1D獲取指標(biāo)實現(xiàn)配置表中對應(yīng)的SQL腳本;
[0124]步驟4,用所述調(diào)用命令中的日期參數(shù)2011-10-18替換所述SQL腳本中的日期參數(shù);
[0125]步驟5,通過解析并執(zhí)行所述SQL腳本中的語句來完成指標(biāo)的計算,并將指標(biāo)計算結(jié)果寫入中間過程表中;
[0126]步驟6,根據(jù)維度表中的SQL-1D字段和插入結(jié)果集對應(yīng)SQL字段與中間過程表相關(guān)聯(lián),將中間過程表中的數(shù)據(jù)生成到事實表中。
[0127]參照圖10,示出了本申請ー種快速構(gòu)建企業(yè)關(guān)鍵業(yè)績指標(biāo)的方法中新增指標(biāo)的方法實施例的流程圖,所述新增指標(biāo)的方法包括:
[0128]步驟S501,在維度表中對新增指標(biāo)配置指標(biāo)的定義,并對維度表中的SQL-1D字段和插入結(jié)果集對應(yīng)SQL字段進(jìn)行更新。
[0129]當(dāng)新增指標(biāo)吋,首先在維度表中配置指標(biāo)的定義,并且根據(jù)新增指標(biāo)所對應(yīng)的插入?yún)?shù)對維度表中的SQL-1D字段和插入結(jié)果集對應(yīng)SQL字段進(jìn)行更新,以保證后續(xù)調(diào)用相應(yīng)命令時將對應(yīng)的指標(biāo)(包括新增指標(biāo))寫入事實表中。
[0130]步驟S502,將新增指標(biāo)對應(yīng)的SQL語句插入指標(biāo)實現(xiàn)配置表中對應(yīng)的SQL腳本中。
[0131]步驟S503,對分組配置表中的分組字段和/或SQL-1D字段進(jìn)行更新。
[0132]在新增指標(biāo)所對應(yīng)的插入?yún)?shù)中定義了該新增指標(biāo)的分組參數(shù)和/或SQL-1D參數(shù),根據(jù)插入?yún)?shù)情況的不同,該步驟包括以下幾種情況:
[0133]第一種情況:
[0134]所述插入?yún)?shù)為分組參數(shù),所述分組參數(shù)與分組配置表中的分組字段均不匹配。
[0135]所述對分組配置表中的分組字段和/或SQL-1D字段進(jìn)行更新,包括:
[0136]步驟a,依據(jù)分組參數(shù)在分組配置表中増加ー個與所述分組參數(shù)對應(yīng)的分組字段;
[0137]步驟b,在所述分組字段下増加一個對應(yīng)的SQL-1D字段;
[0138]步驟c,將所述新增指標(biāo)分配到分組配置表中新増加的SQL-1D字段。
[0139]第二種情況:
[0140]所述插入?yún)?shù)為分組參數(shù)和SQL-1D參數(shù),所述分組參數(shù)與分組配置表中的某一分組字段相匹配,所述SQL-1D參數(shù)與相匹配的分組字段下的SQL-1D字段均不匹配。
[0141]所述對分組配置表中的分組字段和/或SQL-1D字段進(jìn)行更新,包括:
[0142]步驟A,依據(jù)所述分組參數(shù)獲取分組配置表中與其相匹配的分組字段;
[0143]步驟B,根據(jù)所述SQL-1D參數(shù)在所述相匹配的分組字段中増加一個新的SQL-1D字段;
[0144]步驟C,將所述新增指標(biāo)分配到分組配置表中新増加的SQL-1D字段。
[0145]第三種情況:
[0146]所述插入?yún)?shù)為分組參數(shù)和SQL-1D參數(shù),所述分組參數(shù)與分組配置表中某一分組字段相匹配,所述SQL-1D參數(shù)與所述相匹配的分組字段下的某一 SQL-1D字段相匹配。
[0147]所述對分組配置表中的分組字段和/或SQL-1D字段進(jìn)行更新,包括:
[0148]步驟i,依據(jù)所述分組參數(shù)獲取分組配置表中與其相匹配的分組字段;
[0149]步驟ii,將SQL-1D參數(shù)與所述相匹配的分組字段下的SQL-1D字段相匹配,獲取匹配的SQL-1D字段;
[0150]步驟iii,將所述新增指標(biāo)分配到所述相匹配的SQL-1D字段。
[0151]綜上所述,本申請所提出的一種關(guān)鍵業(yè)績指標(biāo)的構(gòu)建方法通過在指標(biāo)的構(gòu)建過程中増加指標(biāo)實現(xiàn)配置表、分組配置表以及中間過程表,并且在配置的維度表中増加了SQL-1D字段和插入結(jié)果集對應(yīng)SQL字段,從而實現(xiàn)了多個指標(biāo)通過一段SQL腳本實現(xiàn),當(dāng)后續(xù)需要新增指標(biāo)開發(fā)時,只需往指標(biāo)實現(xiàn)配置表中配入相應(yīng)的SQL腳本即可。并且,在中間過程表中每個SQL-1D字段對應(yīng)多個COLUMN字段,每個COLUMN字段對應(yīng)ー個指標(biāo)計算結(jié)果,實現(xiàn)了同時將多個指標(biāo)的計算結(jié)果生成到事實表中,提高了指標(biāo)的開發(fā)效率,大大減輕
了工作量。
[0152]其次,指標(biāo)的開發(fā)過程中引入分組配置表,可以預(yù)先將某些具有關(guān)聯(lián)的指標(biāo)分配到同一組中,后續(xù)有與該組指標(biāo)的實現(xiàn)腳本公用的指標(biāo)的時候,可以直接在該組指標(biāo)所對應(yīng)的SQL字段進(jìn)行擴(kuò)展,而不用新增一段全新的腳本,避免類似指標(biāo)的重復(fù)開發(fā),減少計算量。
[0153]最后,本申請中每個指標(biāo)的具體實現(xiàn)代碼都存放在指標(biāo)實現(xiàn)配置表中,并且在配置的維度表中,除了指標(biāo)的固有屬性外,増加了 SQL-1D字段和插入結(jié)果集對應(yīng)SQL字段,通過SQL-1D字段即可將維度表和指標(biāo)實現(xiàn)配置表進(jìn)行關(guān)聯(lián),依據(jù)所述SQL-1D獲取指標(biāo)實現(xiàn)配置表中對應(yīng)的SQL腳本,使得指標(biāo)的定義和指標(biāo)的實現(xiàn)關(guān)聯(lián)起來,當(dāng)用戶看到一個指標(biāo)的時候,能夠直接查看到后臺計算的具體邏輯,從而實現(xiàn)指標(biāo)的源碼開放透明,降低指標(biāo)的維護(hù)成本。
[0154]參照圖11,示出了本申請ー種快速構(gòu)建企業(yè)關(guān)鍵業(yè)績指標(biāo)的系統(tǒng)實施例的結(jié)構(gòu)圖,所述系統(tǒng)包括:
[0155]第一配置模塊111,用于預(yù)先配置分組配置表和指標(biāo)實現(xiàn)配置表。
[0156]查找模塊112,用于依據(jù)調(diào)用命令中的標(biāo)識參數(shù)在分組配置表中查找出對應(yīng)的SQL-1D。
[0157]其中,所述分組配置表中包括分組字段和SQL-1D字段,每個分組字段中包括ー個或多個SQL-1D字段。
[0158]獲取模塊113,用于根據(jù)所述SQL-1D獲取指標(biāo)實現(xiàn)配置表中對應(yīng)的SQL腳本。其中,所述指標(biāo)實現(xiàn)配置表中包括SQL-1D字段和對應(yīng)的SQL字段,每個SQL字段對應(yīng)ー個SQL腳本,每個對應(yīng)SQL-1D的SQL腳本中包含多個指標(biāo)的SQL語句。
[0159]計算模塊114,用于通過解析并執(zhí)行所述SQL腳本中的語句來完成指標(biāo)的計算,并將指標(biāo)計算結(jié)果寫入中間過程表中。
[0160]其中,所述中間過程表中包括SQL-1D字段、COLUMN字段和日期字段,每個SQL-1D字段對應(yīng)多個COLUMN字段,每個COLUMN字段對應(yīng)ー個指標(biāo)計算結(jié)果。
[0161]生成模塊115,用于將中間過程表中的數(shù)據(jù)生成到事實表中。
[0162]優(yōu)選的,所述調(diào)用命令中還包括日期參數(shù),所述系統(tǒng)還包括:
[0163]替換模塊,用于在根據(jù)所述SQL-1D獲取指標(biāo)實現(xiàn)配置表中對應(yīng)的SQL腳本之后,用所述調(diào)用命令中的日期參數(shù)替換所述SQL腳本中的日期參數(shù)。
[0164]其中,所述標(biāo)識參數(shù)包括以下兩種情況:
[0165]第一種情況:所述標(biāo)識參數(shù)為分組參數(shù)。
[0166]所述查找模塊包括:
[0167]第一匹配子模塊,用于將所述調(diào)用命令中的分組參數(shù)與分組配置表中的分組字段進(jìn)行匹配;
[0168]第一對應(yīng)子模塊,用于將相匹配的分組字段中的所有SQL-1D作為與所述標(biāo)識參數(shù)對應(yīng)的SQL-1D。
[0169]第一種情況:所述標(biāo)識參數(shù)為分組參數(shù)和SQL-1D參數(shù)。
[0170]所述查找模塊包括:
[0171]第二匹配子模塊,用于將所述調(diào)用命令中的分組參數(shù)與分組配置表中的分組字段進(jìn)行匹配;
[0172]第三匹配子模塊,用于將所述調(diào)用命令中的SQL-1D參數(shù)與相匹配的分組字段中的SQL-1D字段進(jìn)行匹配;
[0173]第二對應(yīng)子模塊,用于將相匹配的SQL-1D作為與所述標(biāo)識參數(shù)對應(yīng)的SQL-1D。
[0174]其中,所述獲取模塊包括:
[0175]第一查找子模塊,用于將所述指標(biāo)實現(xiàn)配置表與所述分組配置表通過SQL-1D字段關(guān)聯(lián),并在所述指標(biāo)實現(xiàn)配置表中查找與所述SQL-1D相匹配的SQL字段;
[0176]獲取子模塊,用于獲取相匹配的SQL-1D字段對應(yīng)的SQL字段下的SQL腳本。
[0177]所述系統(tǒng)還包括:
[0178]第二配置模塊,用于配置用于指標(biāo)定義的維度表,所述維度表中包括SQL-1D字段和插入結(jié)果集對應(yīng)SQL字段,所述插入結(jié)果集對應(yīng)SQL字段中指定了 COLUMN字段。
[0179]則所述生成模塊包括:
[0180]第二查找子模塊,用于將所述中間過程表與所述維度表通過SQL-1D字段關(guān)聯(lián),并在所述中間過程表中查找與所述維度表中的SQL-1D相匹配的SQL-1D字段;
[0181]寫入子模塊,用于在所述SQL-1D字段下,將插入結(jié)果集對應(yīng)SQL字段中指定的COLUMN字段的指標(biāo)計算結(jié)果寫入事實表中。
[0182]為了實現(xiàn)新增指標(biāo)的插入,所述系統(tǒng)還包括:
[0183]第一更新模塊,用于在維度表中對新增指標(biāo)配置指標(biāo)的定義,并對維度表中的SQL-1D字段和插入結(jié)果集對應(yīng)SQL字段進(jìn)行更新。
[0184]插入模塊,用于將新增指標(biāo)對應(yīng)的SQL語句插入指標(biāo)實現(xiàn)配置表中對應(yīng)的SQL腳本中。
[0185]第二更新模塊,用于對分組配置表中的分組字段和/或SQL-1D字段進(jìn)行更新。
[0186]對于上述系統(tǒng)實施例而言,由于其與方法實施例基本相似,所以描述的比較簡単,相關(guān)之處參見方法實施例的部分說明即可。
[0187]本說明書中的各個實施例均采用遞進(jìn)的方式描述,每個實施例重點說明的都是與其他實施例的不同之處,各個實施例之間相同相似的部分互相參見即可。
[0188]綜上所述,本申請所提出的一種關(guān)鍵業(yè)績指標(biāo)的構(gòu)建系統(tǒng)通過在指標(biāo)的構(gòu)建過程中増加指標(biāo)實現(xiàn)配置表、分組配置表以及中間過程表,并且在配置的維度表中増加了SQL-1D字段和插入結(jié)果集對應(yīng)SQL字段,從而實現(xiàn)了多個指標(biāo)通過一段SQL腳本實現(xiàn),當(dāng)后續(xù)需要新增指標(biāo)開發(fā)時,只需往指標(biāo)實現(xiàn)配置表中配入相應(yīng)的SQL腳本即可。并且,在中間過程表中每個SQL-1D字段對應(yīng)多個COLUMN字段,每個COLUMN字段對應(yīng)ー個指標(biāo)計算結(jié)果,實現(xiàn)了同時將多個指標(biāo)的計算結(jié)果生成到事實表中,提高了指標(biāo)的開發(fā)效率,大大減輕了工作量。
[0189]其次,指標(biāo)的開發(fā)過程中引入分組配置表,可以預(yù)先將某些具有關(guān)聯(lián)的指標(biāo)分配到同一組中,后續(xù)有與該組指標(biāo)的實現(xiàn)腳本公用的指標(biāo)的時候,可以直接在該組指標(biāo)所對應(yīng)的SQL字段進(jìn)行擴(kuò)展,而不用新增一段全新的腳本,避免類似指標(biāo)的重復(fù)開發(fā),減少計算量。
[0190]最后,本申請中每個指標(biāo)的具體實現(xiàn)代碼都存放在指標(biāo)實現(xiàn)配置表中,并且在配置的維度表中,除了指標(biāo)的固有屬性外,増加了 SQL-1D字段和插入結(jié)果集對應(yīng)SQL字段,通過SQL-1D字段即可將維度表和指標(biāo)實現(xiàn)配置表進(jìn)行關(guān)聯(lián),依據(jù)所述SQL-1D獲取指標(biāo)實現(xiàn)配置表中對應(yīng)的SQL腳本,使得指標(biāo)的定義和指標(biāo)的實現(xiàn)關(guān)聯(lián)起來,當(dāng)用戶看到一個指標(biāo)的時候,能夠直接查看到后臺計算的具體邏輯,從而實現(xiàn)指標(biāo)的源碼開放透明,降低指標(biāo)的維護(hù)成本。
[0191]本領(lǐng)域內(nèi)的技術(shù)人員應(yīng)明白,本申請的實施例可提供為方法、系統(tǒng)、或計算機(jī)程序產(chǎn)品。因此,本申請可采用完全硬件實施例、完全軟件實施例、或結(jié)合軟件和硬件方面的實施例的形式。而且,本申請可采用在一個或多個其中包含有計算機(jī)可用程序代碼的計算機(jī)可用存儲介質(zhì)(包括但不限于磁盤存儲器、CD-ROM、光學(xué)存儲器等)上實施的計算機(jī)程序產(chǎn)品的形式。
[0192]本申請是參照根據(jù)本申請實施例的方法、設(shè)備(系統(tǒng))、和計算機(jī)程序產(chǎn)品的流程圖和/或方框圖來描述的。應(yīng)理解可由計算機(jī)程序指令實現(xiàn)流程圖和/或方框圖中的每ー流程和/或方框、以及流程圖和/或方框圖中的流程和/或方框的結(jié)合??商峁┻@些計算機(jī)程序指令到通用計算機(jī)、專用計算機(jī)、嵌入式處理機(jī)或其他可編程數(shù)據(jù)處理設(shè)備的處理器以產(chǎn)生ー個機(jī)器,使得通過計算機(jī)或其他可編程數(shù)據(jù)處理設(shè)備的處理器執(zhí)行的指令產(chǎn)生用于實現(xiàn)在流程圖ー個流程或多個流程和/或方框圖ー個方框或多個方框中指定的功能的裝置。
[0193]這些計算機(jī)程序指令也可存儲在能引導(dǎo)計算機(jī)或其他可編程數(shù)據(jù)處理設(shè)備以特定方式工作的計算機(jī)可讀存儲器中,使得存儲在該計算機(jī)可讀存儲器中的指令產(chǎn)生包括指令裝置的制造品,該指令裝置實現(xiàn)在流程圖ー個流程或多個流程和/或方框圖ー個方框或多個方框中指定的功能。
[0194]這些計算機(jī)程序指令也可裝載到計算機(jī)或其他可編程數(shù)據(jù)處理設(shè)備上,使得在計算機(jī)或其他可編程設(shè)備上執(zhí)行一系列操作步驟以產(chǎn)生計算機(jī)實現(xiàn)的處理,從而在計算機(jī)或其他可編程設(shè)備上執(zhí)行的指令提供用于實現(xiàn)在流程圖ー個流程或多個流程和/或方框圖一個方框或多個方框中指定的功能的步驟。
[0195]盡管已描述了本申請的優(yōu)選實施例,但本領(lǐng)域內(nèi)的技術(shù)人員一旦得知了基本創(chuàng)造性概念,則可對這些實施例做出另外的變更和修改。所以,所附權(quán)利要求意欲解釋為包括優(yōu)選實施例以及落入本申請范圍的所有變更和修改。
[0196]還需要說明的是,在本文中,諸如第一和第二等之類的關(guān)系術(shù)語僅僅用來將ー個實體或者操作與另ー個實體或操作區(qū)分開來,而不一定要求或者暗示這些實體或操作之間存在任何這種實際的關(guān)系或者順序。
[0197]以上對本申請所提供的ー種快速構(gòu)建企業(yè)關(guān)鍵業(yè)績指標(biāo)的方法和系統(tǒng),進(jìn)行了詳細(xì)介紹,本文中應(yīng)用了具體個例對本申請的原理及實施方式進(jìn)行了闡述,以上實施例的說明只是用于幫助理解本申請的方法及其核心思想;同時,對于本領(lǐng)域的一般技術(shù)人員,依據(jù)本申請的思想,在【具體實施方式】及應(yīng)用范圍上均會有改變之處,綜上所述,本說明書內(nèi)容不應(yīng)理解為對本申請的限制。
【權(quán)利要求】
1.ー種快速構(gòu)建企業(yè)關(guān)鍵業(yè)績指標(biāo)的方法,其特征在于,包括: 預(yù)先配置分組配置表和指標(biāo)實現(xiàn)配置表; 依據(jù)調(diào)用命令中的標(biāo)識參數(shù)在分組配置表中查找出對應(yīng)的SQL-1D ; 根據(jù)所述SQL-1D獲取指標(biāo)實現(xiàn)配置表中對應(yīng)的SQL腳本,所述對應(yīng)SQL-1D的SQL腳本中包含多個指標(biāo)的SQL語句; 通過解析并執(zhí)行所述SQL腳本中的語句來完成指標(biāo)的計算,并將指標(biāo)計算結(jié)果寫入中間過程表中; 將中間過程表中的數(shù)據(jù)生成到事實表中。
2.根據(jù)權(quán)利要求1所述的方法,其特征在于: 所述分組配置表中包括分組字段和SQL-1D字段,其中,每個分組字段中包括一個或多個SQL-1D字段。
3.根據(jù)權(quán)利要求2所述的方法,其特征在于,所述標(biāo)識參數(shù)為分組參數(shù),所述依據(jù)調(diào)用命令中的標(biāo)識參數(shù)在分組配置表中查找出對應(yīng)的SQL-1D,包括: 將所述調(diào)用命令中的分組參數(shù)與分組配置表中的分組字段進(jìn)行匹配; 將相匹配的分組字段中的所有SQL-1D作為與所述標(biāo)識參數(shù)對應(yīng)的SQL-1D。
4.根據(jù)權(quán)利要求2所述的方法,其特征在于,所述標(biāo)識參數(shù)為分組參數(shù)和SQL-1D參數(shù),所述依據(jù)調(diào)用命令中的標(biāo)識參數(shù)在分組配置表中查找出對應(yīng)的SQL-1D,包括: 將所述調(diào)用命令中的分組參數(shù)與分組配置表中的分組字段進(jìn)行匹配; 將所述調(diào)用命令中的SQL-1D參數(shù)與相匹配的分組字段中的SQL-1D字段進(jìn)行匹配; 將相匹配的SQL-1D作為與所述標(biāo)識參數(shù)對應(yīng)的SQL-1D。
5.根據(jù)權(quán)利要求2所述的方法,其特征在于: 所述指標(biāo)實現(xiàn)配置表中包括SQL-1D字段和對應(yīng)的SQL字段,其中,每個SQL字段對應(yīng)ー個SQL腳本; 根據(jù)所述SQL-1D獲取指標(biāo)實現(xiàn)配置表中對應(yīng)的SQL腳本,包括: 將所述指標(biāo)實現(xiàn)配置表與所述分組配置表通過SQL-1D字段關(guān)聯(lián),并在所述指標(biāo)實現(xiàn)配置表中查找與所述SQL-1D相匹配的SQL字段; 獲取相匹配的SQL-1D字段對應(yīng)的SQL字段下的SQL腳本。
6.根據(jù)權(quán)利要求1所述的方法,其特征在于,所述調(diào)用命令中還包括日期參數(shù),根據(jù)所述SQL-1D獲取指標(biāo)實現(xiàn)配置表中對應(yīng)的SQL腳本之后,還包括: 用所述調(diào)用命令中的日期參數(shù)替換所述SQL腳本中的日期參數(shù)。
7.根據(jù)權(quán)利要求1或6所述的方法,其特征在于: 所述中間過程表中包括SQL-1D字段、COLUMN字段和日期字段,其中,每個SQL-1D字段對應(yīng)多個COLUMN字段,每個COLUMN字段對應(yīng)ー個指標(biāo)計算結(jié)果。
8.根據(jù)權(quán)利要求7所述的方法,其特征在于,還包括: 配置用于指標(biāo)定義的維度表,所述維度表中包括SQL-1D字段和插入結(jié)果集對應(yīng)SQL字段,所述插入結(jié)果集對應(yīng)SQL字段中指定了 COLUMN字段; 所述將中間過程表中的數(shù)據(jù)生成到事實表中,包括: 將所述中間過程表與所述維度表通過SQL-1D字段關(guān)聯(lián),并在所述中間過程表中查找與所述維度表中的SQL-1D相匹配的SQL-1D字段;在所述SQL-1D字段下,將插入結(jié)果集對應(yīng)SQL字段中指定的COLUMN字段的指標(biāo)計算結(jié)果寫入事實表中。
9.根據(jù)權(quán)利要求8所述的方法,其特征在于,還包括: 在維度表中對新增指標(biāo)配置指標(biāo)的定義,并對維度表中的SQL-1D字段和插入結(jié)果集對應(yīng)SQL字段進(jìn)行更新; 將新增指標(biāo)對應(yīng)的SQL語句插入指標(biāo)實現(xiàn)配置表中對應(yīng)的SQL腳本中。
10.根據(jù)權(quán)利要求9所述的方法,其特征在于,還包括: 對分組配置表中的分組字段和/或SQL-1D字段進(jìn)行更新。
11.ー種快速構(gòu)建企業(yè)關(guān)鍵業(yè)績指標(biāo)的系統(tǒng),其特征在于,包括: 第一配置模塊,用于預(yù)先配置分組配置表和指標(biāo)實現(xiàn)配置表; 查找模塊,用于依據(jù)調(diào)用命令中的標(biāo)識參數(shù)在分組配置表中查找出對應(yīng)的SQL-1D ; 獲取模塊,用于根據(jù)所述SQL-1D獲取指標(biāo)實現(xiàn)配置表中對應(yīng)的SQL腳本,所述對應(yīng)SQL-1D的SQL腳本中包含多個指標(biāo)的SQL語句; 計算模塊,用于通過解析并執(zhí)行所述SQL腳本中的語句來完成指標(biāo)的計算,并將指標(biāo)計算結(jié)果寫入中間過程 表中; 生成模塊,用于將中間過程表中的數(shù)據(jù)生成到事實表中。
12.根據(jù)權(quán)利要求11所述的系統(tǒng),其特征在于: 所述分組配置表中包括分組字段和SQL-1D字段,其中,每個分組字段中包括一個或多個SQL-1D字段。
13.根據(jù)權(quán)利要求12所述的系統(tǒng),其特征在于: 所述指標(biāo)實現(xiàn)配置表中包括SQL-1D字段和對應(yīng)的SQL字段,其中,每個SQL字段對應(yīng)ー個SQL腳本; 所述獲取模塊包括: 第一查找子模塊,用于將所述指標(biāo)實現(xiàn)配置表與所述分組配置表通過SQL-1D字段關(guān)聯(lián),并在所述指標(biāo)實現(xiàn)配置表中查找與所述SQL-1D相匹配的SQL字段; 獲取子模塊,用于獲取相匹配的SQL-1D字段對應(yīng)的SQL字段下的SQL腳本。
14.根據(jù)權(quán)利要求11所述的系統(tǒng),其特征在于,所述調(diào)用命令中還包括日期參數(shù),所述系統(tǒng)還包括: 替換模塊,用于在根據(jù)所述SQL-1D獲取指標(biāo)實現(xiàn)配置表中對應(yīng)的SQL腳本之后,用所述調(diào)用命令中的日期參數(shù)替換所述SQL腳本中的日期參數(shù)。
15.根據(jù)權(quán)利要求11或14所述的系統(tǒng),其特征在于: 所述中間過程表中包括SQL-1D字段、COLUMN字段和日期字段,其中,每個SQL-1D字段對應(yīng)多個COLUMN字段,每個COLUMN字段對應(yīng)ー個指標(biāo)計算結(jié)果。
16.根據(jù)權(quán)利要求15所述的系統(tǒng),其特征在于,還包括: 第二配置模塊,用于配置用于指標(biāo)定義的維度表,所述維度表中包括SQL-1D字段和插入結(jié)果集對應(yīng)SQL字段,所述插入結(jié)果集對應(yīng)SQL字段中指定了 COLUMN字段; 所述生成模塊包括: 第二查找子模塊,用于將所述中間過程表與所述維度表通過SQL-1D字段關(guān)聯(lián),并在所述中間過程表中查找與所述維度表中的SQL-1D相匹配的SQL-1D字段;寫入子模塊,用于在所述SQL-1D字段下,將插入結(jié)果集對應(yīng)SQL字段中指定的COLUMN字段的指標(biāo)計算結(jié)果寫入事實表中。
17.根據(jù)權(quán)利要求16所述的系統(tǒng),其特征在于,還包括: 第一更新模塊,用于在維度表中對新增指標(biāo)配置指標(biāo)的定義,并對維度表中的SQL-1D字段和插入結(jié)果集對應(yīng)SQL字段進(jìn)行更新; 插入模塊,用于將新增指標(biāo)對應(yīng)的SQL語句插入指標(biāo)實現(xiàn)配置表中對應(yīng)的SQL腳本中; 第二更新模塊, 用于對分組配置表中的分組字段和/或SQL-1D字段進(jìn)行更新。
【文檔編號】G06F17/30GK103455489SQ201210169941
【公開日】2013年12月18日 申請日期:2012年5月28日 優(yōu)先權(quán)日:2012年5月28日
【發(fā)明者】李勇國 申請人:阿里巴巴集團(tuán)控股有限公司