分布式資料庫的分布式事務?

時間 2021-05-31 13:48:32

1樓:NebulaGraph

業務系統往往是通過子系統組合的模式來完成, 這些子系統很可能是不同的資料庫, 甚至可能是"友商"的, 互相直接無法保證事務, 還是得業務自身保證。

2樓:codingfor

你說的單機事物,我的理解其實是指single-threaded excution,而不是指在單台機器上做事物(暗含了concurrency的情況,比如多執行緒、多程序等)。

這在一定場景下是成立的(不少記憶體資料庫進行了實現):

1、單台伺服器的記憶體容量很大,可以塞進整個資料庫。

2、OLTP事物比較簡單而且操作很少的資料。

但它缺點也比較明顯,業務吞吐量受制於1個CPU核心。

你說的文件的意圖,我猜是repeatable read,但存在問題,注意非同步操作的情況,不然資料真的不一致了。

ACID乙個都不能少。

3樓:元一

以目前我親自見到的測試效果,無論是cockroachdb還是tidb的tpcc測試資料,都不是很理想,印象裡google的spanner/f1也不是搞高吞吐業務的

為什麼分布式資料庫這麼喜歡用kv store?

NebulaGraph 採用鍵值對儲存主要還是出於資料模型和效能角度考慮的。目前比較流行的方案有 Google 開源的 LevelDB 和 FaceBook 開源的 RocksDB。鍵值型儲存模型比較簡單,LSM 模型將隨機寫轉換為順序寫,在隨機讀方面也可以優化,效能比較有保障。分布式系統往往根據 ...

在分布式資料庫儲存中,資料分割槽和資料放置有什麼區別?

楊東東 資料分割槽和資料放置是邏輯和物理的關係,邏輯是頂層設計,物理是具體實現,邏輯設計決定物理實現,物理約束反過來影響邏輯設計。舉個例子,給你10個桌球,要求放入3個盒子裡。如何決定哪個球放入哪個盒子?比如 按照編號大小 0 2放入盒子A,3 5放入盒子B,6 9放入盒子C 按照編號特徵 對3取餘...

什麼情況下,需要使用分布式資料庫?

NebulaGraph 首先,分布式資料庫的優勢大致上概括為三種 1,資料分布儲存在不同的節點上,解決了單機下資料量的限制問題 2,分布式計算,均衡了計算負載 3,從資料安全性考慮,分布式資料庫一般都有多副本機制,以此保證了某乙個節點資料壞掉後能正常提供服務。基於以上三點,我認為海量資料的高併發業務...