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
710
分散システムのリテラシー / 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
市民科学にAI はどう活用できるか / How AI Can Be Used for Citizen Science
ks91
PRO
0
11
グリーンマイニングが Bitcoin プロトコルに及ぼす影響 / Impact of Green Mining on the Bitcoin Protocol
ks91
PRO
0
18
FinTech 13-14 : Ideathon, Presentations and Conclusions
ks91
PRO
0
55
デザイン相談会 / Design Consultation
ks91
PRO
0
13
FinTech 11-12 : Cyber-Physical Society and Future of Finance
ks91
PRO
0
52
メタ自然選択と製品トレーサビリティー / Meta-Natural Selection and Product Traceability
ks91
PRO
0
8
伝統的金融に呑まれる分散型金融 / Decentralised Finance Engulfed by Traditional Finance
ks91
PRO
0
15
ウェブサービスデザイン 2 / Web Service Design 2
ks91
PRO
0
25
生成AI による論文執筆サポートの手引き(ワークショップ) / A guide to supporting dissertation writing with generative AI (workshop)
ks91
PRO
0
250
Other Decks in Technology
See All in Technology
Python(PYNQ)がテーマのAMD主催のFPGAコンテストに参加してきた
iotengineer22
0
540
生成AIが変えるデータ分析の全体像
ishikawa_satoru
0
180
DynamoDB でスロットリングが発生したとき/when_throttling_occurs_in_dynamodb_short
emiki
0
270
[CV勉強会@関東 ECCV2024 読み会] オンラインマッピング x トラッキング MapTracker: Tracking with Strided Memory Fusion for Consistent Vector HD Mapping (Chen+, ECCV24)
abemii
0
230
B2B SaaSから見た最近のC#/.NETの進化
sansantech
PRO
0
930
Mastering Quickfix
daisuzu
1
140
ノーコードデータ分析ツールで体験する時系列データ分析超入門
negi111111
0
430
FlutterアプリにおけるSLI/SLOを用いたユーザー体験の可視化と計測基盤構築
ostk0069
0
120
Adopting Jetpack Compose in Your Existing Project - GDG DevFest Bangkok 2024
akexorcist
0
120
エンジニア人生の拡張性を高める 「探索型キャリア設計」の提案
tenshoku_draft
1
130
データプロダクトの定義からはじめる、データコントラクト駆動なデータ基盤
chanyou0311
2
350
アジャイルでの品質の進化 Agile in Motion vol.1/20241118 Hiroyuki Sato
shift_evolve
0
180
Featured
See All Featured
Put a Button on it: Removing Barriers to Going Fast.
kastner
59
3.5k
Helping Users Find Their Own Way: Creating Modern Search Experiences
danielanewman
29
2.3k
The Success of Rails: Ensuring Growth for the Next 100 Years
eileencodes
44
6.8k
Happy Clients
brianwarren
98
6.7k
YesSQL, Process and Tooling at Scale
rocio
169
14k
How to Create Impact in a Changing Tech Landscape [PerfNow 2023]
tammyeverts
47
2.1k
GraphQLの誤解/rethinking-graphql
sonatard
67
10k
Docker and Python
trallard
40
3.1k
The Language of Interfaces
destraynor
154
24k
VelocityConf: Rendering Performance Case Studies
addyosmani
325
24k
Building Better People: How to give real-time feedback that sticks.
wjessup
364
19k
RailsConf 2023
tenderlove
29
900
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