在2024年3月20日的首場OceanBase數據庫城市行活動中,專注于物流及供應鏈解決方案的麗迅物流的架構師陽磊,圍繞“OB Cloud在麗迅物流的實踐”這一主題,進行了精彩的演講。本文為此次演講的內容回顧。
在麗迅物流(Lesoon Logistics)的上云進程中,他們接觸并評估了國內多款分布式數據庫。經過對實際業務需求的深入考量與驗證,麗迅物流最終選擇了OceanBase的云數據庫(OB Cloud),用以升級其多個關鍵業務系統。截至目前,麗迅物流的倉儲、庫存、財務等多套關鍵業務系統已成功遷移到OB Cloud上,整體數據庫成本降低了50%,且穩定運行已近一年。
大家好,我是來自麗迅物流的架構師陽磊,非常榮幸參加這次 OceanBase 數據庫城市行活動,接下來我將從數據庫升級必要性、如何升級、收益三大方面為大家分享 OB Cloud 在麗迅物流的應用實踐。
麗迅物流專注于為鞋服、箱包等時尚產業提供倉儲物流服務。目前,麗迅物流業務遍布全國,覆蓋了全國 300 多個城市,3000 多個商圈,共 30000 多家門店;自身全渠道實體云倉 70 余個,倉庫資源 100 萬余平方米、運輸車 1000 余輛。
隨著公司業務的快速增長,自 2021 年起,麗迅物流開始啟動業務系統上云戰略,致力于為客戶提供更穩定、更靈活、更高效的服務。
一、原有架構難以穩定支撐業務增長
在倉儲系統重構之前,麗迅物流的數據庫是部署在 IDC 機房,采用的是 shardingJDBC 這種 SDK 分庫模式,雖然它有去中心化的優勢,但伴隨著麗迅物流的業務增長,在實際應用過程中,發現其仍然存在幾個問題。
○ ?應用啟動慢:在應用啟動的時候需要加載元數據,隨著業務表增多會越來越慢;
○ ?性能問題明顯:在跨庫合并查詢分頁的時候,也會存在一些性能問題,比如應用內存拉爆、產生分布式慢事務鎖表;
○ ?版本升級復雜:因為分庫的邏輯寫在應用內部,所以系統上線以后需要伴隨組件升級,難度顯著增大;
○ ?彈性能力弱:原有數據庫架構想要擴容比較麻煩,除了需要新增一組數據庫節點外,應用還要全部改一遍配置后再重新啟動,對連接數耗用也較大。
正是由于以上原因,麗迅物流決定對倉儲系統進行深度重構、升級。一開始,麗迅物流采用了云數據庫+中間件的 Proxy 分庫分表模式。最早使用的是更穩定的云數據庫+中間件 DBLE,經過一段時間的使用一些問題開始暴露出來。
○ ?開源版本不穩定:DBLE 開源的組件版本穩定性不足,需要專人對分支版本進行維護與調優,升級困難;
○ ?配置文件結構不合理:數據庫賬號和分片規則配置在一起,導致各環境需要重復配置,運維復雜度增加;
○ ?分布式事務問題:比如全局表不一致、分布式事務鎖表等問題;
○ ?運維成本增加:代理中間件增加,導致運維成本的增加。
○ ?正是在這樣的背景下,麗迅物流將目光瞄準了市場上幾款成熟的分布式數據庫產品,經過多番對比,最終確認了 OB Cloud 云數據庫。
二、倉儲、財務等多個關鍵業務系統上線 OB Cloud
在選型 OB Cloud 的過程中,團隊認為 OB Cloud 云數據庫與麗迅物流業務核心需求匹配度很高,重點考慮了如下因素:
第一,核心語法高兼容。OceanBase 完全自主研發,代碼改造成本低;
第二,穩定可靠。經過海量客戶場景驗證,OceanBase 的安全穩定性有所保障;
第三,支持多基礎設施統一管理。OceanBase 支持客戶多基礎設施業務部署,幫助客戶屏蔽底層基礎設施技術復雜度;
第四,擴展性好、具備多級彈性能力。根據麗迅物流的業務增長要求,支持實現水平垂直擴容;
第五,高性價比。OceanBase 通過先進的數據壓縮技術,可實現 70% 以上的存儲節約,為海量數據的規模化降本提供更出色的選擇;
第六,支持阿里云 DMS 管理。該平臺是麗迅物流團隊日常依賴的管理平臺,使用 OB Cloud 顯著提升運維效率;
第七,支持 Dataworks 抽數到數據平臺 Hologres 做數據分析;
第八,適配 Proxy 分片規則。通過 OceanBase 表組對這些分區進行管理,實現分布式數據動態平衡。
除以上優勢外,在使用 OB Cloud 之前,麗迅物流進行了基準測試。針對 OB Cloud 和 IDC 自建的 MySQL 進行了隨機讀寫的壓力測試,OB Cloud 云數據庫表現優異,給了團隊極大信心。故此,麗迅物流倉儲管理、財務管理、客戶、工單、HR 等多個關鍵業務系統著手上線 OB Cloud。
倉儲管理系統(WMS)
WMS 倉儲管理系統是麗迅物流的核心系統之一,在確認了遷移目標以后,團隊內部將 WMS 倉儲管理系統進行了一次深度的重構、升級,逐步將業務系統遷移至 OB Cloud。
通過使用兩個 30 核 180GB 的分布式節點,替換了 5 組 64 核 128GB 的 MySQL 服務器,上線半年后,原來 5TB 的業務數據壓縮到 600GB 左右,業務性能同步提升,至今運行穩定。
財務管理系統(FMS)
麗迅物流的 FMS 財務管理系統有兩組 64 核 128GB 的 MySQL 服務器,團隊通過對其進行數據合并遷移,去掉 ShardingJDBC,遷移到一個 14 核 70GB 的集群上,遷移后,該系統業務量占比大量縮減,只需簡單調整業務代碼,原來一年 2.5TB 的數據可以壓縮到 350GB。
得益于 OB Cloud 天然具備的分布式能力,麗迅物流的業務系統很容易就可以進行水平、垂直擴容,輕松應對業務流量增長,平穩支撐公司業務周轉。
其他:客戶系統、工單系統、HR系統、接口平臺等
除以上核心系統外,公司內部的客戶系統、工單系統、HR 系統、接口平臺,也以綜合形式部署在 14 核 70GB 的 OB Cloud 上,借助 OB Cloud 的集中式架構優勢,充分利用了現有的服務器資源,大大減少了數據庫使用率。
三、降本50%,穩定運行近1年
經過 300 余天的使用,OB Cloud 有如下優勢:
第一,高壓縮比。超高數據壓縮比,有效降低存儲成本 70% - 80%,進一步節約備份時間;
第二,靈活的彈性能力。OB Cloud可以跟隨麗迅物流的業務增長,隨時進行擴縮容,包括存儲也可以支持快速擴縮容,應對物流行業流量峰值;
第三,高性能。上線 OB Cloud 以后,在一些庫存記賬,倉庫RF掃描等高并發場景下,性能提升 20%,對比之前的模式,硬件成本大幅度下降;
第四,成本優勢顯著。在麗迅物流遷移上云的過程中,存儲成本下降 70%;同時通過多租戶共享實例,運維復雜度也下降,DMS 實例數也大大減少;
第五,自我保護能力。ob_query_timeout、ob_trx_timeout 設計非常巧妙,用戶可以根據業務場景對查詢、事務的最大時間進行控制,防止業務被一些異常語句打滿,非常好地保護了數據庫;
第六,SQL 診斷。借助診斷工具可以便利地看到 TopSQL、SlowSQL,對業務瓶頸及時進行調優;
第七,服務技術支持專業高效。從選型到上線到后期的運維,都有OceanBase技術團隊支持,大到解決方案,小到技術細節,都有老師耐心解答,保障系統穩定運行。
上線 OB Cloud 云數據庫之后,麗迅物流獲得了同城雙活、靈活高效、易觀測的數據庫體驗,整體數據庫成本降低 50%,開發和運維效率大大提升。目前,麗迅物流的 TMS 運輸管理系統也正在評估上線 OB Cloud 的過程中,現有幾大關鍵業務系統已攜手 OB Cloud 穩定運行近一年,期待未來更好的合作!