讓秒殺狂歡更從容:大促背後的資料庫(下篇)

語言: CN / TW / HK

作者: TiDB社群小助手 原文來源:https://tidb.net/blog/b81367f8

一年一度的 6.18 又雙叒叕來了,給技術人最好的禮物就是技術指南!而經過這些年的發展,購物節早已不僅僅侷限於電商行業,現在各行各業其實都會採用類似方式做運營活動,汽車界有 818,小米有米粉節等等,這對包括資料庫在內的基礎軟體提出了很多新挑戰,同時也積累了諸多最佳實踐。

PingCAP 與京東、中通、汽車之家、易車網等使用者展開一系列深入探討,希望為大家揭祕逐年飆漲的銷量背後隱藏著什麼樣的技術難題?用什麼技術架構才能平穩地扛住流量洪峰?本篇為「大促背後的資料庫」系列專題下篇,介紹了 TiDB 在超級汽車狂歡節的的應用實踐。

01

如何像電商巨頭一樣做大促

理想很豐滿,現實卻骨感。

放眼天下,幾乎沒有企業能夠擁有網際網路巨頭的技術體系和團隊配置,但現實中又有實打實的大促場景需求,比如汽車之家、易車等汽車網際網路平臺都在推動 818 汽車狂歡節;又如小米有品作為粉絲經濟的代表,每年通過 816 感恩季活動來回饋粉絲和擴大影響力;平安人壽在 “開門紅” 的基礎上升級出 108 財神節…… 在強呼叫戶至上的今天,大促一定會逐漸成為各行各業的標配。

最大的挑戰之一就是大部分企業沒有足夠規模的技術團隊來支撐起大促場景。以汽車之家為例,其連續三年與湖南衛視聯手打造 “818 全球汽車夜”,這種直播活動互動多、變數大,一次秒殺引發的資料流量可能是平時的數十倍之多,今年最大資料峰值更是高達 40 萬/秒寫入;資料庫不僅需要解決海量實時交易的挑戰,還需要將實時分析資料反饋給現場主持人,整個過程還需穩定可靠。

no-alt

整個 “818 全球汽車夜” 對於分散式資料庫的水平高擴充套件性、容災能力、雲端能力要求極高,以汽車之家技術團隊的編制,靠自身來進行方案設計、壓測、優化和部署上線在短時間內難度極大。事實證明,汽車之家選擇 TiDB 是明智之選,通過成熟、可靠的分散式資料庫解決方案,以及 PingCAP 技術專家的力量,讓汽車之家能夠迅速彌補自身技術團隊的不足,高效完成對大促場景的支撐。

>>> 檢視完整版《TiDB 在2021汽車之家“818全球汽車夜”的應用》

無獨有偶,易車作為國內最早一批汽車網際網路平臺企業之一,其在去年  “818”  期間,與浙江衛視聯合推出了一臺綜合汽車工藝秀、明星歌舞演出和明星綜藝秀的車界 “春晚” ——**  “易車超級 818 汽車狂歡夜” **。在為汽車使用者帶來視聽盛宴、購車福利的同時,晚會還推出超 150 臺半價車的超值福利,觀眾可邊看晚會邊搶 5 折售賣的好車,同時還有購車紅包、抵扣券、車款直降等多重優惠,得到實實在在的購車福利。截至晚會結束,全平臺觀看直播人次達 2.24 億,獲得線上訂單 4.39 萬,累計成交額(GMV)64.2 億元。

在易車的 818 狂歡節中,資料庫的應用場景有很多,其中實時資料看板是主要的應用業務之一。看板可以實時展示易車 818 購車節的專題、活動、流量、線索、互動等資料表現,是大資料平臺的整體資料輸出。

由於易車的這場汽車狂歡夜是臺網互動的直播活動,搖一搖(紅包、半價車、易車幣)和主會場分會場直播節目的投票都是使用者參與度最高、資料流量最大的環節。在整個活動過程中,不僅要求資料庫能夠儲存海量資料,同時還要求能夠應對高併發、低延遲等場景需求。這裡的資料庫不僅會作為資料儲存的介質,還會作為實時計算的資料來源頭,配合流量資料,實現秒級資料實時播報

