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
Jepsen Introduction LT
Search
UENISHI Kota
May 13, 2015
Technology
440
2
Share
Embed
Copy iframe code
Copy JS code
Copy link
Start on current slide
Jepsen Introduction LT
Jepsenの紹介LT
UENISHI Kota
May 13, 2015
More Decks by UENISHI Kota
See All by UENISHI Kota
Storage Systems in Preferred Networks
kuenishi
0
100
Metadata Management in Distributed File Systems
kuenishi
2
570
Behind The Scenes: Cloud Native Storage System for AI
kuenishi
2
470
Apache Ozone behind Simulation and AI Industries
kuenishi
0
480
Distributed Deep Learning with Chainer and Hadoop
kuenishi
3
1.3k
A Few Ways to Accelerate Deep Learning
kuenishi
0
1.2k
Introducing Retz
kuenishi
5
1.3k
Introducing Retz and how to develop practical frameworks
kuenishi
3
840
Formalization and Proof of Distributed Systems (ja)
kuenishi
10
6.5k
Other Decks in Technology
See All in Technology
All About Sansan – for New Global Engineers
sansan33
PRO
1
1.5k
Claude Codeの体系的な理解と知識のフック
oikon48
5
4.7k
Sansan Engineering Unit 紹介資料
sansan33
PRO
1
5k
国家プロジェクトを支える「さくらONE」 大規模LLM開発におけるGPU障害を乗り越えるクラスター運用戦略
gpuunite_official
0
300
The Django UUID Story - DjangoCon US 2026
pauloxnet
0
280
Windows の互換機能 - 古いプログラムはなぜ動作できるのか
murachiakira
PRO
0
120
Introduction to Bill One Development Engineer
sansan33
PRO
0
470
フィジカルAIの知識ゼロの僕でも AIを使えばここまでできた
tatsuya1970
0
190
AWSとAzureのマルチクラウド活用における強い味方___AWS_Kiroを使った二刀流スキル作成.pdf
duelist2020jp
0
120
医療の現場を変革に挑戦した半年間の軌跡 - PythonとAIで現場を変える / From Code to Care
soudai
PRO
1
630
サービス内で複数のOP・ASを連鎖させる(OAuth/OIDC Numa (Immersion) Workshop 2026)
oidfj
PRO
0
320
1000⼈規模のClaude Enterprise運⽤を「Oktaのグループ」と「Slack」に集約する
sansantech
PRO
0
440
Featured
See All Featured
sira's awesome portfolio website redesign presentation
elsirapls
0
350
Responsive Adventures: Dirty Tricks From The Dark Corners of Front-End
smashingmag
254
22k
Designing Experiences People Love
moore
143
24k
Thoughts on Productivity
jonyablonski
76
5.3k
Abbi's Birthday
coloredviolet
3
9.5k
AI in Enterprises - Java and Open Source to the Rescue
ivargrimstad
0
1.4k
AI Search: Implications for SEO and How to Move Forward - #ShenzhenSEOConference
aleyda
1
1.3k
Beyond borders and beyond the search box: How to win the global "messy middle" with AI-driven SEO
davidcarrasco
3
220
How to Get Subject Matter Experts Bought In and Actively Contributing to SEO & PR Initiatives.
livdayseo
0
180
Organizational Design Perspectives: An Ontology of Organizational Design Elements
kimpetersen
PRO
1
800
Exploring anti-patterns in Rails
aemeredith
3
470
How to Think Like a Performance Engineer
csswizardry
28
2.7k
Transcript
2015/5/13 Dwango Internal Erlang/OTP study group, LT Kota UENISHI /
@kuenishi JEPSEN “CALL ME MAYBE”
“Call Me Maybe” WHAT EVEN IS JEPSEN?
Who plays a song “Call Me Maybe” A NAME OF
A SINGER
That can test many system with replication ALSO, A PARTITION
TOLERANCE TEST TOOL
IT HAS TESTED … • PostgreSQL • Redis (Sentinel, redux)
• MongoDB • Riak • ZooKeeper • NuoDB • Kafka • Cassandra • RabbitMQ • etcd and Consul • Elasticsearch • Aerospike (New!)
AND FOUND DATA LOSS ISSUE OF … • Redis (Sentinel,
redux) • MongoDB • Kafka • Cassandra • RabbitMQ • etcd • Elasticsearch • Aerospike
BOXES AND LINES n1 jepsen n2 n3 n4 n5
is implemented in Clojure TECHNICALLY JEPSEN .. • Emulates network
partition • By cutting network between virtual machines • While Jepsen concurrently continues writing data, • And finally verifies any writes are not lost
WHY PARTITION TOLERANCE IS IMPORTANT AND DIFFICULT?
• In the beginning was the failure and asynchrony •
Replication and Consensus next • Failover and recovery / Membership Change mess things • Implementation and runtime is complexed
• for x=1….n • list = get(x) • write(x, [a,
list]) • get(x) • => [1…n] ͱͳ͍ͬͯΕ linearizable
REFERENCES • C.R.Jepsen “Call Me Maybe” • Jepsen blog post
series • github.com/aphyr/jepsen • Kyle Kingsbury: @aphyr (sometimes NSFW) • “The Network Is Reliable” • https://queue.acm.org/detail.cfm?id=2655736