宅中地 - 每日更新
宅中地 - 每日更新

贊助商廣告

X

雲盛海宏:十年後,我們有了一次重新選擇資料庫的機會

2023年03月20日 首頁 » 熱門科技

雲盛海宏:十年後,我們有了一次重新選擇資料庫的機會

2023年的情人節,可能是疫情以來,商場人流量最大的一次,某國內知名運動品牌也隨即打出了促銷活動,吸引消費者。

2019年底,可能是零售行業至今以來遇到的最大難關,零售企業該激進,還是保守?

彼時,更多的零售企業還在尋找著新的突破口,尋求繼續活下去的可能。而適應變化最重要的一點就是變革,大家都在轉向線上銷售。

DTC(Direct to Customer,即「直接面向消費者」) 受到了新經濟企業的追捧。企業也開始建設面向最終消費者的大前台,例如自營電商、微信小程序、超級 APP 等,這讓企業的產品和服務不斷加速疊代,私域運營與 KOL 投放等營銷手段推陳出新…… 這一系列變化都對企業數據服務平台提出了更嚴苛的要求。

雲盛海宏作為該運動品牌旗下的一家科技公司,承擔了核心業務系統。作為雲盛海宏的首席架構師,洪亮說:「線上和線下的區別非常明顯,尤其是庫存管理。」,庫存需要快速對接外部像淘寶、京東、抖音等平台,在過去可能需要三個月或半年,現在對接一個庫存小程序我們只需要花兩周。

雲盛海宏:十年後,我們有了一次重新選擇資料庫的機會
雲盛海宏首席架構師洪亮

既要支撐海量的消費者,實現快速的前端應用疊代,又要提升營銷側的轉化率,以全鏈條的數據驅動企業經營的實時決策。

所以雲盛海宏一直在不斷務實技術棧,來面對外部環境的快速變化。對於現在業務的需求,反映到底層架構上就是快和准,雲盛海宏正在做的是用領先的技術為業務創新騰挪出兩到三年的紅利。

給資料庫做減法

從2013年開始,雲海零售系統就開始籌建。2016年之前,各個大區都是自建資訊系統,各大區自己進行資料庫的維護,每天向總部上傳業務數據。這時的資料庫採用的是集中式單庫,隨著使用暴露的問題也是越來越明顯,像無法及時查看地區匯總數據、無法跨大區查看全國實時庫存數據等問題。

十年間雲海零售系統的數據架構也經歷了多次升級改造,主要分為三個階段。

第一階段,2016年從傳統架構升級為微服務 MySQL分庫分表架構,由於MySQL對一些複雜分析報表支持不足,2015年雲盛海宏又引入了Oracle進行分擔,再通過Otter去進行數據的實時同步,保障兩邊的數據都是完整的。

洪亮說,早期的線下零售數據量並不大,我們預估MySQL的一個表,承載的極限容量在500-800萬,但是MySQL上線三年後,分庫分表表單可能超過兩千萬,每個月都要對一些相對冷的數據進行遷移。大概2015年,MySQL單表已經到了極限,承載不住了。

雖然遷移到Oracle解了燃眉之急,但是也帶來了另一個問題,每月都需要對MySQL的數據進行遷移,每月進行一次這樣的維護,工作量和風險都是非常高的,因為一個節點就有兩千萬數據,兩個集群就有十幾個節點。

第二階段,到了數字化零售時代,隨著數據量增長,Oracle單點性能已經沒辦法橫向擴充,聚合庫成為最大的瓶頸,所以又引入了TiDB,來解決數據爆發式增長導致聚合庫分析時效性差、海量數據無法擴展的問題。

2020年,雲盛海宏積極地尋求新的解決方案,進行了很多資料庫產品的調研和測試。選擇TiDB一方面是因為完全兼容 MySQL協議,一方面是日常的運維、擴縮容相對方便。

「最主要的原因是,Oracle資料庫因為數據存儲的時效性提升或者數據量大,導致一些SQL、複雜報表的實現效率越來越低。」洪亮在測試時發現TiDB可以良好地支撐Oralce無法實現的一些需求,這是雲盛海宏考慮的重要因素,而且TiDB使用的便捷性也出乎意料。

