1 前言
ERP(企業(yè)資源計劃)是一個現(xiàn)代企業(yè)必備的信息化管理工具之一,是集成了生產(chǎn)制造、供應、銷售、財務等幾大部分的、面向供應鏈管理的綜合信息系統(tǒng)。企業(yè)ERP數(shù)據(jù)庫系統(tǒng)的穩(wěn)定、安全、可靠運行則是企業(yè)ERP系統(tǒng)正常運行的基礎和根本保障。株冶集團ERP系統(tǒng)自上線以來連續(xù)運行已有八年時間,目前仍然保持比較良好的狀態(tài)運行.這與ERP數(shù)據(jù)庫完善、良好的日常維護與優(yōu)化工作是分不開的。株冶集團ERP數(shù)據(jù)庫采用IBM DB2數(shù)據(jù)庫系統(tǒng),DB2數(shù)據(jù)庫作為目前兩個最大的大型商業(yè)數(shù)據(jù)庫系統(tǒng)之一一直在技術上和市場上占有領先位置,全球財富500強企業(yè)中80%都選用了DB2家族的產(chǎn)品。株冶ERP系統(tǒng)的舊M DB2數(shù)據(jù)庫硬件平臺采用的是兩臺舊Mp660小型機做HA集群系統(tǒng),兩臺小型機通過IBM的DS4700磁盤陣列建立互為備份的高可用(HA)系統(tǒng)以保證系統(tǒng)的高可靠性和高可用性。采用磁帶機做數(shù)據(jù)備份。
2 數(shù)據(jù)維護與優(yōu)化
2.1后期維護原則
在長期的ERP系統(tǒng)的后期維護當中,我們根據(jù)自己的經(jīng)驗,結合企業(yè)的實際情況,確立了幾個比較重要的維護原則:“以數(shù)據(jù)為中心,實現(xiàn)數(shù)據(jù)標準化。完善數(shù)據(jù)最優(yōu)化”,具體來講就是:
(1)以數(shù)據(jù)為中心,ERP中原始數(shù)據(jù)的采集、加工、整理過程中。要保證基礎數(shù)據(jù)的完整性、正確性和一致性,保證指標體系含義的唯一。確定性,保證系統(tǒng)主要業(yè)務流程的正確性和可變性。使ERP系統(tǒng)的內(nèi)部機制運行更高效、更靈活。
(2)數(shù)據(jù)標準化,它包含編碼標準化、數(shù)據(jù)標準化和維護數(shù)據(jù)標準化三方面。由于這屬于開發(fā)階段的工作,所以這里就不展開討論了。
(3)數(shù)據(jù)最優(yōu)化,ERP系統(tǒng)中數(shù)據(jù)可分為靜態(tài)數(shù)據(jù)和動態(tài)數(shù)據(jù)兩大類。靜態(tài)數(shù)據(jù)反映企業(yè)資源的基本屬性,動態(tài)數(shù)據(jù)反映企業(yè)資源變化和運動過程。靜態(tài)數(shù)據(jù)管理對象的管理是全生命周期管理,對靜態(tài)數(shù)據(jù)的優(yōu)化就是最精簡的數(shù)據(jù)維護達到最充足的數(shù)據(jù)體現(xiàn)。動態(tài)管理對象主要有三種:物流、資金流和信息流;動態(tài)管理對象的管理是全流程管理。因此,對動態(tài)數(shù)據(jù)的優(yōu)化也包括對業(yè)務流程的優(yōu)化。對于流動的管理對象做到全流程的管理,本身也體現(xiàn)出管理的完整性、統(tǒng)一性、準確性。
2.2 ERP數(shù)據(jù)庫的日常維護
(1)大型數(shù)據(jù)庫系統(tǒng)中存儲數(shù)據(jù)的物理分布形式
對應用系統(tǒng)的性能有著顯著影響。這種影響體現(xiàn)在數(shù)據(jù)的更新、插入和刪除操作中。對各種長度的表字段進行更新可能導致新的宇段值不適合在同一個數(shù)據(jù)頁面里存放。在表里產(chǎn)生內(nèi)部空隙或未使用空間,即數(shù)據(jù)保存的不連續(xù)性,導致數(shù)據(jù)庫需要花更多的時間來讀取更多的物理頁面來獲取應用程序所需的數(shù)據(jù)。因此,在日常工作中要定期對數(shù)據(jù)庫進行物理分布形式方面的優(yōu)化。
為此,我們可以使用DB2提供的數(shù)據(jù)維護命令定期進行維護和優(yōu)化存儲數(shù)據(jù)的物理分布形式。Reorgchk:用于分析系統(tǒng)編目表,并且收集有關用戶表和索引的物理組織信息,顯示空間分配特性。Reorg:數(shù)據(jù)表重組,就是刪除所有未使用的空間。把表和索引寫入連續(xù)的頁面。Runstats:生成統(tǒng)計信息,生成的統(tǒng)計信息內(nèi)容包括表中的行數(shù)量、表和索引的使用空間情況、字段信息等等,這些都是DB2運行優(yōu)化所需要的信息。對于頻繁更新、刪除、插入的表要經(jīng)常進行這樣的檢查,以保證該表最新的統(tǒng)計信息,再運行Rebind來重新綁定。一般建議在重組一個表之后就使用runstats工具收集該表的統(tǒng)計信息。
日常工作中還要根據(jù)需要來對各個表空間、緩;中池、容器等進行必要的調(diào)整:合理的緩沖池的配置可以有效地降低過多磁盤讀寫造成的延遲,過大則造成系統(tǒng)其他內(nèi)存不足,過小則導致磁盤讀寫次數(shù)頻繁,系統(tǒng)延遲變長。合理的表空間和容器的分配可以有效地平衡IO負載和節(jié)省存儲設備的開支,定期檢查各個表空間以防止表空間過滿而影響性能。
(2)數(shù)據(jù)庫系統(tǒng)參數(shù)的配置與優(yōu)化
DB2數(shù)據(jù)庫系統(tǒng)可以調(diào)配的參數(shù)非常多而且復雜,參數(shù)之間存在復雜的相互影響的關系。當然,一般情況下根據(jù)推薦的配置可以正常運行,但是要保持比較良好、高效率的運行狀態(tài),特別是在前期機器配置較低的情況下(前期小型機只有1 GB的物理內(nèi)存)則必須根據(jù)長期運行的實際情況來不斷調(diào)整優(yōu)化數(shù)據(jù)庫參數(shù)的配置,以合理分配系統(tǒng)資源,達到整個系統(tǒng)性能的最優(yōu)化。
數(shù)據(jù)庫優(yōu)化的依據(jù)一般是通過監(jiān)控數(shù)據(jù)庫運行來獲得的,可以使用Snapshot monitor和Event monitor來獲得大部分信息.也可以使用其他輔助工具來進行。監(jiān)控不但能獲得資源分配情況,而且還可以實時監(jiān)控到ERP進程執(zhí)行狀況,可以看到是哪個ERP進程占用資源,在執(zhí)行的具體的SQL語句情況等等,通過這些情況的觀察和了解。也可以給開發(fā)人員提供修改和優(yōu)化應用程序的建議。例如由于前期株冶ERP的小型機配置較低,負載較高。因此,我們建議開發(fā)人員將不是非常必要的觸發(fā)器和存儲過程等去掉,通過監(jiān)測到的SQL事務執(zhí)行情況給開發(fā)人員提供應用程序優(yōu)化的建議,以減輕服務器端的負擔。
對于DB2數(shù)據(jù)庫優(yōu)化,其本身提供了系統(tǒng)優(yōu)化工具——“系統(tǒng)優(yōu)化向?qū)А薄5捎谥暌盓RP系統(tǒng)開發(fā)設計時間較早,加上當時的認識和技術上的局限及開發(fā)設計人員的實際應用經(jīng)驗等等因素的局限,這個工具并不能很好地適應實際的應用情況。因此,我們在工作中通常是根據(jù)長期運行的實際情況來調(diào)整配置參數(shù)。優(yōu)化不能只優(yōu)化一個參數(shù),應該要考慮整個硬件和軟件系統(tǒng)的配置和終端應用情況,但是一次修改最好只修改一個參數(shù)以能夠監(jiān)控到優(yōu)化的效果。一般主要要修改的參數(shù)是影響性能比較重要的參數(shù),如應用程序堆大小、排序堆大小、語句堆大小、查詢堆大小等。這些參數(shù)的修改要經(jīng)過長期摸索實踐才能得到,特別是機器物理內(nèi)存不夠而嚴重影響性能的時候,經(jīng)過優(yōu)化之后可以明顯地提升系統(tǒng)性能和響應時間。
還有就是涉及到操作系統(tǒng)級別的優(yōu)化,例如文件系統(tǒng)、物理與邏輯卷組的劃分、換頁空間(Paging space)大小等等,特別是換頁空間的大小比較嚴重地影響系統(tǒng)整體性能,一般情況下是物理內(nèi)存的兩倍比較合適,但是在內(nèi)存不足的情況下則必須做到系統(tǒng)性能和使用大小的平衡。在后期物理內(nèi)存擴充到8GB的情況下則可以適當縮小換頁空間,以提高系統(tǒng)響應速度。
當然,系統(tǒng)優(yōu)化并不是可以無限制地提高性能,只是當系統(tǒng)遇到性能瓶頸的時候才可能發(fā)揮作用,大部分情況下難以察覺到性能優(yōu)化的效果。
(3)系統(tǒng)安全性維護
ERP系統(tǒng)由于數(shù)據(jù)的重要性,所以ERP本身就必須有嚴格完善的權限管理功能,根據(jù)不同的用戶崗位來進行授權;及時刪除或停用已經(jīng)調(diào)離崗位和離職的職員信息和權限。數(shù)據(jù)庫本身的管理員賬戶和密碼必須根據(jù)要求進行嚴格管理,不得任意授予和進行后臺操作。
2.3 數(shù)據(jù)庫備份與恢復
企業(yè)ERP系統(tǒng)最重要的就是數(shù)據(jù),在日常維護當中.必須保證數(shù)據(jù)安全、可靠和完整,所以。建立完整的備份恢復計劃是非常重要的。我們根據(jù)企業(yè)應用的實際情況和現(xiàn)有設備,制定了相應的備份和恢復計劃。
IBM DB2數(shù)據(jù)庫的備份恢復管理非常復雜,一般有脫機備份和聯(lián)機備份的區(qū)分,可以備份到本地硬盤、磁帶機、其他遠程機器的硬盤,以及通過IBM 的TSM管理軟件進行備份等等。同時也可以采取增量備份和完整備份,或者只備份某個表空間等方式。不同的備份方式對日志文件的管理要求不一樣,不同的日志類型可以恢復的數(shù)據(jù)庫也不一樣。DB2數(shù)據(jù)庫的El志分為兩個類型:循環(huán)日志和歸檔日志。循環(huán)日志不能進行前滾恢復。只能進行故障恢復和版本恢復。歸檔日志則可以支持前滾恢復,但是大量的歸檔日志文件要占用大量的磁盤空間。因此,我們指定備份恢復計劃的時候,具體分析株冶ERP的數(shù)據(jù)量和業(yè)務應用情況,在操作系統(tǒng)級別下建立了采用完整脫機備份的計劃任務。備份設備采用磁帶機和硬盤相結合。這樣方便故障恢復和版本恢復。同時。對于株冶集團的ERP系統(tǒng)這種運行比較成熟穩(wěn)定的業(yè)務系統(tǒng)來說,可以不用考慮前滾恢復方式,因此,日志類型也采用循環(huán)日志的形式,以節(jié)省寶貴的磁盤陣列的硬盤空間。對于備份的保存一般采用復制異地計算機硬盤再刻錄成DVD光盤進行異地保存。同時根據(jù)需要不定期進行備份的恢復測試實驗,以保證備份的可用性。
3 總結
通過對株冶集團的ERP數(shù)據(jù)庫近八年時問的維護與優(yōu)化工作,我們摸索出了一套比較切合株冶實際情況的維護方面的經(jīng)驗和方法。總結了影響性能最重的要素:一是緩沖池大小影響緩沖命中率。但是緩沖池太大則其他內(nèi)存不夠分配。二是SQL語句:差的SQL語句嚴重影響性能,由于不能修改業(yè)務SQL,所以只能從索引方面人手優(yōu)化。三是與鎖相關的參數(shù)。例如maxlocks和Iocktimeout。四是排序堆SORTHEAP大小,前期當連接用戶較多的情況下經(jīng)常出現(xiàn)這個問題,通過多次長期的反復調(diào)整才比較好地處理了這個問題。
轉(zhuǎn)載請注明出處:拓步ERP資訊網(wǎng)http://m.hanmeixuan.com/
本文標題:淺談企業(yè)ERP數(shù)據(jù)庫的維護與優(yōu)化
本文網(wǎng)址:http://m.hanmeixuan.com/html/news/1051521134.html