前言:一篇好文章的誕生,需要你不斷地搜集資料、整理思路,本站小編為你收集了豐富的倉(cāng)庫管理系統(tǒng)設(shè)計(jì)思路主題范文,僅供參考,歡迎閱讀并收藏。
關(guān)鍵詞:條碼自動(dòng)化;航材管理
1前言
航材倉(cāng)儲(chǔ)在學(xué)院的整個(gè)供應(yīng)鏈中起著至關(guān)重要的作用,如果不能保證正確的入庫和庫存控制及出庫,將會(huì)導(dǎo)致管理費(fèi)用的增加,服務(wù)質(zhì)量難以得到保證。傳統(tǒng)靜態(tài)的倉(cāng)庫管理已無法保證航材資源的高效利用。如今倉(cāng)庫作業(yè)和庫存控制作業(yè)十分復(fù)雜多樣化,僅靠人工記憶和手工錄入,不但費(fèi)時(shí)費(fèi)力,而且容易出錯(cuò),給學(xué)院帶來很大的潛在風(fēng)險(xiǎn)。
2自動(dòng)化航材倉(cāng)儲(chǔ)管理系統(tǒng)的意義
為進(jìn)一步加強(qiáng)學(xué)院信息化規(guī)范建設(shè)及管理,實(shí)現(xiàn)飛機(jī)維修各零部件自動(dòng)化倉(cāng)儲(chǔ)管理,達(dá)到信息準(zhǔn)確、快速查詢統(tǒng)計(jì),特設(shè)計(jì)該系統(tǒng)來滿足此需求。自動(dòng)化航材倉(cāng)儲(chǔ)解決方案在倉(cāng)庫管理中引入條碼技術(shù),對(duì)倉(cāng)庫的入庫、出庫、調(diào)撥、移庫移位、庫存盤點(diǎn)等各個(gè)作業(yè)環(huán)節(jié)的數(shù)據(jù)進(jìn)行自動(dòng)化的數(shù)據(jù)采集,保證倉(cāng)庫管理各個(gè)作業(yè)環(huán)節(jié)數(shù)據(jù)輸入的效率和準(zhǔn)確性,確保學(xué)院及時(shí)準(zhǔn)確地掌握庫存的真實(shí)數(shù)據(jù),合理保持和控制航材庫存。通過科學(xué)的編碼,可方便地進(jìn)行材料的批次、保質(zhì)期、序號(hào)等追溯管理。
3自動(dòng)化航材倉(cāng)儲(chǔ)管理系統(tǒng)設(shè)計(jì)與實(shí)現(xiàn)
3.1傳統(tǒng)倉(cāng)儲(chǔ)管理
傳統(tǒng)的倉(cāng)庫系統(tǒng)內(nèi)部,依賴于一個(gè)非自動(dòng)化的、以紙張文件為基礎(chǔ)的系統(tǒng)來記錄、追蹤進(jìn)出的材料,以人為記憶實(shí)施倉(cāng)庫內(nèi)部的管理。對(duì)于整個(gè)倉(cāng)儲(chǔ)區(qū)而言,人為因素的不確定性,導(dǎo)致勞動(dòng)效率低下,準(zhǔn)確率無以保證。隨著庫存品種及數(shù)量的增加以及出入庫頻率的增加,傳統(tǒng)的倉(cāng)庫作業(yè)模式嚴(yán)重影響正常的運(yùn)行工作效率。而現(xiàn)有已經(jīng)建立的計(jì)算機(jī)管理的倉(cāng)庫管理系統(tǒng),隨著航材流通的加劇,也難以滿足倉(cāng)庫管理快速準(zhǔn)確實(shí)時(shí)的要求。
3.2條碼技術(shù)介紹
條碼是由一組按一定編碼規(guī)則排列的,用以表示一定的字符、數(shù)字及符號(hào)組成的信息。條碼系統(tǒng)是由條碼符號(hào)設(shè)計(jì)、制作及掃描閱讀組成的自動(dòng)識(shí)別系統(tǒng)。條碼是迄今為止最經(jīng)濟(jì)、實(shí)用的一種自動(dòng)識(shí)別技術(shù)。條碼技術(shù)具有幾個(gè)方面的優(yōu)點(diǎn):可靠準(zhǔn)確,數(shù)據(jù)輸入速度快,經(jīng)濟(jì)便宜,靈活、實(shí)用,設(shè)備簡(jiǎn)單,易于制作,。條碼標(biāo)簽易于制作,對(duì)印刷技術(shù)設(shè)備和材料無特殊要求?!∫愿鞣N一維碼為代表的條形碼技術(shù)已經(jīng)是一門高度成熟技術(shù),考慮到我們分院航材條碼涵蓋信息大的特點(diǎn),本次選用PDF417二維條碼技術(shù)來作為航材的條碼技術(shù)標(biāo)準(zhǔn)。
3.3用友管理系統(tǒng)與自動(dòng)化航材倉(cāng)儲(chǔ)管理系統(tǒng)的關(guān)系
用友管理系統(tǒng)需要大量的數(shù)據(jù)輸入,只有在得到及時(shí)有效正確的輸入的前提下,用友管理系統(tǒng)才能真正為分院起到管理和決策支持作用。用友管理系統(tǒng)可以在分院范圍內(nèi)共享正確的數(shù)據(jù),大大提高生產(chǎn)力。但是輸入錯(cuò)誤的數(shù)據(jù),其影響也一樣會(huì)遍及分院范圍的每一個(gè)角落。這種對(duì)于輸入數(shù)據(jù)的依賴性已經(jīng)成為ERP系統(tǒng)實(shí)施中的一個(gè)重要問題。研究人員已經(jīng)在這方面做了大量的工作。目前看來最有效的解決方案仍然是自動(dòng)識(shí)別技術(shù),尤其是條形碼技術(shù)。目前條碼生成識(shí)讀技術(shù)已經(jīng)相當(dāng)成熟,在ERP系統(tǒng)中實(shí)施條碼應(yīng)用關(guān)鍵點(diǎn)在于如何與原有的ERP系統(tǒng)結(jié)合。從連接形式來看,條碼支持模塊與ERP系統(tǒng)有緊耦合連接和松耦合連接兩種形式。在緊耦合中,條碼支持模塊實(shí)際上與ERP系統(tǒng)是一體的。條碼支持深入到ERP的業(yè)務(wù)層次。一般來說,這種情況多數(shù)是在ERP實(shí)施中已經(jīng)考慮到了條碼支持。緊耦合方式的效率是最高的,對(duì)于原有的ERP系統(tǒng)幾乎沒有什么性能影響;同時(shí)對(duì)于當(dāng)前的業(yè)務(wù)融合的最好。但是緊耦合方式也有缺點(diǎn),就是因?yàn)閮刹糠株P(guān)聯(lián)比較緊密,在業(yè)務(wù)過程變遷中靈活性不高。而在松耦合方式中條碼支持模塊實(shí)際上是獨(dú)立的一塊,是作為ERP系統(tǒng)的延伸部分獨(dú)立存在的。不符合本次項(xiàng)目的要求,故不建議使用這種方式。本管理系統(tǒng)選用緊耦合方式和用友管理軟件進(jìn)行對(duì)接,主要考慮到用友管理系統(tǒng)和自動(dòng)化航材倉(cāng)儲(chǔ)管理系統(tǒng)之間存在數(shù)據(jù)和指令的雙向流動(dòng),還有就是項(xiàng)目組對(duì)用友管理系統(tǒng)的充分了解,為緊耦合建立了技術(shù)基礎(chǔ)。
3.4系統(tǒng)操作實(shí)施
3.4.1采購(gòu)入庫環(huán)節(jié)實(shí)施根據(jù)實(shí)物到貨情況手動(dòng)編制11位定長(zhǎng)的內(nèi)部批號(hào)。采購(gòu)入庫單根據(jù)實(shí)物到貨情況直接手動(dòng)錄入用友系統(tǒng),包括供應(yīng)商、倉(cāng)庫、收發(fā)類別、材料名稱、數(shù)量、金額、質(zhì)量、批次、序列號(hào)等信息。自動(dòng)化航材倉(cāng)儲(chǔ)管理系統(tǒng)自動(dòng)讀入用友系統(tǒng)采購(gòu)入庫單信息,提供入庫單號(hào)、入庫日期、供應(yīng)商、產(chǎn)品名稱、批次號(hào)、序列號(hào)查詢條件。根據(jù)查詢結(jié)果可選擇批量或單條記錄打印標(biāo)簽。庫管在入庫條碼打印時(shí),按照查詢條件查詢需打印標(biāo)簽進(jìn)行打印。3.4.2材料出庫環(huán)節(jié)實(shí)施根據(jù)實(shí)際需領(lǐng)料情況將需出庫產(chǎn)品統(tǒng)一配齊后,放在條碼槍可讀范圍內(nèi)(離電腦主機(jī)3米以內(nèi)),如是大件材料不便搬運(yùn),可只提供大件的條碼標(biāo)簽。在用友系統(tǒng)新增材料出庫單,輸入表頭信息,包括單號(hào)、部門、倉(cāng)庫、備注等。將光標(biāo)定位在表體“條形碼”處,通過條碼槍將產(chǎn)品標(biāo)簽中的二維碼掃入系統(tǒng)。和條碼相關(guān)信息如產(chǎn)品、批次、序列號(hào)、質(zhì)量等將自動(dòng)填入。然后輸入本次出庫數(shù)量和項(xiàng)目。如還有其他產(chǎn)品,重復(fù)以上步驟后保存。3.4.3材料退庫環(huán)節(jié)實(shí)施退庫時(shí),可查詢?cè)I(lǐng)料時(shí)的產(chǎn)品標(biāo)簽,以便通過條碼槍進(jìn)行掃描錄入。如無法取得原領(lǐng)料時(shí)的產(chǎn)品標(biāo)簽,可在自動(dòng)化航材倉(cāng)儲(chǔ)管理系統(tǒng)中進(jìn)行查詢并打印,以便通過條碼槍進(jìn)行掃描錄入。
4結(jié)語
通過系統(tǒng)的設(shè)計(jì),將單據(jù)所需的大量紙張文字信息轉(zhuǎn)換成電子數(shù)據(jù),實(shí)現(xiàn)數(shù)據(jù)的自動(dòng)化采集,解決手工單據(jù)信息不準(zhǔn)確的問題,去掉了手工錄入航材信息的步驟,能大大提高工作效率。
參考文獻(xiàn):
關(guān)鍵詞:聚集優(yōu)化;數(shù)據(jù)倉(cāng)庫;決策支持;最優(yōu)路徑算法
中圖分類號(hào):TP311 文獻(xiàn)標(biāo)識(shí)碼:B
文章編號(hào):1004-373X(2008)10-030-03
DAOA:A Dynamic Data Warehouse Aggregation Optimization Approach
ZHANG Baili1,ZHU Wen2,LV Jianhua1
(1.School of Computer Science and Engineering,Southeast University,Nanjing,210096,China;
2.College of Science,Nanjing University of Science & Technology,Nanjing,210094,China)
Abstract:Nowadays,more and more enterprises have built up or are going to build up their data warehouse for supporting enterprises′ decisions.But it is necessary for us to optimize the DW constantly and periodically,for that users′ requirement can′t be caught correctly at the beginning of its creation and that users′ requirement is altering frequently.DW aggregation optimization is one of the most important part of DW optimization.In this paper aggregation route_optimize algorithm and aggregation materialization Select_Optimize algorithm are proposed,and then we design an effective method-DAOA to get an aggregation scheme that respond to users demand with best time-space complexity.At last we apply this scheme to a company′s decision system.It proves that the scheme has good efficient.
Keywords:aggregation optimization;data warehouse;decision support;optimized route algorithm
目前,我國(guó)大、中型企業(yè)約有50多萬家,分布在各大、中城市以及縣城中,由于政府職能的轉(zhuǎn)換以及環(huán)境和條件的限制,這些企業(yè)受到國(guó)內(nèi)外市場(chǎng)很大的沖擊和影響,為了應(yīng)對(duì)這種局面,企業(yè)決策層都逐步意識(shí)到企業(yè)信息化對(duì)其發(fā)展的重要意義。因而他們對(duì)企業(yè)內(nèi)外的信息需求日益增強(qiáng),對(duì)信息的收集、加工、查詢以及預(yù)測(cè)決策也越來越重視。企業(yè)原來的管理方式和手段已不再適應(yīng)這些需求,也將嚴(yán)重妨礙企業(yè)的生存與發(fā)展。為了提高企業(yè)的生存能力和競(jìng)爭(zhēng)力,同時(shí)也為了改變企業(yè)落后的管理體制、管理方式和手段,他們強(qiáng)烈地感到建立信息管理系統(tǒng)并在此基礎(chǔ)上建立決策支持系統(tǒng)的重要性,而新興的數(shù)據(jù)倉(cāng)庫技術(shù)則為他們建立企業(yè)決策支持系統(tǒng)提供了很好的解決途徑[1]。
數(shù)據(jù)倉(cāng)庫是計(jì)算機(jī)應(yīng)用的新領(lǐng)域,旨在通過通暢、合理、全面的信息管理,達(dá)到有效的決策支持[1,2]。作為數(shù)據(jù)倉(cāng)庫的關(guān)鍵技術(shù)之一,聚集優(yōu)化技術(shù)承擔(dān)著對(duì)現(xiàn)有數(shù)據(jù)倉(cāng)庫不斷地進(jìn)行優(yōu)化,彌補(bǔ)設(shè)計(jì)開發(fā)階段的不足,提高數(shù)據(jù)倉(cāng)庫的運(yùn)行效率以及可用性、實(shí)用性等重要任務(wù)。同時(shí),聚集優(yōu)化則直接影響了查詢的響應(yīng)速度,從而最終關(guān)系到用戶滿意程度和數(shù)據(jù)倉(cāng)庫的生命周期。
1 數(shù)據(jù)倉(cāng)庫與聚集優(yōu)化
1.1 數(shù)據(jù)倉(cāng)庫
數(shù)據(jù)倉(cāng)庫的定義是:數(shù)據(jù)倉(cāng)庫是面向主題的、集成的、穩(wěn)定的,不同時(shí)間的數(shù)據(jù)集合,用于支持經(jīng)營(yíng)管理中決策制定過程[2]。數(shù)據(jù)倉(cāng)庫的思想隨著逐漸嘗試對(duì)數(shù)據(jù)庫中的數(shù)據(jù)進(jìn)行再加工,形成一個(gè)綜合的、面向分析的環(huán)境,更好地支持決策分析而逐漸形成。他不同于傳統(tǒng)的數(shù)據(jù)庫,傳統(tǒng)數(shù)據(jù)庫中存放的是操作性的數(shù)據(jù),主要用于聯(lián)機(jī)事務(wù)處理(OLTP),也叫操作型處理,是指對(duì)數(shù)據(jù)庫聯(lián)機(jī)進(jìn)行日常操作,他關(guān)心的是響應(yīng)時(shí)間;而存放在數(shù)據(jù)倉(cāng)庫中的數(shù)據(jù)是分析性的數(shù)據(jù),主要用于聯(lián)機(jī)分析處理(OLAP),也稱分析型處理,檢索的內(nèi)容隨機(jī)性和數(shù)量更大,不但存儲(chǔ)近期數(shù)據(jù),也存儲(chǔ)歷史數(shù)據(jù),且當(dāng)前數(shù)據(jù)不斷得到補(bǔ)充、更新,并可實(shí)現(xiàn)不同來源數(shù)據(jù)的融合。數(shù)據(jù)倉(cāng)庫支持隨機(jī)的查詢,為使用者提供更多的信息,而不是數(shù)據(jù),為決策者提供了更好的決策支持,他是建立決策支持系統(tǒng)(DSS)的基礎(chǔ)[2-4]。
1.2 數(shù)據(jù)倉(cāng)庫優(yōu)化和聚集優(yōu)化
當(dāng)前主流數(shù)據(jù)倉(cāng)庫管理系統(tǒng)和聯(lián)機(jī)分析服務(wù)器,都要求用戶必須熟知企業(yè)模型、了解原始數(shù)據(jù)、對(duì)數(shù)據(jù)倉(cāng)庫具備相當(dāng)程度的知識(shí)背景。然而對(duì)于企業(yè)在數(shù)據(jù)倉(cāng)庫設(shè)計(jì)和開發(fā)階段,由于用戶和開發(fā)人員對(duì)此認(rèn)識(shí)有所不同和不足,導(dǎo)致在使用過程中暴露出大量問題。因此如何根據(jù)系統(tǒng)運(yùn)行情況和用戶需求的變化,對(duì)數(shù)據(jù)倉(cāng)庫不斷地進(jìn)行優(yōu)化,彌補(bǔ)設(shè)計(jì)開發(fā)階段的不足,以提高數(shù)據(jù)倉(cāng)庫的運(yùn)行效率以及可用性、實(shí)用性,已經(jīng)是數(shù)據(jù)倉(cāng)庫應(yīng)用中迫切需要解決的重要問題[5-7]。
作為數(shù)據(jù)倉(cāng)庫優(yōu)化的一項(xiàng)重要組成,數(shù)據(jù)聚集優(yōu)化主要針對(duì)數(shù)據(jù)倉(cāng)庫數(shù)據(jù)聚集部分的選擇而進(jìn)行優(yōu)化,他包括了對(duì)進(jìn)入聚集空間的維、層次以及路徑依據(jù)實(shí)際使用效果從獲得最佳時(shí)間復(fù)雜度與空間復(fù)雜度的角度進(jìn)行選擇[4,5]。具體而言,聚集通過對(duì)數(shù)據(jù)進(jìn)行分組匯總,使數(shù)據(jù)到達(dá)一個(gè)用戶感興趣的層次,然后可以在這個(gè)概念更為清晰的數(shù)據(jù)集進(jìn)行數(shù)據(jù)分析。例如對(duì)一個(gè)藥品銷售企業(yè)的數(shù)據(jù)倉(cāng)庫而言,可以聚集藥品的銷售額或銷售量,得到月、季、年的銷售數(shù)據(jù),然后再分析哪些因素對(duì)月、季、年的銷售數(shù)據(jù)產(chǎn)生影響,而在聚集前的數(shù)據(jù)集,進(jìn)行這種數(shù)據(jù)分析研究比較困難或可能本身就沒有意義。
在數(shù)據(jù)倉(cāng)庫的設(shè)計(jì)開發(fā)階段,如果想獲得較好的聚集物化方案,需要分析所有用戶和應(yīng)用的需求,研究實(shí)際使用中需要哪些維度、粒度層次的匯總信息,從而確定所有可能涉及的聚集和估算使用的頻度。但在數(shù)據(jù)倉(cāng)庫創(chuàng)建初期,進(jìn)行這種需求分析顯然是比較困難或不太現(xiàn)實(shí),且很多情況下可能并不準(zhǔn)確。為此本文提出2種動(dòng)態(tài)聚集優(yōu)化算法:聚集路徑優(yōu)化算法Route_Optimize和聚集物化選擇算法Select_Optimize,并以他們?yōu)榛A(chǔ),獲得一種比較切實(shí)可行聚集優(yōu)化的實(shí)施方案DAOA:在初期采用系統(tǒng)缺省的聚集物化方案,而在系統(tǒng)運(yùn)行的過程中,通過對(duì)用戶查詢信息不斷的統(tǒng)計(jì)分析,利用聚集路徑優(yōu)化和物化選擇2種算法對(duì)聚集進(jìn)行周期性優(yōu)化,從而實(shí)現(xiàn)數(shù)據(jù)倉(cāng)庫中聚集跟隨用戶和應(yīng)用的變化而進(jìn)行動(dòng)態(tài)調(diào)整,提高了數(shù)據(jù)倉(cāng)庫查詢響應(yīng)性能,以更好地滿足用戶的需求。
2 聚集動(dòng)態(tài)優(yōu)化方案DAOA
2.1 方案的具體步驟
針對(duì)一般商業(yè)企業(yè)決策支持系統(tǒng)的特點(diǎn),提出以下的步驟,以有效地實(shí)現(xiàn)聚集的優(yōu)化。
(1) 建立初始聚集物化方案;
(2) 確定并錄入與聚集優(yōu)化的相關(guān)參數(shù)指標(biāo);
(3) 啟動(dòng)/周期性觸發(fā)聚集監(jiān)測(cè)進(jìn)程,采集系統(tǒng)運(yùn)行記錄;
(4) 系統(tǒng)日志分析和用戶需求分析。在對(duì)系統(tǒng)日志分析的基礎(chǔ)上,按照維和粒度層次的取舍原則和應(yīng)用需求度的判斷流程,確定哪些聚集需要物化,哪些可以刪除,哪些聚集需要經(jīng)過下一步算法的判斷;
(5) 建立有向聚集關(guān)系表,獲取各聚集權(quán)重;
(6) 交替執(zhí)行物化選擇算法和聚集路徑的優(yōu)化算法,在滿足用戶期望值和系統(tǒng)性能要求的基礎(chǔ)上,確定哪些聚集需要物化,確定哪些聚集無需物化,而轉(zhuǎn)為查詢關(guān)系,實(shí)現(xiàn)聚集方案的聚集總代價(jià)最小;
(7) 根據(jù)優(yōu)化算法處理后得到的物化聚集方案集合和最優(yōu)路徑,重新調(diào)整數(shù)據(jù)倉(cāng)庫的聚集。
2.2 最優(yōu)聚集路徑優(yōu)化算法Route_Optimize
對(duì)于具有n維的立方體,每一個(gè)聚集最多都可以由n個(gè)聚集直接生成,如圖1所示,圖中給出了一個(gè)聚集方案(222)和由他可以生成及生成他的其他聚集方案之間的關(guān)系,聚集方案之間的箭頭方向?yàn)榫奂煞较蛞布瓷暇矸较?,若―個(gè)聚集方案能夠由另外一個(gè)聚集方案經(jīng)過某一維的1次聚集 (指跨一個(gè)層次)生成,那么第二個(gè)聚集方案就稱為第一個(gè)聚集方案的雙親,如(222)是(122)的雙親,即(122)是由(222)產(chǎn)生的,反過來,(122)是(222)的孩子。由圖分析推論可得:每一個(gè)聚集方案至多能夠直接生成n個(gè)聚集,每一個(gè)聚集最多都可以由n個(gè)聚集直接生成,任何一個(gè)聚集都可以由細(xì)節(jié)數(shù)據(jù)(999)即事實(shí)表直接或間接生成。但由這nЦ鏊親生成目標(biāo)聚集的效率是不同的,還有可能存在有的雙親聚集沒有生成,這可能就要用到祖父層的聚集。因此產(chǎn)生了最優(yōu)聚集路徑選擇的問題:在聚集中查找最有效路徑,從而以最小的聚集成本、最快的速度產(chǎn)生結(jié)果。但最優(yōu)聚集路徑的選擇是一個(gè)NP問題[5],只能通過啟發(fā)式規(guī)則,應(yīng)用優(yōu)化方法來接近最優(yōu)效果。
目前應(yīng)用較多的優(yōu)化方法有最小父親方法、緩存計(jì)算結(jié)果方法、分期清償掃描方法、貪心算法[5-7]等,但是其中多數(shù)算法僅適用于系統(tǒng)建立立方體,屬于一次性物化路徑生成,沒有考慮實(shí)際的查詢執(zhí)行情況和用戶需求的變化,聚集的物化都是在查詢開始之前定義好的,因此,可以稱作靜態(tài)的聚集優(yōu)化。另外,其中的一些算法僅側(cè)重考慮聚集代價(jià)的最優(yōu)或用戶響應(yīng)最優(yōu),未能加以有效綜合。
Route_Optimize是在貪心算法基礎(chǔ)上進(jìn)行的改進(jìn)算法,用于動(dòng)態(tài)地實(shí)現(xiàn)解決聚集方案之間的最優(yōu)路徑問題。其基本思路是:簡(jiǎn)化聚集方案之間的關(guān)系,每1個(gè)節(jié)點(diǎn)有且只有1個(gè)父節(jié)點(diǎn),允許沒有或有多個(gè)子節(jié)點(diǎn),被淘汰的父子關(guān)系轉(zhuǎn)變?yōu)樘撽P(guān)系,其約束條件是聚集方案關(guān)系圖權(quán)值總和最低。Route_Optimize算法的基本步驟為:
(1) 輸入帶權(quán)值的聚集關(guān)系圖R0(由屬于P1和P2的聚集方案組成);
(2) 從聚集關(guān)系圖R0的最低層出發(fā),逐層掃描各聚集方案節(jié)點(diǎn)Xi;
(3) 選擇連接Xi權(quán)值最小的父節(jié)點(diǎn)Qi為節(jié)點(diǎn)Xi的最優(yōu)父節(jié)點(diǎn);
(4) 斷開Xi與其他聚集方案父節(jié)點(diǎn)之間的連接,以聚集方案節(jié)點(diǎn)Xi與Qi的聚集權(quán)值累計(jì)圖R0的總體聚集成本C0;從而得到基于R0的最小代價(jià)為C0Ь奐方案關(guān)系圖。
算法中的P1,P2的含義如下:P1代表需物化的聚集方案集合;P2代表需要根據(jù)聚集和查詢閥值進(jìn)一步判斷的聚集方案集合,另外用P3代表原則上無需物化的聚集方案。
2.3 聚集的物化選擇算法Select_Optimize
在聚集方案關(guān)系圖中,存在一些聚集方案:在滿足用戶和應(yīng)用要求的條件下,其父節(jié)點(diǎn)得到這些聚集方案的聚集成本很低,同時(shí)通過他們的父節(jié)點(diǎn)得到其子節(jié)點(diǎn)的聚集成本也很低,即如果不對(duì)這些聚集方案進(jìn)行物化,則由這些聚集方案的父節(jié)點(diǎn)聚集產(chǎn)生這些聚集方案的子節(jié)點(diǎn)的聚集成本將低于聚集閾值,這些聚集方案的父節(jié)點(diǎn)在用戶查詢的時(shí)候,臨時(shí)聚集產(chǎn)生這些聚集方案的查詢成本將低于查詢閥值(本文把這樣的聚集方案稱為滿足聚集閾值與查詢閾值的聚集方案);更重要的是,即便是不對(duì)這些聚集方案進(jìn)行物化,對(duì)其他聚集方案進(jìn)行物化的總體聚集成本將低于對(duì)這些聚集方案進(jìn)行物化的總體聚集成本。因而,出于降低數(shù)據(jù)冗余度和降低聚集復(fù)雜性的要求,完全可以摒棄對(duì)這些多余的聚集方案進(jìn)行物化,而在查詢需要的時(shí)候,對(duì)沒有物化的聚集方案進(jìn)行臨時(shí)聚集。這就是聚集方案物化選擇的問題。
與Route_Optimize算法類似,本文參考了包括貪心算法在內(nèi)的一些已有算法的基礎(chǔ)上,結(jié)合動(dòng)態(tài)優(yōu)化的特點(diǎn),提出Select_Optimize算法。其基本思路是:在原有關(guān)系圖的基礎(chǔ)上,將屬于集合P2中,滿足最低權(quán)值條件(聚集閾值、查詢閾值) 和關(guān)系圖權(quán)值總和最低的聚集方案轉(zhuǎn)變?yōu)樘摼奂桨?,將該聚集方案的父關(guān)系轉(zhuǎn)變?yōu)樘撽P(guān)系或查詢關(guān)系,將該虛聚集方案的子關(guān)系轉(zhuǎn)交給該方案的父聚集方案。Select_Optimize算法的基本步驟為:
(1) 輸入攜帶權(quán)值的聚集關(guān)系圖R0(由屬于P1和P2的聚集方案組成)、聚集閾值L0、查詢閾值Q0 ;
(2) 備份聚集關(guān)系圖R0,基于聚集關(guān)系圖R0運(yùn)行Route_Optimize算法,獲得初始總體聚集成本C0 (已刪除節(jié)點(diǎn)不參與運(yùn)算),恢復(fù)聚集關(guān)系圖R0;
(3) 篩選出聚集關(guān)系圖R0中屬于集合P2且滿足聚集閾值與查詢閾值的聚集方案節(jié)點(diǎn)X={Xl,X2,…,Xm},即節(jié)點(diǎn)Xi刪除后(i ∈ (1,2,…,m)),節(jié)點(diǎn)Xi可以由其最低權(quán)值父節(jié)點(diǎn)Xi′查詢生成,且這個(gè)權(quán)值不大于查詢閾值;節(jié)點(diǎn)Xi的子節(jié)點(diǎn)Xi″可以由其最低權(quán)值父節(jié)點(diǎn)Xi′聚集生成,且若這個(gè)子節(jié)Xi″點(diǎn)是已經(jīng)被刪除的節(jié)點(diǎn),則節(jié)點(diǎn)Xi與其子節(jié)點(diǎn)Xi″之間的查詢權(quán)值加上節(jié)點(diǎn)Xi與父節(jié)點(diǎn)Xi′之間的聚集權(quán)值的和應(yīng)不大于查詢閾值;若這個(gè)子節(jié)點(diǎn)Xi″不是已經(jīng)被刪除的節(jié)點(diǎn),則節(jié)點(diǎn)Xi與其子節(jié)點(diǎn)Xi″之間的聚集權(quán)值加上節(jié)點(diǎn)Xi與父節(jié)點(diǎn)Xi′之間的聚集權(quán)值的和應(yīng)不大于聚集閾值。如沒有一個(gè)這樣的聚集方案節(jié)點(diǎn)則轉(zhuǎn)至步驟(7);
(4) 分別得到刪除聚集方案節(jié)點(diǎn)Xi后的聚集關(guān)系圖Ri (即節(jié)點(diǎn)Xi的聚集方案轉(zhuǎn)變?yōu)樘摼奂桨?;?jié)點(diǎn)Xi與其最低權(quán)值父節(jié)點(diǎn)Qi建立查詢關(guān)系,斷開節(jié)點(diǎn)Xi與其他父節(jié)點(diǎn)之間的關(guān)系:節(jié)點(diǎn)Xi的未刪除子節(jié)點(diǎn)Xi″與節(jié)點(diǎn)Xi的最低權(quán)值父節(jié)點(diǎn)Qi建立聚集關(guān)系,權(quán)值為父權(quán)值與子權(quán)值之和;節(jié)點(diǎn)Xi的已刪除子節(jié)點(diǎn)Xi″與節(jié)點(diǎn)Xi的最低權(quán)值父節(jié)點(diǎn)Qi建立查詢關(guān)系,權(quán)值為父權(quán)值與子權(quán)值之和。其中i ∈ (1,2,…,m)),基于聚集關(guān)系圖Ri運(yùn)行Route_Optimize算法,得出他們對(duì)應(yīng)的總體聚集成本Ci。
(5) 篩選出節(jié)點(diǎn)Xt (這里t ∈ (1,2,…,m)),他滿足條件:總體聚集成本Ct=Min(Cl,C2,…Cm)且總體聚集成本Ct
(6) 用Rt替換R0,轉(zhuǎn)至步驟(2)運(yùn)行;
(7) 基于聚集關(guān)系圖R0運(yùn)行算法Route_Optimize,返回新的聚集關(guān)系圖R0及總體聚集成本C0。И
經(jīng)過在Select_Optimize算法尾部調(diào)用Route_Optimize算法,能夠得到總體聚集成本最低的聚集關(guān)系圖以及各聚集方案之間的查詢關(guān)系圖(針對(duì)虛聚集方案)。
3 結(jié) 語
以上的算法模塊利用VC++在Oracle9i中得以實(shí)現(xiàn),并在實(shí)驗(yàn)中進(jìn)行驗(yàn)證。在實(shí)驗(yàn)室的環(huán)境中,原型系統(tǒng)所用的Dell Power Edge 6600硬件平臺(tái)是一款雙至強(qiáng)(XEON)CPU的企業(yè)級(jí)服務(wù)器,良好的系統(tǒng)性能為實(shí)驗(yàn)提供了很好條件。但由于實(shí)驗(yàn)數(shù)據(jù)量尚達(dá)不到海量,為了較清晰反映物化調(diào)整后的效果,實(shí)驗(yàn)過程中盡量采用了一些極端取值,以更好地驗(yàn)證算法。具體做法是:一方面采用較大范圍內(nèi)改變聚集的權(quán)重系數(shù)大?。扇藶樵O(shè)定的代表聚集重要性的參數(shù))影響聚集物化的取舍,其直接可以從聚集查詢的響應(yīng)速度上反映出來。另一方面通過專門編寫的程序模擬日志的數(shù)據(jù)改變或修改聚集閥值等參數(shù),觀察聚集的效果,均達(dá)到預(yù)期的目標(biāo):利用最優(yōu)路徑算法使聚集關(guān)系圖得到了很大的簡(jiǎn)化,大大低于原先缺省的聚集成本,為后來的物化選擇算法提供了方便。
迄今為止,由于具體實(shí)現(xiàn)的復(fù)雜性和多變性,目前國(guó)內(nèi)數(shù)據(jù)倉(cāng)庫技術(shù)在商業(yè)企業(yè)中的應(yīng)用還十分有限。本文針對(duì)現(xiàn)階段企業(yè)數(shù)據(jù)倉(cāng)庫建設(shè)中關(guān)鍵的聚集優(yōu)化問題,提出一種切實(shí)可行的實(shí)施方案,并在實(shí)驗(yàn)中和具體應(yīng)用收到了良好的效果,說明方案有效可行。
參 考 文 獻(xiàn)
[1]Efrem G M.決策支持和數(shù)據(jù)倉(cāng)庫系統(tǒng)[M].北京:電子工業(yè)出版社,2001.
[2]Inmon W H.Building the Warehouse\[M\].2nd Edition.NewYork:John Wiley and Sons,1996.
[3]Michael C.Oracle8i數(shù)據(jù)倉(cāng)庫[M].北京:機(jī)械工業(yè)出版社,2002.
[4]袁林.基于數(shù)據(jù)倉(cāng)庫的輔助決策系統(tǒng)設(shè)計(jì)與實(shí)現(xiàn)[J].電力系統(tǒng)自動(dòng)化,2001,25(21):25-27.
[5]遲忠先,王紅新,于鳳友.?dāng)?shù)據(jù)倉(cāng)庫中聚集管理與導(dǎo)航策略[J].小型微型計(jì)算機(jī)系統(tǒng), 2002,26(12):1 456-1 461.
[6]張忠能,尤毅,程偉寧,等.設(shè)計(jì)數(shù)據(jù)倉(cāng)庫[J].上海交通大學(xué)學(xué)報(bào),1998,32(10):50-52.
[7]Zohra B.Schema Evolution in Data Warehouses[J].Knowledge and Information System,2002,(4):283-304.
作者簡(jiǎn)介 張柏禮 男,1970年出生,江蘇鹽城人,博士,講師。主要研究方向?yàn)閿?shù)據(jù)倉(cāng)庫、數(shù)據(jù)挖掘和Web。