字節跳動表格存儲中的事務

本文選自“字節跳動基礎架構實踐”系列文章。
“字節跳動基礎架構實踐”系列文章是由字節跳動基礎架構部門各技術團隊及專家傾力打造的技術乾貨內容,和大家分享團隊在基礎架構發展和演進過程中的實踐經驗與教訓,與各位技術同學一起交流成長。
在字節跳動,隨着搜索、推薦、廣告等業務的啓動和發展,在數據上有了跨分區數據一致性的需求。於是我們調研、設計並實現了第一代基於表格系統的分佈式事務。本文詳細介紹了該表格事務系統的關鍵設計以及一些至關重要的原創性優化,希望能分享給大家一些分佈式事務設計的思路。

1. 背景

分佈式表格存儲系統在業界擁有廣泛的應用場景。Google 先後發佈了 Bigtable 和 Spanner 兩代分佈式表格存儲系統,承接了其公司內部和外部雲服務中的所有表格存儲需求,其中 Bigtable 的開源實現 HBase 在國內外公司中都得到了廣泛的使用。

在字節跳動,隨着頭條全網搜索項目等業務的啓動和發展,業務需要一個全局有序、容量巨大同時性能高效的表格存儲系統以存儲整個互聯網中所有鏈接和網頁,並保證互聯網上發生的所有變更都被能實時的更新到表格存儲系統中。我們團隊最初使用 HBase 提供服務,比如搜索場景在全網鏈接關係的實時更新需求下需要提供足夠高的可用性和足夠低的延時,由於其數據量極其龐大所以會創建極多的數據分片,集羣的整體尾延時和可用性會隨着數據分片實例數的增多而造成指數級別的惡化,因此對每一個分片實例的延時和可用性提出了更高的要求。但由於 HBase 存在尾延時較高和可用性較低的問題,並不能滿足我們的需求,於是我們團隊自研了第一代基於 Bigtable 數據模型的分佈式表格存儲系統 Bytable

原文鏈接:【https://www.infoq.cn/article/MWVNr8mw4M4KPHL2gTc8】。未經作者許可,禁止轉載。

發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章