Upgrade to Pro — share decks privately, control downloads, hide ads and more …

Jepsen Introduction LT

Jepsen Introduction LT

Jepsenの紹介LT

Avatar for UENISHI Kota

UENISHI Kota

May 13, 2015
Tweet

More Decks by UENISHI Kota

Other Decks in Technology

Transcript

  1. IT HAS TESTED … • PostgreSQL • Redis (Sentinel, redux)

    • MongoDB • Riak • ZooKeeper • NuoDB • Kafka • Cassandra • RabbitMQ • etcd and Consul • Elasticsearch • Aerospike (New!)
  2. AND FOUND DATA LOSS ISSUE OF … • Redis (Sentinel,

    redux) • MongoDB • Kafka • Cassandra • RabbitMQ • etcd • Elasticsearch • Aerospike
  3. 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
  4. • In the beginning was the failure and asynchrony •

    Replication and Consensus next • Failover and recovery / Membership Change mess things • Implementation and runtime is complexed
  5. • for x=1….n • list = get(x) • write(x, [a,

    list]) • get(x) • => [1…n] ͱͳ͍ͬͯΕ͹ linearizable
  6. 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