摘要:GaussDB已經全面支撐起MetaERP,在包括庫存服務在內的9大核心模塊中穩定運行,端到端業務效率得到10倍提升。 本文分享自華為雲社區《跑得更快!華為雲GaussDB以出色的性能守護“ERP的心臟”》,作者:GaussDB 資料庫。 ERP作為華為企業經營最核心的系統,伴隨著華為20多年 ...
摘要:GaussDB已經全面支撐起MetaERP,在包括庫存服務在內的9大核心模塊中穩定運行,端到端業務效率得到10倍提升。
本文分享自華為雲社區《跑得更快!華為雲GaussDB以出色的性能守護“ERP的心臟”》,作者:GaussDB 資料庫。
ERP作為華為企業經營最核心的系統,伴隨著華為20多年的快速發展,支撐每年數千億產值的業務和全球170多個國家業務的高效經營。其中的庫存服務作為交易數據的第一站彙集地,可以說是ERP系統中最核心的應用之一。
庫存服務不僅要與交易控制層的採購、訂單、任務令、成本、核算、計劃等模塊交互,也和各種各樣的作業層系統有著很深的聯繫,被比作“ERP的心臟”再合適不過。庫存服務對齊經營實體的資產庫存管理,提供六大核心庫存服務,支撐計劃、訂單、採購、製造等業務秒級自迴圈,同時作為庫存明細賬(量/價/餘額)的可信數據源,支撐集團財務核算,賬實一致、賬賬一致。可以說庫存服務的性能很大程度上決定著ERP系統的整體性能。
攻堅ERP庫存服務“硬骨頭”
作為“心臟”,庫存服務的血液流量與流速有多大?僅中國區,庫存服務的年處理交易需求就超過10億行,日處理交易峰值達到500w行以上,高峰時期數十個系統同時發起庫存交易,從接收交易需求到交易核算完成要經歷8個環節、200多個校驗的處理。
如何做到交易校驗無誤、現有量扣減準確、預留同步釋放、提交計價有序,同時實現毫秒級響應?交易資料庫在性能上遇到了極高的挑戰。
高性能資料庫GaussDB書寫優異成績
想拿下以性能為首要目標的庫存服務,必然需要一款同樣以性能稱王的資料庫做底層支撐。華為雲GaussDB資料庫以“高性能”的優勢,成為庫存服務改造的趁手利器。GaussDB充分融合了華為多年來軟硬全棧協同的優勢,在硬體領域,結合了鯤鵬處理器的多線程、原子指令、智能網卡的計算下推、RDMA的短時延高帶寬、SCM的位元組定址持久化能力等,在軟體技術領域,通過動態編譯、向量化引擎等能力,實現了極致的數據處理能力。
然而,上線過程中挑戰仍然存在。GaussDB團隊積極攻堅,細切目標,逐個攻破上線過程中遇到的難題。
首先,是如何提高執行計劃的準確性。庫存服務有近10萬條SQL,並且存在複雜的多表關聯,所以,如何保證交易資料庫執行計劃的準確性成為TOP挑戰。對此,攻關團隊圍繞壓測過程中識別的索引漂移等核心痛點場景,突破了智能基數估計、自適應計劃選擇技術,從而優化了資料庫執行計劃的精準性,進一步保障了庫存服務每一條SQL的執行性能。
其次,是如何解決高頻交易的性能問題。庫存服務中有近2.7TB的數據集中在5張高頻交易表裡,單表數據量超過了10億行。為了保障高頻交易時性能穩定不下降,攻關團隊通過組合分區和大併發線程池等技術,在打散數據訪問熱點的基礎上,優化了線程調度機制,一方面提高了系統的響應速度,另一方面也提升了硬體的資源利用率。最終的全鏈路壓測結果顯示,切換GaussDB後,庫存服務總體交易性能顯著提升,達到老ERP交易峰值的3倍。
最後,是如何將攻堅歷程形成可借鑒的成功經驗。對此,團隊在合作攻關的同時,系統性地總結了基於GaussDB資料庫的開發和調優的最佳實踐經驗,並彙總成完整的《GaussDB開發設計及編程規範》,為後續GaussDB在其他應用的上線提供了寶貴的借鑒經驗和技術規範指導。
GaussDB助力MetaERP交易性能大幅提升
如今,GaussDB已經全面支撐起MetaERP,在包括庫存服務在內的9大核心模塊中穩定運行,端到端業務效率得到10倍提升。再造後的庫存服務顯示出強大的實力,在年結期間,庫存服務每天處理庫存作業峰值指令接近510萬筆,GaussDB事務處理峰值達1.1萬TPS,就ERP系統的業務邏輯複雜度而言,GaussDB具備優異的峰值處理能力。在如此高頻的交易場景下,系統仍保證事務響應時間在20毫秒以內,主備同步延遲始終保持在毫秒級,CPU利用率平穩保持在60%以下,整個年結期間沒有發生可用性與數據一致性事故,交易數據一致性達到99.9999%的金融級水平。
從業務層面看,MetaERP已經覆蓋華為公司100%的業務場景和80%的業務量,一筆庫存交易從產生到財務核算的時間從以前的70分鐘減少到13秒,一筆庫存餘額與貨齡的計算從以前的60分鐘減少到16分鐘,交易性能得到大幅度提升。
GaussDB出色的性能表現,使MetaERP系統中交易量和數據量最大的庫存服務運行得更快。華為雲GaussDB在這場攻堅中展示出卓越的高性能實力,並完成自我迭代,將不斷朝著更高的性能目標邁進。