汽車之家 818 TiDB 集群整體架構圖
數(shù)據(jù)庫壓測
在 818 活動前,數(shù)據(jù)庫團隊聯(lián)合業(yè)務方一起做了一輪一輪嚴格的故障演練壓測,確保后端的高可用。
陶會祥透露,汽車之家的故障演練分為多種,光數(shù)據(jù)庫就會演練主庫故障和機房故障,一共做了三輪。每一輪測試中 TiDB 的表現(xiàn)都非常優(yōu)秀,KV 故障基本在幾十秒,只需 20 秒即可恢復,即使機房故障也能在一分鐘之內進行自動切換。
為了保障活動平穩(wěn)支撐,PingCAP 社區(qū)技術專家連續(xù)三年為汽車之家提供了社區(qū)技術支持。在今年的壓測環(huán)節(jié)中,社區(qū)技術專家與汽車之家 DBA 一起完成了調優(yōu),良好地解決了寫入熱點問題,將性能翻了好幾倍。最終在 818 高峰時期,TiDB 順利支撐了晚會期間 APP 用戶 9048 萬次互動,并抗住了最大每秒 40 萬行的寫入,SQL 99 穩(wěn)定在 30ms 以下。TiCDC 性能表現(xiàn)也十分強勁,向下游 MySQL 同步速度高達 13 萬行每秒 ??缰行牡?TiFlash MPP 架構,為大屏近實時展示助力總次數(shù)、秒殺和搖獎的每輪參與用戶等信息提供了強有力的支撐。
陶會祥都對大促中 TiDB 的表現(xiàn)給予十分高的評價:TiDB 在這種十億以上的數(shù)據(jù)量級場景下是非常適合的,一是 TiDB 的分析能力是實時的,二是 TiDB 的數(shù)據(jù)存儲能力比傳統(tǒng)數(shù)據(jù)庫,如 SQL Server 之類強太多。 TiDB 結合了傳統(tǒng)數(shù)倉和傳統(tǒng)關系型數(shù)據(jù)庫的優(yōu)點,非常適合應用在大促這種量級的業(yè)務環(huán)境。
未來規(guī)劃
汽車之家的數(shù)據(jù)庫團隊在本次 818 大促中,也總結出了非常多的最佳實踐:
基于本次活動中的良好表現(xiàn),陶會祥表示,汽車之家接下來還會在更多業(yè)務中推進 TiDB 上線。比如以前汽車之家的很多數(shù)據(jù)會跑在 Hive 里,需要到第二天才能知道昨天發(fā)生了什么事。如果應用 TiDB ,可以針對運營需要的用戶數(shù)據(jù)、業(yè)務指標的分析,去做秒級的準實時推送,預計能夠將這一時間壓縮到 5-10秒。業(yè)務方可以立即知道上一刻用戶有什么變化,數(shù)據(jù)有什么更新。