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
February 24, 2017
Technology
3
770
分散システムのリテラシー / Distributed Systems Literacy
ブロックチェーンハブ主催で開催している連続講義 (通算第3期) ブロックチェーン基盤技術 第4回「分散システムのリテラシー」のスライドです。2017年2月24日(金) に使用しました。
Kenji Saito
PRO
February 24, 2017
Tweet
Share
More Decks by Kenji Saito
See All by Kenji Saito
デジタルトランスフォーメーションと民主主義 / Digital Transformation and Democracy
ks91
PRO
0
5
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
16
思いつきが武器になる:研究というゲームを始めよう / 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
AIエージェント開発用SDKとローカルLLMをLINE Botと組み合わせてみた / LINEを使ったLT大会 #14
you
PRO
0
100
なぜSaaSがMCPサーバーをサービス提供するのか?
sansantech
PRO
8
2.8k
Autonomous Database - Dedicated 技術詳細 / adb-d_technical_detail_jp
oracle4engineer
PRO
4
10k
下手な強制、ダメ!絶対! 「ガードレール」を「檻」にさせない"ガバナンス"の取り方とは?
tsukaman
2
430
JTCにおける内製×スクラム開発への挑戦〜内製化率95%達成の舞台裏/JTC's challenge of in-house development with Scrum
aeonpeople
0
210
Automating Web Accessibility Testing with AI Agents
maminami373
0
1.2k
落ちる 落ちるよ サーバーは落ちる
suehiromasatoshi
0
150
AWSを利用する上で知っておきたい名前解決のはなし(10分版)
nagisa53
10
3k
これでもう迷わない!Jetpack Composeの書き方実践ガイド
zozotech
PRO
0
320
Snowflakeの生成AI機能を活用したデータ分析アプリの作成 〜Cortex AnalystとCortex Searchの活用とStreamlitアプリでの利用〜
nayuts
1
470
2025年夏 コーディングエージェントを統べる者
nwiizo
0
140
20250910_障害注入から効率的復旧へ_カオスエンジニアリング_生成AIで考えるAWS障害対応.pdf
sh_fk2
3
230
Featured
See All Featured
I Don’t Have Time: Getting Over the Fear to Launch Your Podcast
jcasabona
33
2.4k
How To Stay Up To Date on Web Technology
chriscoyier
790
250k
Improving Core Web Vitals using Speculation Rules API
sergeychernyshev
18
1.1k
Why You Should Never Use an ORM
jnunemaker
PRO
59
9.5k
StorybookのUI Testing Handbookを読んだ
zakiyama
31
6.1k
Designing for Performance
lara
610
69k
Rails Girls Zürich Keynote
gr2m
95
14k
The Pragmatic Product Professional
lauravandoore
36
6.9k
Reflections from 52 weeks, 52 projects
jeffersonlam
352
21k
Let's Do A Bunch of Simple Stuff to Make Websites Faster
chriscoyier
507
140k
GraphQLの誤解/rethinking-graphql
sonatard
72
11k
Keith and Marios Guide to Fast Websites
keithpitt
411
22k
Transcript
4 SFC / CSO
[email protected]
— 4 — 2017-02-24 –
p.1/34
FLP CAP CUP ( ) P2P — 4 — 2017-02-24
– p.2/34
1. 2. 3. P2P 4. — 4 — 2017-02-24 –
p.3/34
1. FLP CAP — 4 — 2017-02-24 – p.4/34
A, B A-B m A B A B A B
. . . — 4 — 2017-02-24 – p.5/34
1. X 2. X C 3. C 1. 2. 3.
reliable multicast — 4 — 2017-02-24 – p.6/34
: — 4 — 2017-02-24 – p.7/34
(safety) (liveness) ( ) ( = ) — 4 —
2017-02-24 – p.8/34
→ / (benign) → (Byzantine) (malicious) — 4 — 2017-02-24
– p.9/34
FLP Fischer, Lynch, Paterson — 4 — 2017-02-24 – p.10/34
CAP Consistency ( ) Availability ( ) Partition tolerance (
) ⇒ 3 C Eventual consistency ( ) . . . — 4 — 2017-02-24 – p.11/34
Consistency ( ) Strong consistency ( ) (safety) Eventual consistency
( ) (liveness) ↑ Weak consistency ( ) ↑ ( ) — 4 — 2017-02-24 – p.12/34
n = f ( ) — 4 — 2017-02-24 –
p.13/34
(1) 1 1, 2 n ≤ 3f — 4 —
2017-02-24 – p.14/34
(2) — 4 — 2017-02-24 – p.15/34
CS1 : CS2 : CS3 : CL1 : CL2 :
: : (e.g. ) — 4 — 2017-02-24 – p.16/34
Paxos (1) : (The Part-Time Parliament) Paxos ( ) ↔
↔ ↔ ⇒ — 4 — 2017-02-24 – p.17/34
Paxos (2) (proposers), (acceptors), (learners) 1. 2. Paxos ( )
— 4 — 2017-02-24 – p.18/34
Paxos Paxos 2f + 1 Paxos f “byzantizing” Byzantine Paxos
PBFT (Practical Byzantine Fault-Tolerance) PBFT — 4 — 2017-02-24 – p.19/34
2. CUP (Consensus with Unknown Participants) - — 4 —
2017-02-24 – p.20/34
(B)FT-CUP (Consensus with Unknown Participants) ( / ) : FT
(Fault-Tolerant) : BFT (Byzantine Fault-Tolerant) P2P n FT/BFT — 4 — 2017-02-24 – p.21/34
- n ( ) p.6 — 4 — 2017-02-24 –
p.22/34
3. P2P P2P - - — 4 — 2017-02-24 –
p.23/34
P2P : P2P 3 3 ( ) strategyproof group strategyproof
— 4 — 2017-02-24 – p.24/34
(Sybil) 16 — 4 — 2017-02-24 – p.25/34
again n > 3f R F R > 2F ⇒
— 4 — 2017-02-24 – p.26/34
( ) f = 1 ⇒ R — 4 —
2017-02-24 – p.27/34
4. — 4 — 2017-02-24 – p.28/34
3 1. ( ) ⇒ 2. ( ) ⇒ 3.
( ) TX · ⇒ — 4 — 2017-02-24 – p.29/34
10 ATM 1 ATM 1 : http://www.slideshare.net/yamaz2/ss-58813038 ⇒ KVS —
4 — 2017-02-24 – p.30/34
— 4 — 2017-02-24 – p.31/34
vs. — 4 — 2017-02-24 – p.32/34
(centralized) (decentralized) (distributed) Paul Baran, “On Distributed Communications Networks”, 1964
(C) (A) — 4 — 2017-02-24 – p.33/34
— 4 — 2017-02-24 – p.34/34