第三階段,未來將繼續藉助TiDB的優良特性解決分庫架構導致的擴容、數據同步、合併拆分等問題,支撐整個零售系統發展。

雲盛海宏:十年後,我們有了一次重新選擇資料庫的機會

洪亮認為,TiDB的官方文檔比較健全完善,查找相關資訊很快能找到想要的答案。此外 TiDB 社區的活躍度非常高,對雲盛海宏來說學習成本相對低很多。

全部到TiDB還有幾步

雲海零售系統的架構一直在不斷完善,從線下到線上,到對接更多外部系統,現在的雲海零售系統已經支撐著8000 全渠道、全品類運動鞋服的零售服務平台。

除了性能,穩定性、易維護性都是雲盛海宏關注的,尤其是易維護性,因為專職資料庫運維團隊只有兩個人,所以雲盛海宏要用更少的人做更多的事。

「MySQL、Oracle、TiDB,雲盛海宏用了很多的資料庫,所以迫切需要把資料庫做收斂,來降低運維壓力。」

現在幾乎所有的業務系統都已經遷移到TiDB的集群上,數據將近15TB,region也有將近38萬個。在業務的高峰期,比如上午業務比較繁忙時,QPS一般能達到兩萬多,很多地區自己的一些業務報表,平時最大的並發差不多在300以上,系統里業務表的單表大小最大已經達到了600GB。

目前雲盛海宏有前端和後端業務兩套TiDB集群,之後還準備部署第三套專門負責數據報表分析的集群。

其實剛開始接觸TiDB時,洪亮就覺得分布式HTAP資料庫值得去嘗試,經過幾年小規模的試用之後,發現TiDB適合他們的業務,所以今年也在快速推進,逐步把Oracle向TiDB做遷移。

「現在Oracle在財務還是承擔了很大一部分負載,我們也期望做一次Oracle到TiDB的遷移。」洪亮說道,在MySQL和TiDB間的遷移我們做了很多次,比較有經驗,但是Oracle到TiDB的遷移我們還在做嘗試。

2022年,雲盛海宏切換了核心促銷系統,預計今年9月左右遷移庫存系統,2024年初遷移財務輔助系統,計劃最終將Oracle全部遷移。

對於Oracle的遷移,洪亮還是有很多的擔心,因為現在零售行業財務系統遷移沒有一個可參考的案例,而且去年還上線了財務共享中心。Oracle遷移基本是面向OLAP類的一些數據、業務遷移,所以相對容易,複雜的是在前端數據的遷移,包括數據準確性校驗等方面。

面對雲盛海宏這樣的複雜業務場景,TiDB也在積極建設數據的遷移工具鏈,包括前端代碼的調整等等。

洪亮也說,在2C的領域很少有我們這種場景,而且一個跑了十幾年的資料庫,突然要做切換是很少見的。雲盛海宏希望在業務和企業內部架構上進行優化,配合TiDB的外圍工具鏈,共同努力最終實現Oracle的遷移。

除了Oracle的遷移,之後和PingCAP的合作可能主要會在雲上。

對於雲盛海宏講,MySQL是一個歷史包袱,因為在2013年沒有像TiDB這種資料庫可以選擇,當然因為授權等各方面因素也沒有考慮Oracle,所以最終選擇了MySQL。

但云盛海宏並不想止步於此,一直用自己的嗅覺追逐著資料庫領域的前沿技術,希望對分布式資料庫技術的不斷探索與嘗試,在零售行業中利用技術優勢保持領先性。

所以十年後的今天出現了像TiDB這樣的資料庫,可以打破這些問題,這對於雲盛海宏和對於整個行業而言都是一件幸運的事。

宅中地 - Facebook 分享 宅中地 - Twitter 分享 宅中地 - Whatsapp 分享 宅中地 - Line 分享
相關內容
Copyright ©2025 | 服務條款 | DMCA | 聯絡我們
宅中地 - 每日更新