從 20 多套 MySQL 到 1 套 TiDB丨駿伯網路綜合運營管理平臺應用實踐

PingCAP發表於2024-02-17

導讀

駿伯網路是一家聚焦移動網際網路營銷服務的公司,綜合運營管理平臺是其核心業務系統,包括營銷系統、訂單、支付以及與外部系統的互動服務介面。為滿足多元化的業務發展需求,降低系統間互動鏈路的複雜性,提升業務連續性,以及實現降本增效的整體規劃,駿伯網路選擇將 TiDB 作為綜合運營管理平臺的底層資料庫。經過上線實踐證明,TiDB 為駿伯在業務連續性、效能提升、資料資源整合、降本增效等方面帶來了顯著價值。未來,駿伯將擴充套件 TiDB 在資料分析類業務場景中的應用,提升資料實時分析能力,加快業務創新的步伐 。

本文作者:駿伯網路 唐帆,PingCAP 賀美存

駿伯網路簡介

廣州駿伯網路是一家以資料驅動的科技公司,聚焦移動網際網路營銷服務,堅持以客戶為中心,深耕 APP、運營商、金融保險等行業,以解決客戶營銷痛點為目標,為客戶提供全鏈路營銷服務。駿伯網路於 2015 年掛牌新三板,連續 5 年入選廣州未來獨角獸企業,已累計為超過 1000 家企業、超過 1600 款產品提供推廣服務,長期與頭部 APP、三大運營商以及知名金融產品進行合作,具備豐富的客戶資源 。

業務痛點與資料庫技術選型

1 業務簡介、現狀和痛點

綜合運營管理平臺是駿伯最核心的業務系統,主要覆蓋營銷、渠道、媒介、創意等業務部門,底層資料庫包含 OLTP、OLAP 兩種,業務系統主要包含營銷、訂單和資訊展現三部分。訂單資料均會迴流到訂單服務模組,訂單成功後會推送到下單流程,同時可以在平臺中及時檢視訂單資訊。

綜合運營管理平臺應用架構圖

整套應用由 40 多個微服務組成,底層資料庫採用 20 多套 MySQL 主備高可用架構,部署在 4 臺物理伺服器上,主備交叉部署的模式。大資料分析平臺採用 Hadoop 生態,資料分析模式為 T+1 的離線模式。

綜合運營管理平臺是一套面向網際網路使用者的實時交易系統,對可靠性和效能要求較高。物理伺服器的硬體故障會對生產運維和業務連續性造成較大的挑戰和影響,各套資料庫相對相互獨立,需要實現跨庫的資料實時共享。

2 技術選型要求

為了配合系統改造,解決業務連續性、資料擴充套件能力、資源利用率和效能等生產環境面對的痛點,駿伯啟動了對國內多家頭部原生分散式資料庫的測試選型,具體的要求包括:

業務連續性

任何硬體單點故障對資料庫叢集無影響,在無人工干預的情況下,業務能夠持續對外提供正常服務。資料庫應具備原生分散式高可用能力,可根據業務重要性靈活設定資料副本數,具備異地災備能力,可滿足機房級高可用要求。

資料擴充套件能力

滿足企業快速的業務變化需求,支援橫向擴充套件能力,對業務無入侵性。資料庫採用松耦合的存算分離架構,按需靈活擴充套件計算或儲存能力,資料可自動重平衡,透過節點擴充套件實現效能的線性增長。

應用透明遷移能力

資料庫可相容和延續現有的應用架構和程式碼,提供資料線上的透明遷移能力,降低應用改造和遷移難度。

資料實時壓縮能力

資料庫應具備庫內實時線上的壓縮能力,在效能不受影響的前提下,節省資料儲存的成本。

資料可恢復性

資料庫需提供物理和邏輯備份,支援可選物件粒度的全量和增量備份,可將叢集恢復到任何時間點。在資料誤操作的情況下,提供閃回能力。

經過多輪對比測試和業務場景的驗證,TiDB 滿足了本次技術選型的所有指標。駿伯網路選擇將 TiDB 作為綜合運營管理平臺的底層資料庫。

TiDB 在駿伯網路綜合運營管理平臺的應用

從整體資料規模、業務訪問請求、資源高可用等維度考慮,我們制定了詳細的部署方案。結合現有應用和資料庫情況,我們設計了分批業務遷移計劃,歷時 3 個月成功完成了所有應用的平滑遷移和部署。在主中心部署一套包含 4 臺物理伺服器的 TiDB 叢集,用於支撐綜合運營管理平臺。主中心叢集透過 BR 完成資料庫備份任務。MySQL 資料的遷移工作由 DM 元件完成,以確保資料遷移的順利進行。未來,我們計劃在異地構建一套單副本的叢集,透過 TiCDC 元件搭建資料容災的演練環境,從而實現異地災備。

系統架構圖

目前所有應用模組已成功遷移到 TiDB 叢集上,第一批遷移的業務已經穩定執行超過半年。系統在業務高峰期經歷了驗證,併成功應對了單伺服器硬體異常故障對業務連續性保障的實際考驗,完全實現了專案最初規劃的目標 。  業務峰值流量 QPS 大於 10K,活躍連線數 400 左右,且平均響應延時低於 200ms 。

應用價值

結合系統的實際執行效果,總結 TiDB 為駿伯網路帶來的收益如下:

保障業務連續性

TiDB 原生多副本能力避免了任何單點硬體故障,為業務提供無感知的保障能力。透過跨資料中心叢集災備能力保障機房級的故障影響,充分保障業務的連續性。

降低資源和運維投入

TiDB 內建的資料實時壓縮能力,保障資料三副本的高可用。叢集整體資源較原有 MySQL 主備叢集實現了 20% 的成本降低。過去需要運維 20 多套 MySQL,現在只需要運維一套 TiDB 叢集,整體運維投入大幅下降。

資料的實時匯聚和查詢能力提升

透過 TiDB 原生分散式和透明擴充套件能力,將原有 20 多套 MySQL 主備庫歸集到一套 TiDB 叢集內,實現多業務系統的資料實時匯聚、實時查詢和資料實時變現能力。

應用遷移透明,業務無侵入

透過 DM 工具實現從 MySQL 到 TiDB 的平滑遷移。TiDB 對 MySQL 的相容能力和業務無入侵性,對應用遷移改造成本極低,在保障效能的基礎上實現了應用的無縫遷移。目前,已成功完成 20 多套庫的應用透明遷移。

未來展望

駿伯網路致力於成為一家以資料服務為目標的企業,將資料服務視為核心競爭力。近年來,業務對資料服務能力提出了更高的要求:從 T+1 的離線資料分析轉變為 T+0 的實時分析效果。然而,企業現有的 Hadoop 生態框架已無法滿足新業務的資料分析需求,主要表現在技術棧複雜、開發運維成本高、資料實時服務能力弱等方面。

在 2024 年的計劃中,我們旨在構建一套以 TiDB 為底座的資料實時分析平臺,以實現對資料的實時加工和統一服務能力。透過結合現有的 Hadoop 框架,我們將打造一套流批一體化的資料湖平臺,從而加速企業數字化能力的提升。這一舉措旨在有效解決技術棧複雜性、降低開發運維成本,並增強資料的實時服務能力,以更好地滿足業務發展對資料實時分析和實時變現的要求。



來自 “ ITPUB部落格 ” ,連結:https://blog.itpub.net/69994146/viewspace-3006668/,如需轉載,請註明出處,否則將追究法律責任。

相關文章