資料庫和 Flink 是整個系統中非常重要的兩個元件,Flink 的資料來源包括資料庫和業務流量資料,所以資料庫不僅要滿足資料秒級實時推送,還要支援 Flink 高併發的讀寫請求。

TiDB 社群的技術支援給了易車 DBA 們非常重要的幫助,從七月正式立項,**僅用了不到一個月時間就完成了選型、方案設計、壓測、上線部署,**並在 “818” 中有驚無險地將大促流量平穩承載過來。

no-alt

                                                                     818 汽車狂歡資料看板業務架構圖

在整個 818 活動中,**TiDB 被用作 818 汽車狂歡節資料看板的核心資料庫。**易車準備了兩套 TiDB 叢集,和實時計算的主備方案一一對應。業務研發通過雙寫的方式把資料同時寫入兩個叢集,一部分業務的查詢連結叢集 1 ,另一部分業務的查詢連線叢集 2,當其中一個叢集出現問題,應用端就會切換到另外一個叢集。兩個 TiDB 叢集都是部署了 3 個 TiDB Server、3 個 PD Server、6 個 TiKV 節點、2 個 TiFlash 節點。此外,還準備了 4 臺機器做擴容以免資料量暴漲叢集支撐不了。

最終,易車 818 汽車狂歡節期間資料量達到了平時的 10 倍以上,在直播最後蔡徐坤出場時,資料庫流量更是直接翻了四倍,差點啟用事先準備好兜底用的一鍵擴容方案。在整個過程中,818 汽車狂歡資料看板業務 SQL 999 始終控制在 8ms 以內,SQL 99 在 3ms 左右,QPS 達到 62k。

>>> 檢視完整版《技術升級 & 行業升級,TiDB + 易車打造超級汽車狂歡節》

02

大促背後的啟示

Forrester 首席分析師 James McQuivey 在《顛覆:數字經濟的創新思維和商業模式》中直言:在數字化浪潮中,市場競爭者們都在利用新的技術、工具和平臺來參與市場競爭、接近使用者,甚至是顛覆舊的商業模式。

如今,大促不僅是一個 “顯性” 的商業節日,更像是一個 “隱形” 的技術戰場。它代表著商業的角力,更是數字化能力的比拼。它就像一塊試金石,檢驗著各家企業數字化轉型的成敗。大促給予企業的不僅僅是營業額的提升、使用者粘性的增強,更是對於數字化轉型和新技術價值的再思考。

首先,在數字化時代中,場景變化之快絕非虛談,哪怕是大促,現在的大促跟十年前在形式、方法、規模上都是千差萬別,大促場景的創新在未來會只多不少,迅速變化的業務邏輯則會進一步推動企業的數字化轉型和技術的選擇。

其次,大促等新場景是打破技術偏見、接納先進技術的絕佳機會,新技術趨勢會在場景中得到落地、認可和推廣。以如今火熱的 HTAP 為例,不用像 MySQL 那樣分表,實現實時海量規模的 OLTP 和實時資料分析,還能多雲部署和兩三中心容災,這與大促的海量交易、實時資料展現、平穩執行的要求高度契合。人們過去總認為 HTAP 離實際場景太遠,但汽車之家、易車網等使用者用事實證明了新技術的價值。

最後,所有企業都在面臨一個不確定增加的時代,唯有不斷的場景創新能力和數字化能力方能抵禦各種不確定性。網際網路巨頭的業務規模、技術體系固然代表著業界頂尖水平,但是否真正適合自己和為之所用還有待商榷,使用者需要不斷認識自我,尋找到適合自身發展需求的技術、方案和模式。

面向未來,資料將成為企業最為重要的生產要素,圍繞資料儲存、管理和應用創新的能力將成為企業的核心競爭力,尤其是隨著大促等高峰值場景走向常態化,像 TiDB 這樣低門檻、低成本和高質量的分散式資料庫技術和解決方案一定會受到更多行業使用者的青睞,以實現數字化核心能力的快速提升,從而在千變萬化的市場中做到心中有 “數”。