溫馨提示×

溫馨提示×

您好,登錄后才能下訂單哦!

密碼登錄×
登錄注冊×
其他方式登錄
點擊 登錄注冊 即表示同意《億速云用戶服務(wù)條款》

PingCAP馬曉宇:TiDB的HTAP之路

發(fā)布時間:2020-08-06 22:48:31 來源:ITPUB博客 閱讀:393 作者:李雪薇 欄目:關(guān)系型數(shù)據(jù)庫

HTAP是目前數(shù)據(jù)庫領(lǐng)域比較熱門的一個概念,它既能支持OLTP(在線事務(wù)處理),又能支持OLAP(在線分析處理),可以涵蓋大部分企業(yè)級應(yīng)用的需求,一站式解決他們的問題。本次,小編有幸采訪到PingCAP分析型產(chǎn)品負責(zé)人馬曉宇先生,就TiDB的HTAP之路作出分享。

PingCAP馬曉宇:TiDB的HTAP之路

▲PingCAP分析型產(chǎn)品負責(zé)人馬曉宇

TiDB= X% TP+Y% AP =HTAP

TiDB是一個分布式NewSQL數(shù)據(jù)庫,它支持水平彈性擴展、ACID事務(wù)、標準SQL、MySQL語法和MySQL協(xié)議,具有數(shù)據(jù)強一致的高可用特性,是一個不僅適合OLTP場景,還適合OLAP場景的混合數(shù)據(jù)庫。

追溯TiDB的發(fā)展史,要從其“上古時代”說起。馬曉宇表示,“起初,由于受到Google Spanner/F1的啟發(fā),PingCAP開始著手研發(fā)TiDB。”彼時國外已經(jīng)出現(xiàn)了 CockroachDB(蟑螂數(shù)據(jù)庫)等一系列解決TP問題的新興數(shù)據(jù)庫廠商,但國內(nèi)研發(fā)這類數(shù)據(jù)庫的公司寥寥無幾,TiDB的出現(xiàn)填補了這塊市場空白。

最開始,TiDB只是解決TP問題,但在實際應(yīng)用過程中,用戶對TiDB數(shù)據(jù)庫的查詢功能提出了更高的要求。為此,TiDB調(diào)整了自己的數(shù)據(jù)庫執(zhí)行器,增加了AP的功能拓展。如此以來,TiDB就同時具備TP和AP的功能。

馬曉宇透露,“客戶一直對‘TiDB適用于100%TP和80%AP場景’中的80%抱有懷疑態(tài)度,為什么是80%,不是75%,也不是85%?所以,后來我們就改用了一個比較精確(時髦)的說法:TiDB是一款HTAP數(shù)據(jù)庫?!?

TiDB數(shù)據(jù)庫的架構(gòu)優(yōu)勢

TiDB的整體架構(gòu)分為TiDB和TiKV兩層。TiDB是一層無狀態(tài)的SQL Layer,對外暴露MySQL網(wǎng)絡(luò)協(xié)議,負責(zé)解析用戶的SQL語句,生成分布式的Query Plan,翻譯成底層Key Value操作發(fā)送給TiKV?!巴ㄋ椎闹v,TiDB是XXXXXXXXXXXL版本的MySQL?!瘪R曉宇說道。

PingCAP馬曉宇:TiDB的HTAP之路

▲TiDB數(shù)據(jù)庫的原始架構(gòu)

TiDB的關(guān)鍵立足點在于,它是一個能擴展的關(guān)系型數(shù)據(jù)庫。馬曉宇補充道,“除了可以替換分庫分表MySQL做TP業(yè)務(wù),TiDB也非常適合中臺場景,可輕松同步MySQL生產(chǎn)庫、透明無障礙的跨分片查詢,實現(xiàn)數(shù)據(jù)實時落地、海量存儲(TiKV)允許多數(shù)據(jù)源匯聚等。”

不僅如此,TiDB的代碼全部開源。馬曉宇表示,“我們本身是一家開源的公司,我們也會參與一些其他的開源社區(qū),公司員工很多都是資深的開源社區(qū)的參與者和貢獻者,我們希望和其他社區(qū)共贏,能有更多的小伙伴參加我們的開源?!?

PingCAP馬曉宇:TiDB的HTAP之路

▲TiDB 1.0 vs 2.0

據(jù)悉,TiDB的更新?lián)Q代速度非??臁iDB自在2015年5月GitHub創(chuàng)建,而后于2016年6月發(fā)布Beta版,2017年3月發(fā)布RC2版本……2019年5月10日,TiDB 3.0.0-rc.1版本正式推出,相比 3.0.0 Beta.1,該版本對系統(tǒng)穩(wěn)定性、易用性、功能、優(yōu)化器、統(tǒng)計信息以及執(zhí)行引擎都做了很多改進。

TiFlash項目正在進行中

2019年之后,PingCAP會有哪些大動作?馬曉宇表示,“除了提升產(chǎn)品的性能、完善更多的功能之外,我們還會開展TiFlash項目?!睋?jù)悉,TiFlash是一個相對獨立完整的分析型數(shù)據(jù)庫產(chǎn)品,通過Raft Learner獨立同步一套列存,Label進行物理隔離,使AP/TP作業(yè)互相無影響,從而解決HTAP系統(tǒng)資源隔離的難題。

在對TP端極低的消耗下,Raft Learner接入配合 MVCC 事務(wù)模型可以提供一致性的數(shù)據(jù)讀取,同時又兼顧了資源隔離。當讀取數(shù)據(jù)時,TiFlash發(fā)送Raft索引校對請求。當數(shù)據(jù)同步到讀取請求發(fā)送時間點的進度時,TiFlash才提供讀取。馬曉宇透露,“2019年將要發(fā)布GA版本,包含TiSpark以及TiDB雙入口。”

馬曉宇認為,“最開始在業(yè)界,HTAP其實是一個marketing slogan。如果一個數(shù)據(jù)庫可以完美的融合TP和AP,那么在設(shè)計上來說,這將是一個非常干凈漂亮的做法?!彼€表示,“未來,HTAP還會有更多待開發(fā)的場景,值得我們?nèi)ヌ剿??!?

向AI問一下細節(jié)

免責(zé)聲明:本站發(fā)布的內(nèi)容(圖片、視頻和文字)以原創(chuàng)、轉(zhuǎn)載和分享為主,文章觀點不代表本網(wǎng)站立場,如果涉及侵權(quán)請聯(lián)系站長郵箱:is@yisu.com進行舉報,并提供相關(guān)證據(jù),一經(jīng)查實,將立刻刪除涉嫌侵權(quán)內(nèi)容。

AI