可否對比一下 TiDB 與 AWS Aurora ?

時間 2021-05-10 07:02:33

1樓:胡彬

從架構上說,TiDB是share-nothing,Aurora是share-disk,兩種架構的不同前面幾位大牛說得很清楚了,這裡從使用維度做下比較:

1.相容性:Aurora是基於MySQL或PostgreSQL的開源版本,其改動主要集中在儲存層面,不說100%相容(比如tablespace等涉及儲存層面的功能還是會有不相容的情況),但至少和現有公有雲上的資料庫產品比,基本完全一致。

而TiDB是完全重寫的分布式SQL查詢引擎,要想完全相容乙個執行了這麼多年的開源資料庫,基本是不可能的。

2.寫擴充套件性:在Multi-Master正式出來前,Aurora的寫擴充套件能力還是受到單機限制。

Aurora的Multi-Master和TiDB都採用樂觀事務模型,也就是在事務提交時才進行衝突檢測和解決。兩者在衝突較少的情況下,都具有優秀的寫擴充套件能力。Aurora的問題在於如何將衝突粒度控制得更細(從頁級到行級),而TiDB的問題在於其為了實現全域性事務一致性,引入了Placement Driver,整個集群的擴充套件能力受限於PD的處理能力。

4.AP能力:Aurora的SQL引擎還是單機的,沒有分布式SQL,但是目前也通過Parallel Process實現了一些簡單的運算元下推。

TiDB號稱分布式SQL,其實本質上也只是實現了一些運算元的下推,整體上和Aurora的Parallel Process差別不大。此外TiDB在SQL層針對一些輕量級的AP場景進行了流水線等優化,減少記憶體占用,緩解OOM的發生。但本質上,二者對於乙個複雜查詢的處理能力,都受限於SQL節點的單機處理能力,都不算分布式查詢引擎(MPP架構才算)。

2樓:申礫

換個角度看Aurora:緣何「萬能」?對比TiDB有何不同?這是我司一位同學寫的 Aurora 解讀文章,最後做了一些簡單的比較,供參考

3樓:科技大昊哥

我來回答

1.每個系統都是在演進中,比較最好要帶時間點。

2.如果現在2023年的時間,spanner演變為乙個基於分布式共享儲存的htap系統,做了很多針對OLAP負載的優化,比如查詢優化,編譯執行,長查詢斷點繼續,行列混合儲存等,OLTP負載的優化相對少。但相容性,對資料模型高內聚的約束等始終是阻礙企業使用者採納的動因。

3.Aurora發布了跨az和跨region的multi master,這個意味著和spanner比,在OLTP負載場景,更有優勢,相容性和生態壓倒性優勢,多活資料中心也都有,初步判斷Aurora更勝一籌,原因還是對關係型的支援和SQL相容性上。除了沒有pb級,萬級節點擴充套件性,但這對現在的使用者不是問題。

4樓:fleuria

這篇 ppt 講 spanner 與 aws aurora 做了下對比,挺有參考意義的: http://

news.cs.nyu.edu/~jinyan

g/fa17-ds/notes/ds-spanneraurora.pdf

個人感覺論先進肯定是 spanner 先進,但是 aurora 的設計更討巧。

一般公司做選型的話,相對於財大氣粗的 "擴充套件性",機器的 "利用率" 的實惠更容易看得到。兩者都做到儲存計算分離,不過 aurora 方案的成本似乎能更低一些。

spanner 先進的另一面是更高的複雜性,寫入操作經過分布式事務做協調,傳統資料庫做 shard 以 scale 寫入能力的取捨在這方面會打一絲折扣。分布式事務在語義上也不可能與單機事務的語義一致。

aurora 對 mysql 的改動集中在 log 與 data space 訪問上,能保留 mysql 事務語義。唯讀 replica 可以無狀態擴,replica 的 buffer cache 能允許 hot path 的效能與單機無異。雖然是單點寫入,但是下層 quorum 的儲存有助於容掉 outlier,經過他們做的一些類似乾掉 binlog 乾掉 double write buffer 只寫 redo log 之類的優化後,寫入效能相對需要各種 fsync 物理磁碟的 mysql 反而能有優勢,而且隨著硬體進步,單機的寫入效能很大程度上能 scale up。

5樓:吳鏑

其他人說的很詳細了,補充一下自己對aurora的理解:下面的storage system是乙個quorum system,每個節點自己有本地儲存(為了擴充套件性,掛的有可能是是EBS,1副本),aurora寫時,只會把redo log寫入quorum system,quorum system之間通過gossip協議同步redo log, 每個節點會對redo log進行歸檔生成data block,存在本地,定期會backup到S3上。aurora 例項之間cache需要同步

可否鼓勵一下我?

葉子 你認識到了自己的墮落,說明還不算無可救藥呢如果真的很懶,那就找一件事情堅持做下去,比如每天看書,每天健身等等當你堅持做一件事情的時候,會從堅持的過程中找到滿足感的說不定某一天你就找到你的動力,開始重新規劃你的人生了 刀不二 不可。說一下佛印和蘇東坡的故事共勉!佛印與蘇東坡相遇,互相問對方像什麼...

可否給我安利一下丁程鑫?

抱著小熊睡覺 時代少年團 丁程鑫 TNT唯一主舞日韓認證的國寶級美少年神顏數次 萬轉出圈 芭莎男士秒切 斷層 第一明星主頁 斷層 第一可鹽可甜的小年糕 ACE TOP 兼備的王牌 小宋可可愛愛 丁程鑫2002.02.24出生,今年十八歲 再過21天就19了哦 是團內的大哥,很照顧弟弟們,演技挺不錯的...

可否分享一下最近單曲迴圈的歌?

寫一首喜歡了快二十年的歌吧,每隔一段時間聽都有不同的感覺,王箏的 我們都是好孩子 沒有驚豔的旋律和激昂的歌詞,勝在簡單 乾淨。王箏的聲音很乾淨,像在聽她唸首純淨的小詩,彷彿回到了當年的校園時光,簡單快樂,卻也有點小煩擾。 不得溪溪 if 不是南韓的那個哦 can we kiss forever 多情...