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
ブロックチェーン概論 / Introduction to Blockchain
ks91
PRO
0
3
ブロックチェーンと分散ファイナンス概論 / Introduction to Blockchain and Decentralized Finance
ks91
PRO
0
42
Proof of Authenticity of General IoT Information with Tamper-Evident Sensors and Blockchain
ks91
PRO
0
5
FinTech 1-2 : Overview of FinTech
ks91
PRO
0
9
デジタルトランスフォーメーションと民主主義 / Digital Transformation and Democracy
ks91
PRO
0
19
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
24
思いつきが武器になる:研究というゲームを始めよう / Ideas Are Your Equipments : Let the Game of Research Begin!
ks91
PRO
0
79
ロボットを雰囲気(ヴァイブ)でプログラミングするこどもたち / Children Vibe-Programming Robots
ks91
PRO
0
26
アカデミーキャンプ 2025 SuuuuuuMMeR「燃えろ!!ロボコン」 / Academy Camp 2025 SuuuuuuMMeR "Burn the Spirit, Robocon!!" DAY 3
ks91
PRO
0
35
Other Decks in Technology
See All in Technology
DataOpsNight#8_Terragruntを用いたスケーラブルなSnowflakeインフラ管理
roki18d
1
320
AI ReadyなData PlatformとしてのAutonomous Databaseアップデート
oracle4engineer
PRO
0
140
GA technologiesでのAI-Readyの取り組み@DataOps Night
yuto16
0
260
C# 14 / .NET 10 の新機能 (RC 1 時点)
nenonaninu
1
1.4k
「Verify with Wallet API」を アプリに導入するために
hinakko
1
210
コンテキストエンジニアリングとは? 考え方と応用方法
findy_eventslides
4
870
KMP の Swift export
kokihirokawa
0
310
KAGのLT会 #8 - 東京リージョンでGAしたAmazon Q in QuickSightを使って、報告用の資料を作ってみた
0air
0
190
関係性が駆動するアジャイル──GPTに人格を与えたら、対話を通してふりかえりを習慣化できた話
mhlyc
0
130
業務自動化プラットフォーム Google Agentspace に入門してみる #devio2025
maroon1st
0
180
生成AIで「お客様の声」を ストーリーに変える 新潮流「Generative ETL」
ishikawa_satoru
1
270
全てGoで作るP2P対戦ゲーム入門
ponyo877
3
1.3k
Featured
See All Featured
Helping Users Find Their Own Way: Creating Modern Search Experiences
danielanewman
30
2.9k
The Cult of Friendly URLs
andyhume
79
6.6k
Building Applications with DynamoDB
mza
96
6.6k
It's Worth the Effort
3n
187
28k
Code Reviewing Like a Champion
maltzj
525
40k
Fantastic passwords and where to find them - at NoRuKo
philnash
52
3.4k
Embracing the Ebb and Flow
colly
88
4.8k
ピンチをチャンスに:未来をつくるプロダクトロードマップ #pmconf2020
aki_iinuma
127
53k
For a Future-Friendly Web
brad_frost
180
9.9k
Testing 201, or: Great Expectations
jmmastey
45
7.7k
Creating an realtime collaboration tool: Agile Flush - .NET Oxford
marcduiker
32
2.2k
Fashionably flexible responsive web design (full day workshop)
malarkey
407
66k
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