Upgrade to Pro
— share decks privately, control downloads, hide ads and more …
Speaker Deck
Features
Speaker Deck
PRO
Sign in
Sign up for free
Search
Search
分散システムのリテラシー / Distributed Systems Literacy
Search
Kenji Saito
PRO
July 05, 2017
Technology
0
180
分散システムのリテラシー / Distributed Systems Literacy
ブロックチェーンハブ主催で開催しているブロックチェーン基盤技術講義『分散システムのリテラシー』のスライドです。2017年7月5日(水) に使用しました。
Kenji Saito
PRO
July 05, 2017
Tweet
Share
More Decks by Kenji Saito
See All by Kenji Saito
デジタルトランスフォーメーションと民主主義 / Digital Transformation and Democracy
ks91
PRO
0
3
We Never Took the Kobayashi Maru Test Until Now. What Do You Think of Our Solutions? — Journeys of the Mind Through a No-Win Game
ks91
PRO
0
14
思いつきが武器になる:研究というゲームを始めよう / Ideas Are Your Equipments : Let the Game of Research Begin!
ks91
PRO
0
73
ロボットを雰囲気(ヴァイブ)でプログラミングするこどもたち / Children Vibe-Programming Robots
ks91
PRO
0
21
アカデミーキャンプ 2025 SuuuuuuMMeR「燃えろ!!ロボコン」 / Academy Camp 2025 SuuuuuuMMeR "Burn the Spirit, Robocon!!" DAY 3
ks91
PRO
0
30
アカデミーキャンプ 2025 SuuuuuuMMeR「燃えろ!!ロボコン」 / Academy Camp 2025 SuuuuuuMMeR "Burn the Spirit, Robocon!!" DAY 2
ks91
PRO
0
33
アカデミーキャンプ 2025 SuuuuuuMMeR「燃えろ!!ロボコン」 / Academy Camp 2025 SuuuuuuMMeR "Burn the Spirit, Robocon!!" DAY 1
ks91
PRO
0
160
未来へのフォワードキャスト / Forward Cast to the Future
ks91
PRO
0
86
発表と総括 / Presentations and Summary
ks91
PRO
0
61
Other Decks in Technology
See All in Technology
Autonomous Database - Dedicated 技術詳細 / adb-d_technical_detail_jp
oracle4engineer
PRO
4
10k
JTCにおける内製×スクラム開発への挑戦〜内製化率95%達成の舞台裏/JTC's challenge of in-house development with Scrum
aeonpeople
0
170
生成AIでセキュリティ運用を効率化する話
sakaitakeshi
0
360
会社紹介資料 / Sansan Company Profile
sansan33
PRO
6
380k
企業の生成AIガバナンスにおけるエージェントとセキュリティ
lycorptech_jp
PRO
2
110
AWSで推進するデータマネジメント
kawanago
1
1.2k
研究開発と製品開発、両利きのロボティクス
youtalk
1
500
【Grafana Meetup Japan #6】Grafanaをリバプロ配下で動かすときにやること ~ Grafana Liveってなんだ ~
yoshitake945
0
390
Grafana MCPサーバーによるAIエージェント経由でのGrafanaダッシュボード動的生成
hamadakoji
1
1.5k
react-callを使ってダイヤログをいろんなとこで再利用しよう!
shinaps
1
210
オブザーバビリティが広げる AIOps の世界 / The World of AIOps Expanded by Observability
aoto
PRO
0
320
実践!カスタムインストラクション&スラッシュコマンド
puku0x
0
270
Featured
See All Featured
Automating Front-end Workflow
addyosmani
1370
200k
Testing 201, or: Great Expectations
jmmastey
45
7.6k
What’s in a name? Adding method to the madness
productmarketing
PRO
23
3.7k
Fight the Zombie Pattern Library - RWD Summit 2016
marcelosomers
234
17k
StorybookのUI Testing Handbookを読んだ
zakiyama
31
6.1k
Optimizing for Happiness
mojombo
379
70k
Reflections from 52 weeks, 52 projects
jeffersonlam
352
21k
Statistics for Hackers
jakevdp
799
220k
The Language of Interfaces
destraynor
161
25k
Visualizing Your Data: Incorporating Mongo into Loggly Infrastructure
mongodb
48
9.7k
How to Think Like a Performance Engineer
csswizardry
26
1.9k
The Success of Rails: Ensuring Growth for the Next 100 Years
eileencodes
46
7.6k
Transcript
SFC / CSO
[email protected]
— — 2017-07-05 – p.1/38
( ) SFC ( ) CSO (Chief Science Officer) CEO
1993 M.Eng ( ) 2006 ( ) SFC 16 P2P 2011 → ( ) — — 2017-07-05 – p.2/38
FLP CAP CUP ( ) P2P — — 2017-07-05 –
p.3/38
1. 2. 3. Paxos 4. 5. P2P 6. — —
2017-07-05 – p.4/38
1. FLP CAP — — 2017-07-05 – p.5/38
A, B A-B m A B A B A B
. . . — — 2017-07-05 – p.6/38
1. X 2. X C 3. C 1. 2. 3.
reliable multicast — — 2017-07-05 – p.7/38
: — — 2017-07-05 – p.8/38
(safety) (liveness) ( ) ( = ) — — 2017-07-05
– p.9/38
→ / (benign) → (Byzantine) (malicious) — — 2017-07-05 –
p.10/38
FLP Fischer, Lynch, Paterson — — 2017-07-05 – p.11/38
CAP Consistency ( ) Availability ( ) Partition tolerance (
) ⇒ 3 C Eventual consistency ( ) . . . — — 2017-07-05 – p.12/38
Consistency ( ) Strong consistency ( ) (safety) Eventual consistency
( ) (liveness) ↑ Weak consistency ( ) ↑ ( ) — — 2017-07-05 – p.13/38
2. — — 2017-07-05 – p.14/38
n = f ( ) ⇒ — — 2017-07-05 –
p.15/38
(1) 1 1, 2 n ≤ 3f — — 2017-07-05
– p.16/38
(2) — — 2017-07-05 – p.17/38
3. Paxos Paxos Paxos — — 2017-07-05 – p.18/38
CS1 : CS2 : CS3 : CL1 : CL2 :
: : (e.g. ) ( ) — — 2017-07-05 – p.19/38
Paxos (1) : (The Part-Time Parliament) Paxos ( ) ↔
↔ ↔ ⇒ — — 2017-07-05 – p.20/38
Paxos (2) (proposers), (acceptors), (learners) 1. 2. Paxos ( )
— — 2017-07-05 – p.21/38
Paxos Paxos 2f + 1 Paxos f “byzantizing” Byzantine Paxos
PBFT (Practical Byzantine Fault-Tolerance) PBFT — — 2017-07-05 – p.22/38
4. CUP (Consensus with Unknown Participants) vs. — — 2017-07-05
– p.23/38
(B)FT-CUP (Consensus with Unknown Participants) ( / ) : FT
(Fault-Tolerant) : BFT (Byzantine Fault-Tolerant) P2P n FT/BFT — — 2017-07-05 – p.24/38
State Machine Replication ( ) (by ) (since 1984) (
) ( ) . . . ( ) — — 2017-07-05 – p.25/38
( ) ( ) ( ) ( ) (by )
⇒ ( ) — — 2017-07-05 – p.26/38
5. P2P P2P - - — — 2017-07-05 – p.27/38
P2P : P2P 3 3 ( ) strategyproof group strategyproof
— — 2017-07-05 – p.28/38
(Sybil) 16 — — 2017-07-05 – p.29/38
again n > 3f R F R > 2F ⇒
— — 2017-07-05 – p.30/38
( ) f = 1 ⇒ R — — 2017-07-05
– p.31/38
6. — — 2017-07-05 – p.32/38
3 1. ( : UTXO ) ⇒ ( ) 2.
( : ) ⇒ 3. ( : ) TX ⇒ 2 3 — — 2017-07-05 – p.33/38
10 ATM 1 ATM 1 : http://www.slideshare.net/yamaz2/ss-58813038 ⇒ KVS —
— 2017-07-05 – p.34/38
— — 2017-07-05 – p.35/38
vs. — — 2017-07-05 – p.36/38
(centralized) (decentralized) (distributed) Paul Baran, “On Distributed Communications Networks”, 1964
(C) (A) — — 2017-07-05 – p.37/38
— — 2017-07-05 – p.38/38