1.一種運用管理工具與靜態(tài)數(shù)據(jù)倉庫的項目依賴關(guān)系解決方法,其特征在于:提供靜態(tài)資源倉庫生成器、遠程倉庫、公共代碼分離包存儲器、靜態(tài)資源倉庫、管理項目依賴關(guān)系模塊及項目依賴關(guān)系定義模塊,所述運用管理工具與靜態(tài)數(shù)據(jù)倉庫的項目依賴關(guān)系解決方法包括以下步驟:
S1:所述公共代碼分離包存儲器將項目中常用到的功能拆分出來形成一個代碼分離包,然后將所述代碼分離包發(fā)送給所述遠程代碼資源倉庫生成器,所述遠程代碼資源倉庫生成器接收所述公共代碼分離包存儲器中的代碼分離包,并生成用于存儲代碼分離包的遠程倉庫;
S2:所述靜態(tài)資源倉庫生成器與所述遠程倉庫建立資源共享;
S3:所述靜態(tài)資源倉庫生成器分析放在所述遠程倉庫上的各種代碼分離包,獲取所述代碼分離包的元數(shù)據(jù),構(gòu)建一個靜態(tài)資源倉庫,當(dāng)在本地構(gòu)建項目時,需要實現(xiàn)一種功能,所述管理項目依賴關(guān)系模塊查找所述靜態(tài)資源倉庫是否有實現(xiàn)所述功能的代碼分離包元數(shù)據(jù),如果有,所述項目依賴關(guān)系定義模塊在項目中定義依賴關(guān)系,所述依賴關(guān)系通過一個json文件來聲明并形成一個可由所述管理項目依賴關(guān)系模塊識別的一個配置文件,所述項目依賴關(guān)系定義模塊將所述配置文件發(fā)送給所述管理項目依賴關(guān)系模塊,所述管理項目依賴關(guān)系模塊查詢所述代碼分離包所代表的項目的版本并對代碼分離包的數(shù)據(jù)進行版本的優(yōu)化,所述管理項目依賴關(guān)系模塊獲得代碼分離包元數(shù)據(jù)后,根據(jù)代碼分離包的元數(shù)據(jù)去所述遠程倉庫獲取代碼分離包文件,所述管理項目依賴關(guān)系模塊根據(jù)所述配置文件及代碼分離包的版本信息安裝解決所述項目依賴關(guān)系的代碼分離包。
2.根據(jù)權(quán)利要求1所述運用管理工具與靜態(tài)數(shù)據(jù)倉庫的項目依賴關(guān)系解決方法,其特征在于:所述靜態(tài)資源倉庫定義了代碼分離包的來源、代碼分離包的版本。
3.根據(jù)權(quán)利要求1所述運用管理工具與靜態(tài)數(shù)據(jù)倉庫的項目依賴關(guān)系解決方法,其特征在于:所述管理項目依賴關(guān)系模塊包括控制單元、查詢優(yōu)化單元、查詢分析單元、查詢結(jié)果集成單元、及項目安裝單元,所述步驟S3的實現(xiàn)步驟包括:所述查詢分析單元根據(jù)查詢聚合條件檢查代碼數(shù)據(jù)包的語句的語義和語法是否符合查詢代數(shù)邏輯,若正確,利用元數(shù)據(jù)計算公式完成查詢所需要的數(shù)據(jù)倉庫版本集合,將查詢語句分解為一組獨立的子查詢,每個子查詢針對一個數(shù)據(jù)項目版本進行計算,若錯誤,則結(jié)束流程;
所述控制單元將分解后的子查詢分發(fā)到各個項目版本上執(zhí)行,所述查詢優(yōu)化單元對子查詢進行優(yōu)化處理,監(jiān)控子查詢能否正確執(zhí)行,若所有子查詢都能成功執(zhí)行,將子查詢結(jié)果傳送到查詢結(jié)果集成單元,所述查詢結(jié)果集成單元將多個子查詢的結(jié)果進行集成后輸出。
4.根據(jù)權(quán)利要求3所述運用管理工具與靜態(tài)數(shù)據(jù)倉庫的項目依賴關(guān)系解決方法,其特征在于:所述查詢結(jié)果集成單元利用轉(zhuǎn)換函數(shù)將一個項目模式版本下的查詢結(jié)果轉(zhuǎn)換為指定的另一個模式版本結(jié)構(gòu)中的數(shù)據(jù)。
5.根據(jù)權(quán)利要求3所述運用管理工具與靜態(tài)數(shù)據(jù)倉庫的項目依賴關(guān)系解決方法,其特征在于:所述查詢分析單元的查詢結(jié)果為F,所述查詢聚合條件為:將Qr與B1,B2,…,BK聚合形成Qg,所述查詢分析單元運用聚合函數(shù)從R1,R2,…,Rp中選擇A1,A2,…,Am,φ(Am+1),…,φ(An);
其中,R1,R2,…,Rp為維度表或事實表,A1,A2,…,Am和B1,B2,…,BK為R1,R2,…,Rp中的屬性;為在屬性Am+1,…,An上的聚合函數(shù),B1,B2,…,BK為分組聚合屬性;Qr為記錄篩選條件,Qg為分組篩選條件,Qr=Λfi,Qg=Λfj,Λ代表邏輯運算符;fi(i=1,2,…,s)和fj(j=s+1,…,t)都是形為xθy的式子,θ為關(guān)系運算符,x為R1,R2,…,Rp中的屬性,y可以為R1,R2,…,Rp中的屬性或變量、常量。
6.根據(jù)權(quán)利要求5所述運用管理工具與靜態(tài)數(shù)據(jù)倉庫的項目依賴關(guān)系解決方法,其特征在于:
所述查詢優(yōu)化單元對查詢結(jié)果F進行優(yōu)化選擇相應(yīng)的聚合優(yōu)化函數(shù),所述查詢結(jié)果集成單元將查詢結(jié)果F根據(jù)聚合優(yōu)化函數(shù)進行再聚合,
所述查詢結(jié)果集成單元將查詢結(jié)果F分解為一組子查詢{F_S1,F_S2,…,F_Sn},再將子查詢結(jié)果合并,即F=F_S1∪F_S2∪…∪F_Sn,
其中,所述聚合優(yōu)化函數(shù)包括sum(),avg(),count(),max()和min(),所述查詢結(jié)果F的聚合結(jié)果為所述子查詢F_Si的聚合結(jié)果為所述查詢結(jié)果經(jīng)過化后的聚合結(jié)果如下所示:
(4)F*max(Ak)=max(F_S1*max(Ak),F_S2*max(Ak),…,F_Sn*max(Ak));
(5)F*min(Ak)=min(F_S1*min(Ak),F_S2*max(Ak),…,F_Sn*min(Ak))。
7.根據(jù)權(quán)利要求1所述的運用管理工具與靜態(tài)數(shù)據(jù)倉庫的項目依賴關(guān)系解決方法,其特征在于:所述靜態(tài)資源倉庫生成器包括數(shù)據(jù)包接收分析模塊、元數(shù)據(jù)提取模塊及數(shù)據(jù)倉庫生成模塊,所述步驟S3的實現(xiàn)步驟包括:所述數(shù)據(jù)包接收分析模塊接收所述遠程倉庫的項目的代碼分離包并對所述接收的代碼分離包進行分析獲取所述代碼分離包的元數(shù)據(jù),所述元數(shù)據(jù)提取模塊提取所述數(shù)據(jù)包接收分析模塊的元數(shù)據(jù)并將接收的元數(shù)據(jù)發(fā)送給所述數(shù)據(jù)倉庫生成模塊,所述數(shù)據(jù)倉庫生成模塊根據(jù)獲取的所述代碼分離包的元數(shù)據(jù),構(gòu)建一個靜態(tài)資源倉庫。