本文介紹了TiDB資料庫特性及在之家的發展歷程,典型業務應用場景,TiDB具有相容MySQL協議,易水平擴展、高可用、強一致,HTAP等特性,在之家多個重要業務得到應用。另外文章還介紹了之家TIDB自動化運維建設情況及應用實踐遇到的問題及解決。 未來之家TiDB計劃繼續進行TiDB運維體系建設,並... ...
引言
TiDB是PingCAP公司研發的開源分散式關係型資料庫,具有相容MySQL協議,易水平擴展、高可用、強一致、HTAP等特性。目前TiDB已在汽車之家論壇,好友粉絲,智能推薦,財務報表,818台網互動等重要業務上應用,本文介紹TiDB資料庫在汽車之家的應用與實踐實踐情況。
1. TiDB介紹
1.1
TiDB資料庫的發展
移動互聯網時代,海量數據及各種應用場景給資料庫存儲帶來諸多挑戰,如海量數據的存儲擴展,支持新的數據模型,彈性伸縮的需求等等給傳統關係型數據(MySQL,SQLServer,Oracle等)帶來巨大挑戰。在此背景下新型資料庫NewSQL層出不窮,TiDB就是其中的佼佼者。
TiDB是 PingCAP研發的開源分散式關係資料庫,是一款可同時支持線上事務處理與線上分析處理 (HTAP) 的融合型分散式資料庫產品。誕生於2015年,2017年出了1.0版本,2018年發佈V2.0,2020年發佈V4.0版本,2021年發佈5.0版本,目前最新版本是6.1版。
1.2
TiDB主要特性
TiDB具有相容MySQL協議,易水平擴展、高可用、強一致,HTAP等特性。TIDB適用於數據量較大單機存儲不足需要拆庫拆表,以及需要數據強一致,支持分散式事務,高可用的應用場景。
1.3
TiDB架構
TiDB 分散式資料庫將整體架構拆分成了多個組件模塊,各組件之間互相通信,組成完整的 TiDB 系統。主要可以分為TIDB Server、PDserver,TIKV server組件。
2.之家TiDB發展及應用
2.1
之家TiDB發展歷程
汽車之家2019年開始對TiDB進行初步嘗試,當時使用的TiDB版本是V2.0。2020年TiDB重要版本4.0發佈(支持TiFLash)後,TIDB在之家訊速發展應用,目前在粉絲業務,經銷商,財務,智能推薦資源池,818台網互動等重要業務上都有應用。2022年我們完成TiDB集群版本升級,以利用V5.x的MPP新特性。
2.2
之家TiDB典型應用
► 2.2.1 智能推薦資源池
項目背景
智能推薦資源池業務:是汽車之家核心業務,推薦資源池的數據量巨大,存在10+張億級大寬表,以前使用2套傳統MySQL資料庫存儲,存在著單機存儲空間不足、表結構不能快速變更,及兩套MySQL集群數據同步延時嚴重的痛點。
項目實施
優化前:
方案選型對比:
對DB中間件、ES、TiDB、HBase方案進行對比,綜合考慮業務相容性、擴展性,遷移成本等因素,我們選擇了TIDB方案。
架構優化後:
資源池新的後端資料庫由MySQL改為TiDB,新架構如圖。新存儲使用TIDB資料庫,解決了原架構單機空間不足,大表變更不便,多套DB同步延時等業務痛點。
► 2.2.2 財務內審及報表業務
項目背景
財務內審報表涉及多種數據源,無法多表join計算,導入數倉計算是隔日出報表不夠及時,無法滿足更高業務時效需求。
項目實施
► 2.2.3 818台網互動
項目背景
"818全球汽車夜"是由汽車之家打造的汽車行業頂級盛典,其中的台網互動業務包括紅包互動,秒殺車等等,數據量大,並需要多機房高可用的高可靠架構。台網互動後端存儲,我們選用了TIDB資料庫。
項目實施
► 2.2.4 TIDB應用場景總結
3. 之家TiDB運維實踐
3.1
之家TIDB自動化運維建設
資料庫自動化建議需要考慮的工作有:
之家TiDB運維體系建設主要是通過TiDB 原生工具 + 自主研發自動化運維平臺來實現。
TiDB自動化產品界面:
3.2
遇到問題及解決
4. 結語
本文介紹了TiDB資料庫特性及在之家的發展歷程,典型業務應用場景,TiDB具有相容MySQL協議,易水平擴展、高可用、強一致,HTAP等特性,在之家多個重要業務得到應用。另外文章還介紹了之家TIDB自動化運維建設情況及應用實踐遇到的問題及解決。
未來之家TiDB計劃繼續進行TiDB運維體系建設,並重點對TiDB6.0新特性測試應用,另外對TIDB容器化進行嘗試。
作者|
本文來自博客園,作者:古道輕風,轉載請註明原文鏈接:https://www.cnblogs.com/88223100/p/Application-and-Practice-of-TiDB-Database-in-Autohome.html