摘要:本文總結了貴州移動支撐系統報表處理能力提升的經驗。通過分析出帳和沖銷兩個關鍵環節,通過建立數據庫對象自動分析機制,提出數據“瘦身”理念,改進應用軟件,量身定制統計程序等一系列的技術優化,多角度,全方位進行系統能力提升。報表提交時間提前近40小時,提高了工作效率。
主題詞:移動通信;支撐系統;報表處理;系統優化
一、背景
1.貴州移動BOSS系統在月初既需要對用戶進行集中的帳務處理,又要滿足客戶大量的業務變更和查詢需求。月初業務流高峰導致爭奪系統資源的矛盾日益突出,系統處理能力不能滿足出賬報表的需要,所消耗的時間越來越長。
2. 現有的存儲過程、數據庫性能和批扣程序的速度 不能適應客戶規模以及業務種類復雜程度的迅速增長 ,導致出據報表的時間不斷延后。
3.集團公司及公司管理層對報表出具速度要求不斷提高。
正是在這樣的背景下,迫切需要我們對現有支撐系統的能力進行
提高,才能使出具報表的速度進行有效提升。
二、報表處理提升措施
月初在出報表之前有兩個關鍵的工作:(1)出月帳(2)預付費批量沖銷。這兩個環節的速度直接影響了提供報表的時間。因此我們對這兩個環節進行了優化。
1、數據庫性能優化;
采集了月底月初出帳期間的主機、數據庫、存儲等軟硬件設備的性能數據,進行了全面的性能評估。經過分析,少量程序的SQL語句占用了大部分的系統資源,因此我們選取了月初占用資源較高的幾個程序進行優化,采用建立或者調整索引的方式,避免全表掃描,減少了IO讀寫量,使得CPU的占用率降低了10.5%,大大降低了系統負載。
2、建立數據庫對象自動分析機制
自主開發了數據庫自動分析程序,實現自動對數據庫對象在業務閑時進行分析操作,針對不同對象特點制定不同的分析周期。降低語句執行時間,降低系統負荷。
3、數據庫“瘦身”
創新采用數據在生產庫、歷史庫、磁帶庫的三級存放機制,對BOSS營帳數據庫進行“瘦身”。另外,還自主開發了數據庫對象存儲壓縮程序,該程序可以非常方便的對數據庫對象進行壓縮,達到降低表空間利用率的目的。
從07年6月份開始持續進行上述優化措施后,月初出帳速度大幅提升,在用戶數逐月增長的情況下,每月出帳時間基本保持在一個基本穩定的水平在2小時左右,直接提高了帳務報表的速度。
4、批量沖銷程序優化
1)流程優化:
2007年8月前,由于9個地州是同時運行事務,在運行時經常出現回滾段不足的錯誤提示,極大影響了沖消程序的運行效率,為解決回滾段問題,將9個地州并行優化為分批不同時段運行,將進程運行數量增加到3000,直接提高了在固定時間內程序運行的效率。
2)編譯軟件創新:
2007年10月之前是使用數據庫的存儲過程來進行批量沖消程序,由于數據量大,存儲過程在針對數據讀取方面,由于并行運行不能很好的進行控制使得耗時很大,針對這一情況,將批量沖消的處理由存儲過程更改為面向對象的封裝程序。增強批量沖銷的同步控制,減少運行耗時。
3)量身定制統計程序
在對批量沖銷后數據統計進程分析發現:批量沖銷程序自帶的數據統計進程在數據處理過程當中程序之間的處理環節多,處理時間不斷增加的同時也造成處理過程當中出錯的可能性大大增加,為改變這一情況,我們根據我省實際情況量身定制了新的統計存儲過程,存儲過程的優勢在于創建的時候就進行了編譯提高了效率。
通過三次對批量沖銷的程序優化,速度原來的20小時提高到4小時左右就能完成。
通過以上的技術創新和改造,使帳務報表從07年6月份以前的4號左右提供提高到每月2號中午12點前就能提供。
三、實施效果
1、報表的及時性得到提高:
從以前的4號出報表提高到2號中午前就能完成報表,提前完成集團公司規定4號提供報表的要求。
2、支撐系統能力得到提升:
改進和實施過程中不僅提高了出報表的速度,通過對數據庫、批扣的程序優化等,使得出月帳時間穩定在2小時左右、批扣程序占用系統資源大大減少,從原來20小時縮短為4小時。系統能夠有更多資源實現更好的支持。
3、提高人員工作效率:
系統能力的提升,解放了人工在帳務報表出具期間的干預時間,使員工的工作效率得到提升。原來干預時間需要4天,現在只需要12小時。
四、經驗探討
1、多管齊下,保證實施效果。
帳務報表的出具速度提高,涉及數據庫處理能力、程序的效率等很多方面,如果僅僅從一個方面進行技術優化無法達到目的。在對該項目進行目標確定和項目實施時我們從數據庫以及預付費批量沖銷,環節進行了優化改進,以便達到目標。回過頭來看,從多方面的優化使帳務報表的出具速度能夠在相當一段時間以內滿足集團公司和省公司的要求。
2、小改進實現大效果。
該項目在沒有新增任何主機、設備等資源的情況下,(1)通過對數據庫性能分析,對月初占用資源較高的幾個程序進行優化;(2)對批扣程序中導致處理速度慢的主要原因:回滾段不足問題。進行流程修改、進程數修改的方法來解決該問題。通過效果來看,改造的時間和經費使用沒有多少,但是效果卻是很明顯的。
3、利用新技術和方法,持續的進行優化,持續滿足需求
如何將新的穩定的技術有效融合到實際的生產環境當中,是我們重點關注的問題,項目實踐中我們自主開發了數據庫自動分析程序和數據庫對象存儲壓縮程序,另外,為批量沖銷過程序量身定制了新的統計存儲過程。我們通過運用這些的新技術進行融合和改進,不僅可以達到技術更新的效果,同時,也能夠使系統支撐能力得到不斷的提升。
結束語
貴州移動的用戶和業務不斷發展,其支撐系統也面臨著數據運算不斷復雜,負擔也不斷增大的問題。尤其是長期的業務特點和消費習慣,形成了月初、月末的系統高峰。如何有效的在現有軟、硬件的環境下,持續穩定的保證支撐系統的能力,就需要我們不斷對支撐系統進行優化。在項目中,對于批量沖消程序的優化和數據庫‘瘦身’就是很好的案例,優化是持續不斷進行的,效果也是顯著的。
作者簡介:
朱希偉,男 1974年出生。畢業于重慶郵電大學計算機通信專業。長期從事通信企業的業務運營支撐系統建設、測試、維護工作。從電信“九七工程”到移動“BOSS”都參與了相關的建設維護工作。目前為貴州移動業務支撐中心業務生產支撐室副經理。