學習分布式系統需要哪些知識點?

時間 2021-06-03 03:58:24

1樓:Gala

1 概念

1.1 模型

1.1.1 節點

1.1.2 通訊

1.1.3 儲存

1.1.4 異常

1.2 副本

1.2.1 副本的概念

1.2.2 副本一致性

1.3 衡量分布式系統的指標

1.3.1 效能

1.3.2 可用性

1.3.3 可擴充套件性

1.3.4 一致性

2 分布式系統原理

2.1 資料分布方式

2.1.1 雜湊分布

2.1.2 按資料範圍分布

2.1.3 按資料量分布

2.1.4 一致性雜湊

2.1.5 副本與資料分布

2.1.6 本地化計算

2.1.7 資料分布方式的選擇

2.1.8 工程投影

2.2 基本副本協議

2.2.1 中心化副本控制協議

2.2.2 primary-secondary 協議2.2.3 去中心化副本控制協議

2.2.4 工程投影

2.3 Lease機制

2.3.1 基於lease 的分布式cache系統2.3.2 lease 機制的分析

2.3.3 基於lease機制確定節點狀態2.3.4 lease的有效期時間選擇

2.3.5 工程投影

2.4 Quorum機制

2.4.1 約定

2.4.2 Write-all-read-one2.4.3 Quorum定義

2.4.4 讀取最新成功提交的資料

2.4.5 基於Quorum機制選擇primary2.4.6 工程投影

2.5 日誌技術

2.5.1 資料庫系統日誌技術簡述

2.5.2 Redo Log 與 Check point2.5.3 No Undo/No Redo log2.5.4 工程投影

日誌技術的使用非常廣泛,在 zookeeper 系統中,為了實現高效的資料訪問,資料完全儲存在記憶體中,但更新操作的日誌不斷持久化到磁碟,另一方面,為了實現較快速度的宕機恢復,zookeeper 週期性的將記憶體資料以 checkpoint 的方式 dump 到磁碟。

MySQL 的主從庫設計也是基於日誌。從庫只需通過回放主庫的日誌,就可以實現與主庫的同步。由於從庫同步的速度與主庫更新的速度沒有強約束,這種方式只能實現最終一致性。

Mola*與 Armor*系統支援多種不同的儲存引擎,對於接受到的更新操作,這兩個系統將操作日誌(redo log)儲存到磁碟,引擎可以通過回放日誌實現副本資料的同步。在 mola*中,由於不需要強一致性,日誌與資料分離,且日誌也儲存多個副本,當日誌副本更新滿足 quorum 要求後就返回使用者更新成功。引擎通過回放日誌的方式實現資料更新,由於回放速度不一致,mola 提供最終一致性保證。

同時,由於返回使用者更新成功時只保證日誌更新成功,此時讀取引擎資料未必可以讀到最新更新的資料。Armor*中更新了這一設計,日誌與資料不分離,更新日誌的同時也更新引擎資料, 從而可以立刻讀取到成功更新的資料。

2.6 兩階段提交協議

2.6.1 問題背景

2.6.2 流程描述

2.6.3 異常處理

2.6.4 協議分析

2.7 基於MVCC的分布式事務

2.7.1 MVCC 簡介

2.7.2 分布式MVCC

2.7.3 工程投影

2.8 Paxos協議

2.8.1 簡介

2.8.2 協議描述

2.8.3 例項

2.8.4 競爭及活鎖

2.8.5 協議推導

2.8.6 工程投影

2.9 CAP理論

2.9.1 定義

2.9.2 CAP理論的意義

2.9.3 協議分析

同是分布式系統,為什麼redis不需要leader,而rocketmq和oceanbase需要?

drdr xp 所有的強一致分布式系統都有leader,或者是乙個長期維護的leader 程序,或是短暫存在的某條記錄的leader。沒有leader的,一定不是乙個強一致系統。因為達成一致本身的含義就是 某個變數的值是在某個時刻被全域性唯一的乙個程序決定的,這個程序在那個時間就是這個變數的lead...

分布式系統常用的一致性演算法有哪些?

一致性這個翻譯是有問題的,應該用共識比較好consistency vs consensus一致性容易混淆使用replication 方法多備份資料來防止資料丟失的情況。共識系統則很清晰,就是多個參與者針對某乙個議題達成一致意見。 satanson 其實應該叫分布式共識 distributed con...

分布式深度學習訓練中的通訊優化有哪些主流的研究方向?

顏深根 從系統實現上來分,可以分為PS和Allreduce兩個大的方向。對精度是否有影響來分,可以分為同步通訊和非同步通訊。從通訊的內容上來分,可以分為稠密通訊和稀疏通訊。這裡面每乙個方向都會有很多可以優化的方法。比如從通訊底層,可以採用普通TCP IP協議,也可以採用RDMA。PS可以採用單個Se...