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
November 29, 2017
Technology
0
160
分散システムの基礎知識 / Distributed Systems Literacy
2017年11月29日(水)、ブロックチェーンアカデミー「ブロックチェーン基盤技術 分散システムの基礎知識」にて使用したスライドです
Kenji Saito
PRO
November 29, 2017
Tweet
Share
More Decks by Kenji Saito
See All by Kenji Saito
コードや知識を組み込む / Incorporating Codes and Knowledge
ks91
PRO
0
120
シリアスゲームとしての RPG / RPGs as Serious Games
ks91
PRO
0
41
"September 12th" ゲームのプロンプトの構造 / "September 12th" Game Prompt Structure
ks91
PRO
0
34
ワールドカフェI /チューターを改良する / World Café I and Improving the Tutors
ks91
PRO
0
130
自然言語の扱いと翻訳のためのプロンプト / Natural Language Handling and Prompts for Translation
ks91
PRO
0
38
研究って何だっけ / What is Research?
ks91
PRO
0
33
ブロックチェーンと分散ファイナンス概論 / Introduction to Blockchain and Decentralized Finance
ks91
PRO
0
17
大規模言語モデルの原理と使いこなしの原則 / Principles of Large Language Models and Their Use
ks91
PRO
0
34
講師研究紹介 / Research Introduction of the Lecturer
ks91
PRO
0
44
Other Decks in Technology
See All in Technology
エンジニアリングで組織のアウトカムを最速で最大化する!
ham0215
1
170
JPOUG Tech Talk #12 UNDO Tablespace Reintroduction
nori_shinoda
2
150
今日からはじめるプラットフォームエンジニアリング
jacopen
8
1.6k
Microsoft の SSE の現在地
skmkzyk
0
160
より良い開発者体験を実現するために~開発初心者が感じた生成AIの可能性~
masakiokuda
0
210
品質文化を支える小さいクロスファンクショナルなチーム / Cross-functional teams fostering quality culture
toma_sm
0
150
白金鉱業Meetup_Vol.18_AIエージェント時代のUI/UX設計
brainpadpr
1
200
“パスワードレス認証への道" ユーザー認証の変遷とパスキーの関係
ritou
1
620
AIコーディングの最前線 〜活用のコツと課題〜
pharma_x_tech
4
2.5k
Goの組織でバックエンドTypeScriptを採用してどうだったか / How was adopting backend TypeScript in a Golang company
kaminashi
12
8.5k
AIでめっちゃ便利になったけど、結局みんなで学ぶよねっていう話
kakehashi
PRO
1
390
意思決定を支える検索体験を目指してやってきたこと
hinatades
PRO
0
270
Featured
See All Featured
Facilitating Awesome Meetings
lara
54
6.3k
For a Future-Friendly Web
brad_frost
176
9.7k
Agile that works and the tools we love
rasmusluckow
328
21k
Easily Structure & Communicate Ideas using Wireframe
afnizarnur
194
16k
Fantastic passwords and where to find them - at NoRuKo
philnash
51
3.1k
Side Projects
sachag
453
42k
The Pragmatic Product Professional
lauravandoore
33
6.6k
Reflections from 52 weeks, 52 projects
jeffersonlam
349
20k
How To Stay Up To Date on Web Technology
chriscoyier
790
250k
How to Ace a Technical Interview
jacobian
276
23k
A Tale of Four Properties
chriscoyier
158
23k
Principles of Awesome APIs and How to Build Them.
keavy
126
17k
Transcript
CSO / SFC
[email protected]
— — 2017-11-29 – p.1/38
( ) SFC ( ) CSO (Chief Science Officer) 1993
M.Eng ( ) 2006 ( ) SFC 17 P2P 2011 → ( ) — — 2017-11-29 – p.2/38
FLP CAP CUP ( ) P2P — — 2017-11-29 –
p.3/38
1. 2. 3. Paxos 4. 5. P2P 6. — —
2017-11-29 – p.4/38
1. FLP CAP — — 2017-11-29 – p.5/38
A, B A-B m A B A B A B
. . . — — 2017-11-29 – p.6/38
1. X 2. X C 3. C 1. 2. 3.
reliable multicast — — 2017-11-29 – p.7/38
: — — 2017-11-29 – p.8/38
(safety) (liveness) ( ) ( = ) — — 2017-11-29
– p.9/38
→ / (benign) → (Byzantine) (malicious) — — 2017-11-29 –
p.10/38
FLP Fischer, Lynch, Paterson — — 2017-11-29 – p.11/38
CAP Consistency ( ) Availability ( ) Partition tolerance (
) ⇒ 3 C Eventual consistency ( ) . . . — — 2017-11-29 – p.12/38
Consistency ( ) Strong consistency ( ) (safety) Eventual consistency
( ) (liveness) ↑ Weak consistency ( ) ↑ ( ) — — 2017-11-29 – p.13/38
2. — — 2017-11-29 – p.14/38
n = f ( ) ⇒ — — 2017-11-29 –
p.15/38
(1) 1 1, 2 n ≤ 3f — — 2017-11-29
– p.16/38
(2) — — 2017-11-29 – p.17/38
3. Paxos Paxos Paxos — — 2017-11-29 – p.18/38
CS1 : CS2 : CS3 : CL1 : CL2 :
: : (e.g. ) — — 2017-11-29 – p.19/38
Paxos (1) : (The Part-Time Parliament) Paxos ( ) ↔
↔ ↔ ⇒ — — 2017-11-29 – p.20/38
Paxos (2) (proposers), (acceptors), (learners) 1. 2. Paxos ( )
— — 2017-11-29 – p.21/38
Paxos Paxos 2f + 1 Paxos f “byzantizing” Byzantine Paxos
PBFT (Practical Byzantine Fault-Tolerance) PBFT — — 2017-11-29 – p.22/38
4. CUP (Consensus with Unknown Participants) vs. — — 2017-11-29
– p.23/38
(B)FT-CUP (Consensus with Unknown Participants) ( / ) : FT
(Fault-Tolerant) : BFT (Byzantine Fault-Tolerant) P2P n FT/BFT — — 2017-11-29 – p.24/38
State Machine Replication ( ) (by ) (since 1984) (
) ( ) . . . ( ) — — 2017-11-29 – p.25/38
( ) ( ) ( ) ( ) (by )
— — 2017-11-29 – p.26/38
5. P2P P2P - - — — 2017-11-29 – p.27/38
P2P : P2P 3 3 ( ) strategyproof group strategyproof
— — 2017-11-29 – p.28/38
(Sybil) 16 — — 2017-11-29 – p.29/38
again n > 3f R F R > 2F ⇒
— — 2017-11-29 – p.30/38
( ) f = 1 ⇒ R — — 2017-11-29
– p.31/38
6. — — 2017-11-29 – p.32/38
3 1. ( : UTXO ) ⇒ ( ) 2.
( : ) ⇒ 3. ( : ) TX ⇒ 2 3 — — 2017-11-29 – p.33/38
10 ATM 1 ATM 1 : http://www.slideshare.net/yamaz2/ss-58813038 ⇒ KVS —
— 2017-11-29 – p.34/38
— — 2017-11-29 – p.35/38
vs. — — 2017-11-29 – p.36/38
(centralized) (decentralized) (distributed) Paul Baran, “On Distributed Communications Networks”, 1964
(C) (A) — — 2017-11-29 – p.37/38
— — 2017-11-29 – p.38/38