一種數(shù)據(jù)處理方法及裝置的制造方法
【技術(shù)領(lǐng)域】
[0001]本發(fā)明屬于數(shù)據(jù)倉庫領(lǐng)域中數(shù)據(jù)計(jì)算或數(shù)據(jù)處理領(lǐng)域,具體涉及一種提高數(shù)據(jù)計(jì)算效率和靈活性的數(shù)據(jù)處理方法及裝置。
【背景技術(shù)】
[0002]隨著大數(shù)據(jù)概念的興起,各個(gè)行業(yè)都在基于數(shù)據(jù)倉庫技術(shù),積極地利用行業(yè)生產(chǎn)過程中產(chǎn)生的各類結(jié)構(gòu)化和非結(jié)構(gòu)化數(shù)據(jù)。傳統(tǒng)的數(shù)據(jù)指標(biāo)計(jì)算方法在計(jì)算每個(gè)指標(biāo)時(shí),往往需要進(jìn)行復(fù)雜的配置操作,或者開發(fā)代碼完成,相同或者類似的計(jì)算過程無法重用,重復(fù)性工作很多,并且當(dāng)指標(biāo)計(jì)算規(guī)則發(fā)生變化時(shí),也需要進(jìn)行同樣的配置或者開發(fā),導(dǎo)致不能及時(shí)響應(yīng)用戶指標(biāo)統(tǒng)計(jì)分析的需求。
[0003]傳統(tǒng)的數(shù)據(jù)指標(biāo)計(jì)算方法,計(jì)算規(guī)則和計(jì)算過程綁定比較緊密,這種處理方法有兩個(gè)弊端:一是指標(biāo)計(jì)算規(guī)則發(fā)生調(diào)整或者新增指標(biāo)時(shí),需要技術(shù)人員進(jìn)行配置或者調(diào)整代碼,系統(tǒng)使用者無法直接干預(yù);二是指標(biāo)沒有集中管理,中間計(jì)算結(jié)果以及過渡指標(biāo)不能復(fù)用,經(jīng)常會出現(xiàn)重復(fù)計(jì)算的現(xiàn)象,導(dǎo)致整體數(shù)據(jù)計(jì)算效率低下。
【發(fā)明內(nèi)容】
[0004]針對現(xiàn)有技術(shù)中存在的缺陷,本發(fā)明提供一種數(shù)據(jù)處理方法,能夠提高數(shù)據(jù)計(jì)算效率、計(jì)算靈活性和可擴(kuò)展性。
[0005]為實(shí)現(xiàn)上述目的,本發(fā)明采用的技術(shù)方案如下:提供一種數(shù)據(jù)處理方法,該方法包括如下步驟:
[0006](I)對指標(biāo)的基本信息和計(jì)算規(guī)則進(jìn)行配置,所述的指標(biāo)包括提數(shù)類指標(biāo)和公式類指標(biāo);
[0007](2)自動裝載上述步驟中的指標(biāo)配置信息并完成指標(biāo)的計(jì)算工作,得到指標(biāo)結(jié)果。
[0008]進(jìn)一步,在步驟(I)中,將待計(jì)算各個(gè)指標(biāo)的基本信息存儲在預(yù)設(shè)的指標(biāo)定義表中,進(jìn)行統(tǒng)一管理。
[0009]進(jìn)一步,在步驟(I)中,所述提數(shù)類指標(biāo)是從預(yù)先設(shè)置的事實(shí)表元數(shù)據(jù)里選取事實(shí)表名稱及度量字段名稱,設(shè)置對應(yīng)的提數(shù)規(guī)則;所述公式類指標(biāo),選取依賴指標(biāo),設(shè)置依賴指標(biāo)之間的計(jì)算規(guī)則。
[0010]進(jìn)一步,所述提數(shù)類指標(biāo)采用事實(shí)表數(shù)據(jù)口徑,所述公式類指標(biāo)根據(jù)依賴指標(biāo)的數(shù)據(jù)口徑,取得每個(gè)指標(biāo)計(jì)算維度使用到最粗的級次,作為該公式類指標(biāo)的數(shù)據(jù)口徑。
[0011]進(jìn)一步,將提數(shù)類指標(biāo)的提數(shù)規(guī)則存儲在預(yù)設(shè)的提數(shù)規(guī)則配置表,將依賴指標(biāo)以及對應(yīng)的計(jì)算規(guī)則存儲在預(yù)設(shè)的公式規(guī)則配置表里。
[0012]進(jìn)一步,所述提數(shù)類指標(biāo)由于不依賴任何其他指標(biāo),先進(jìn)行計(jì)算,計(jì)算步驟如下:
[0013]a、從指標(biāo)定義表里取得事實(shí)表和度量字段名稱;
[0014]b、從提數(shù)規(guī)則配置表里取得提數(shù)類指標(biāo)的計(jì)算規(guī)則;
[0015]C、動態(tài)組裝事實(shí)表數(shù)據(jù)源和計(jì)算規(guī)則完成指標(biāo)計(jì)算,并將計(jì)算結(jié)果保存到預(yù)設(shè)指標(biāo)結(jié)果表里;
[0016]d、對每個(gè)指標(biāo)計(jì)算維度逐級向上匯總,得到各級匯總數(shù)據(jù)口徑的計(jì)算結(jié)果。
[0017]e、將各級計(jì)算結(jié)果也保存到指標(biāo)結(jié)果表,結(jié)束該提數(shù)類指標(biāo)計(jì)算。
[0018]進(jìn)一步,所述公式類指標(biāo)按照優(yōu)先級逐一進(jìn)行計(jì)算,計(jì)算步驟如下:
[0019]al、從公式規(guī)則配置表里取得所有依賴指標(biāo)及各依賴指標(biāo)之間的計(jì)算公式;
[0020]bl、根據(jù)依賴指標(biāo)自動計(jì)算出該指標(biāo)的數(shù)據(jù)口徑;
[0021]Cl、按照此數(shù)據(jù)口徑從指標(biāo)結(jié)果表取得所有依賴指標(biāo)的計(jì)算結(jié)果;
[0022]dl、根據(jù)公式進(jìn)行計(jì)算,將結(jié)果保存在指標(biāo)結(jié)果表;
[0023]el、對每個(gè)依賴指標(biāo)計(jì)算維度逐級向上匯總,得到各級數(shù)據(jù)口徑的計(jì)算結(jié)果;
[0024]Π、將各級計(jì)算結(jié)果也保存到指標(biāo)結(jié)果表里,結(jié)束該公式類指標(biāo)計(jì)算。
[0025]本發(fā)明還提供一種數(shù)據(jù)處理裝置,包括配置模塊和運(yùn)行模塊,所述配置模塊用于對指標(biāo)的基本信息和對應(yīng)的計(jì)算規(guī)則進(jìn)行配置;所述運(yùn)行模塊用于自動裝載所述配置模塊中的指標(biāo)配置信息,并完成指標(biāo)的計(jì)算工作,得到指標(biāo)結(jié)果。
[0026]進(jìn)一步,配置模塊包括提數(shù)類指標(biāo)子模塊和公式類指標(biāo)子模塊,提數(shù)類指標(biāo)子模塊用于存儲提數(shù)類指標(biāo)的提數(shù)規(guī)則;公式類指標(biāo)子模塊用于存儲所有的依賴指標(biāo)以及對應(yīng)的計(jì)算規(guī)則。
[0027]進(jìn)一步,運(yùn)行模塊包括提數(shù)運(yùn)算模塊和公式計(jì)算模塊,提數(shù)運(yùn)算模塊用于讀取事實(shí)表源數(shù)據(jù)以及提數(shù)類指標(biāo)子模塊中對應(yīng)的提數(shù)規(guī)則,并進(jìn)行計(jì)算;所述公式計(jì)算模塊,用于讀取公式類指標(biāo)子模塊中的依賴指標(biāo)和對應(yīng)的計(jì)算規(guī)則,并進(jìn)行計(jì)算。
[0028]本發(fā)明的有益技術(shù)效果在于:
[0029](I)本發(fā)明提供的數(shù)據(jù)處理方法,提供了一套統(tǒng)一的待計(jì)算指標(biāo)的計(jì)算規(guī)則配置功能及指標(biāo)自動裝載功能,當(dāng)指標(biāo)的計(jì)算規(guī)則和計(jì)算公式發(fā)生變化時(shí),由業(yè)務(wù)用戶直接調(diào)整指標(biāo)的相關(guān)配置即可生效,無需復(fù)雜的配置程序,就能夠?qū)⑹聦?shí)表中的源數(shù)據(jù)高效地轉(zhuǎn)變成最終的指標(biāo)數(shù)據(jù),提高了數(shù)據(jù)的計(jì)算效率和數(shù)據(jù)使用的靈活性。
[0030](2)本發(fā)明將所有涉及數(shù)據(jù)計(jì)算的指標(biāo),進(jìn)行統(tǒng)一維護(hù),加強(qiáng)了各個(gè)指標(biāo)間的數(shù)據(jù)共享,避免了重復(fù)操作,提高數(shù)據(jù)計(jì)算效率;
[0031](3)結(jié)構(gòu)簡單,操作容易。
【附圖說明】
[0032]圖1為本發(fā)明數(shù)據(jù)處理的流程圖;
[0033]圖2為提數(shù)類指標(biāo)配置的示例表;
[0034]圖3為公式類指標(biāo)配置的示例表;
[0035]圖4為指標(biāo)計(jì)算運(yùn)行期結(jié)構(gòu)圖;
[0036]圖5為提數(shù)類指標(biāo)計(jì)算過程圖;
[0037]圖6為公式類指標(biāo)計(jì)算過程圖;
[0038]圖7為指標(biāo)定義表;
[0039]圖8為提數(shù)條件配置表;
[0040]圖9為公式規(guī)則配置表;
[0041]圖10指標(biāo)結(jié)果表;
[0042]圖11指標(biāo)結(jié)果表數(shù)據(jù)存儲示例表。
【具體實(shí)施方式】
[0043]下面結(jié)合說明書附圖與【具體實(shí)施方式】對本發(fā)明作進(jìn)一步的詳細(xì)說明。
[0044]本發(fā)明提供了一種針對多維數(shù)據(jù)的處理方法,該方法提供了一套統(tǒng)一的各類待計(jì)算指標(biāo)的計(jì)算規(guī)則配置功能及指標(biāo)自動裝置計(jì)算的機(jī)制。預(yù)先將指標(biāo)的基本信息和計(jì)算規(guī)則,通過前臺的配置功能維護(hù)到一套配置表里,在數(shù)據(jù)計(jì)算時(shí)自動裝載配置表,對指標(biāo)進(jìn)行逐一計(jì)算,獲得最終需要的指標(biāo)數(shù)據(jù),從而將事實(shí)表中的源數(shù)據(jù)高效地轉(zhuǎn)變成最終的指標(biāo)數(shù)據(jù),提高了數(shù)據(jù)計(jì)算效率。
[0045]如圖1所示,將上述方法分為配置期和運(yùn)行期;配置期用于確定待計(jì)算的各個(gè)指標(biāo),根據(jù)待計(jì)算各個(gè)指標(biāo),配置對應(yīng)的計(jì)算規(guī)則;在配置過程將所有指標(biāo)進(jìn)行統(tǒng)一管理,并且按照計(jì)算過程的不同將指標(biāo)分為兩大類,提數(shù)類指標(biāo)和公式類指標(biāo)。運(yùn)行期自動裝載配置期的指標(biāo)配置信息,并完成指標(biāo)的計(jì)算工作,獲取需要的指標(biāo)數(shù)據(jù)計(jì)算結(jié)果。
[0046]提數(shù)類指標(biāo)定義指標(biāo)基本信息,從預(yù)先維護(hù)的事實(shí)表元數(shù)據(jù)里選取事實(shí)表名稱及度量字段名稱,設(shè)置提數(shù)指標(biāo)規(guī)則,采用事實(shí)表數(shù)據(jù)口徑。提數(shù)類指標(biāo)配置功能參見圖2。
[0047]公式類指標(biāo)定義指標(biāo)基本信息,選取依賴的指標(biāo),設(shè)置對應(yīng)的計(jì)算公式,并且根據(jù)依賴指標(biāo)的數(shù)據(jù)口徑,取得每個(gè)指標(biāo)計(jì)算維度使用到最粗的級次,作為該公式指標(biāo)的數(shù)據(jù)口徑。
[0048]舉例如下:
[0049]I)指標(biāo)A和指標(biāo)B都只使用到時(shí)間維度;
[0050]2)指標(biāo)A的數(shù)據(jù)口徑到月,指標(biāo)B的數(shù)據(jù)口徑到年;
[0051]3)指標(biāo)C =指標(biāo)A+指標(biāo)B,在進(jìn)行交集計(jì)算時(shí),指標(biāo)A也需要使用到年的數(shù)據(jù)口徑,計(jì)算結(jié)果指標(biāo)C的數(shù)據(jù)口徑也是到年;
[0052]4)為了計(jì)算方便,每個(gè)指標(biāo)都需要逐級匯總計(jì)算結(jié)果數(shù)據(jù),如指標(biāo)A在做計(jì)算時(shí),除了到月的基本數(shù)據(jù)口徑,還需逐級匯總計(jì)算生成到年的口徑,以及全部年度口徑的結(jié)果數(shù)據(jù)。公式類指標(biāo)前臺配置功能,參見圖3,配置指標(biāo)編碼、指標(biāo)名稱及計(jì)算規(guī)則。
[0053]運(yùn)行期自動裝載配置期的指標(biāo)配置信息并且完成指標(biāo)的計(jì)算工作,運(yùn)行期結(jié)構(gòu)參見圖4。該過程從指標(biāo)定義表中取得需要參與計(jì)算的指標(biāo),按照優(yōu)先級逐一進(jìn)行計(jì)算,將最終的結(jié)果保存在指標(biāo)結(jié)果表里。提數(shù)類指標(biāo)由于不依賴任何其他指標(biāo),首先進(jìn)行計(jì)算,整個(gè)計(jì)算過程分為以下5步,參見圖5。
[0054]I)從指標(biāo)定義表取得事實(shí)表和度量字段名稱;
[0055]2)從提數(shù)條件配置表里取得提數(shù)規(guī)則;
[0056]3)動態(tài)組裝事實(shí)表數(shù)據(jù)源和提數(shù)條件進(jìn)行計(jì)算,將計(jì)算結(jié)果保存到指標(biāo)結(jié)果表里;
[0057]4)對每個(gè)指標(biāo)計(jì)算維度逐級向上匯總,得到各級匯總數(shù)據(jù)口徑的計(jì)算結(jié)果;
[0058]5)將各級計(jì)算結(jié)果也