SlideShare una empresa de Scribd logo
1 de 46
PaxosとMegastore @hidemotoNakada
自己紹介 中田秀基 産業技術総合研究所勤務 http://d.hatena.ne.jp/hidemon 並列・分散計算システムが専門 グリッドとか クラウドっぽいのとか MapReduceっぽいのとか AppEngine すっきりわかる Google App Engine
今日のお話 AppEngineのデータストアはバックアップされている そこではPaxosというアルゴリズムが使われている 普通にやるとかなり遅くなるPaxosをがんばって高速化したmegastoreというものを使っている
AppEngineのデータストア複製 Bigtableごと他のデータセンターにリアルタイムで複製されている データストア Bigtable GFS
AppEngineのデータストア複製の変遷 当初のデータストア複製は整合性を保証せず 結局マスタが再起動しないと復旧できない 2009年7月3日には数時間にわたって読み出しもできない状態に 2009年9月整合性のあるバックアップが導入 http://googleappengine.blogspot.com/2009/09/migration-to-better-datastore.html 拙訳http://d.hatena.ne.jp/hidemon/20090916/1253049589 ダウンした場合にも整合性は保証される 書き込んだはずのデータが消えることはあり得る 即座にSlave側を使ってサービスを再開することが可能(理論的には) 2011年1月 High-replication option が追加 http://googleappengine.blogspot.com/2011/01/announcing-high-replication-datastore.html メガストアを利用 同期的に複数箇所にコピー 整合性だけでなく、データが最新であることも保証
データストア複製想像図(1) 初期の非同期Bigtable複製 1)書き込み 2)Ack 複製がデータストアのトランザクションを認識していないので個別に複製が行われる。 マスタ スレーブ 3)個別に非同期複製
データストア複製想像図(2) 非同期Megastoreマスタ-スレーブ複製 1)書き込み 2)Ack アトミックに複製が行われるのでマスタとスレーブの状態が異なることがあっても、どちらも矛盾はない マスタ スレーブ 3)アトミックに非同期複製 2010/3 1.3.2 で導入されたeventual consistency read はマスタが読めないときにスレーブのほうを読みに行くらしい
データストア複製想像図(3) 同期Megastore Paxos複製 1)書き込み リクエスト 2)アトミックにPaxosで同期複製 3)Ack レプリカ レプリカ レプリカ 同期書き込みなので、レプリカは常に同じ状態。ずれが生じることはない。 マスタとスレーブの区別がないのでいずれかのレプリカが停止した場合でも処理を続行できる。
High Replication Datastore 2011年1月5日のBlogでアナウンス http://googleappengine.blogspot.com/2011/01/announcing-high-replication-datastore.html
(大半の)Queryはeventual consistent 一つのEntity Groupの中では問題ない Ancestor queryはStrong Consistency Entity Groupにまたがる場合は、Strongでない 最新でない内容を見てしまう可能性がある コンシステンシが必要な範囲をEntity Groupでくるむ 問題:1つのEntity Groupに対する書き込みは1秒に1度しかできない
GFS ー Google File System 2003年の論文で発表 他のシステムの基盤となるファイルシステム 数十〜 数百ノードから構成される 当初の目的は、クロールしてきたデータの保管 いわゆるPOSIX準拠のファイルシステムではない セマンティクスが異なる アクセスには専用のAPIを用いる 通常のファイルシステムは汎用 なんでもできるが、性能は限定的 GFSは特殊用途 大規模データのwrite once, read many 目的を限定するかわりに、スケーラビリティを確保
GFS上のファイルの構造 ファイル 64Mbyte Chunk Chunk Chunk Chunk Chunk Chunk ,[object Object]
チャンク単位で複製され、分散して格納されるChunk Server Chunk Server Chunk Server Chunk Server Chunk Server
Bigtable データベース Relational Databaseではない 検索はほとんどできない キーに対するスキャンのみ GFS上にデータを保持 書き換えが苦手なGFSの特性に合わせて、データの書き換えが発生しないようにコントロール Chubbyを利用
Bigtableのデータ構造 Row, Column Column Family タイムスタンプによるバージョン ‘anchor’ カラムファミリ “contents:” “anchor:cnnsi.com” “anchor:my.look.ca” <html>.. t3 <html>.. “CNN” “CNN.com” “com.cnn.www” t8 t9 t5 <html>.. t6 Row キー
rowキー column column ABCDEFG row BCDEFG row “BCD”によるプレフィックススキャン BCDPPP row BCDQQQ row BCESSS row CDEFGHI row “C”-”E“のレンジスキャン DEFGHIJ row EFGHIJK row インデックスに対するスキャンのみ
タブレット (tablet) タブレット テーブル タブレット ,[object Object]
分割は動的に行われる
テーブルは、キーの順番でソートされている,[object Object]
タブレットの情報 タブレットを表現する情報は以下に分散される タブレットサーバのメモリ上に置かれたmemtable Memtableの更新情報はGFS上のコミットログに書き出される GFS上に置かれる複数のSSTableというファイル SSTableはリードオンリー テーブルへの書き込みはSSTableには反映されない タブレットサーバ memtable GFS SSTable SSTable コミットログ タブレットを構成する情報
SSTableとmemtable memtable SSTableはReadOnly なので変更はmemtable とコミットログに書かれる。 Commit log エントリの削除もmemtable とCommit Logに書くだけ。 SSTableのエントリはその まま SSTable 2 SSTable 1
データストア複製の何が難しいのか? ノードが落ちる メッセージが消える ブロック可能性 あるプロセスがとまってしまうと先に進まなくなる性質 たとえば2相コミットはブロックする可能性がある 書き込み遅延、読み出し遅延 複製によっておそくなると困る
2相コミット リーダー prepare agreement commit 書き込み 書き込み 書き込み
Lamport, Leslie SRI, DEC, Compaq,  2001年からMicrosoft Research Time, Clock, ordering of Events Byzantine Generals Problem Distributed Snapshots Part-time parliament LaTeX
The Part-Time parliament 「近年の考古学的発見により、Paxos島での議会はその議員がパートタイムであり、すぐいなくなってしまう性質を持っているにもかかわらず機能していたことがわかった。。。」 1990年にACM TOCSに投稿されたが、採録されたのは1998年 島の話を削除しろといわれてへそをまげて8年放置 掲載時にもわざわざ注をつけてキャビネットの裏から発見された、という体裁にしている。 パートタイム議会問題 議員が専業じゃなくて、議場に出たり入ったりするような場合に整合性のある議決を維持できるか? インディアナ・ジョーンズスタイルでレクチャーを何度かしたらしい
Paxos島? エーゲ海 イオニア海 イオニア海にPaxosもしくはPaxoiという島があるが、論文にはエーゲ海の島と書かれており、架空である。 - It should not be confused with the Ionian island of Paxoi, whose name is sometimes corrupted to Paxos.
Paxos島の議会 議員はみんなパートタイムなので、時々どこかに行ってしまう 会議場の音響はひどくメッセンジャーを介して通信するしかない メッセンジャーも(メッセージを持ったまま)ときどきどこかに行ってしまう 2度と帰ってこないこともある メッセージを壊すことはないが、2度以上配達することはあり得る 議員は、台帳を持っている。台帳とその内容はけして失われない 台帳は貴重な羊皮紙でできているので重要なことだけし書けない 紙の束も持っているがこちらは失われる
Paxos 前提条件 メッセージは壊れない(非ビザンチン問題) メッセージはいくらでも遅れる メッセージは二重に配達される可能性がある プロセスは停止し、復活する プロセスは停止しても、以前のことを忘れることはない 要請 過半数のプロセス(レプリカ)が生きている時間が十分長くあれば、多数決で議事をすすめることができるアルゴリズム
Paxosの基本 レプリカ レプリカ レプリカ prepare リーダの 立候補 と了承 過半数の 賛成があればすすんでよい promise accept accepted apply 書き込み 書き込み 書き込み
もうすこし細かく メッセージには必ず提案番号が付加 提案番号はユニークで昇順であることを保証する Promise メッセージは約束 受け取った提案番号よりも小さい提案番号に対してacceptしません、という約束 この際に、すでにacceptしたことのある値があれば、それも返信 Acceptメッセージには提案番号と値を付加 Promiseメッセージで値を返してきたレプリカがあれば(つまりレプリカがすでに別の提案番号に対してacceptしていれば)、その値のどれかを使う そのようなレプリカがなかったら、任意の値をリーダーが選んでよい Accepted Promiseメッセージでの約束に反しないAcceptメッセージに対してはAcceptedで承認
なぜブロックしないのか レプリカは任意の時点でリーダーとして立候補することができる 半数以下ならノードが死んでいても問題ない レプリカ レプリカ レプリカ レプリカ レプリカ prepare prepare accept
リーダーが競合したら? リーダーに立候補する際にはこれまでの番号よりも大きく、かつユニークな番号を振る ユニークにするのは簡単でmod N を使えばいい 基本的に数が大きい方が勝つ 無限に競合し続けることはあり得るが、それは適当に解決する たとえば、ランダムの時間待ってから再度立候補する、など
Acceptしたあとにリーダーが死んだら レプリカ レプリカ レプリカ レプリカ レプリカ Prepare(n) Promise(n, -) Accept (n, 10) Prepare(n+1) Promise(n+1, 10) Accept(n+1, 10)
Paxosの問題点 コストが大きい メッセージ送信前にディスクに送信を記録してSyncしなければならない メッセージが必ず2往復するので高レイテンシ環境下では時間がかかる プロトコルが複雑で正しく実装するのが難しい
GoogleでのPaxos Chubby ロックサービス、設定ファイル置き場、プロセスのトラッキングなどなど 5ノード構成をPaxosで運用 データセンター内なのでレイテンシは小さい Apache ZooKeeperはこのコピー Megastore データセンター間をまたがって運用 レイテンシは大丈夫なのか!?
Megastore 随分前からGoogle社内ではつかっていたらしい 2008年のSIGMODで招待講演があったらしい 論文は今年が初出 Megastore: Providing Scalable, Highly Available Storage for Interactive Services Paxosを使って複製を行うデータベース Bigtableを足回りにしたテーブル指向のNoSQL – データストアとよく似てる 複数rowにまたがるACIDを保証 Entitiy Group 単位 注意:本質的にはGAEのEntityGroupとは概念がちがう、が現実には同じ AppEngineとは似て異なるデータモデル 100以上のアプリケーションで使われているらしい AppEngineはアプリケーションの一つという位置づけ (たぶん)AppEngineは複製の部分だけ使ってる?
Megastoreの技術的なポイント Entity Group を導入することで、データベースを多数のミニDBに分割、その単位でログを複製 ACIDの実現を容易に Coordinator を導入することでPaxosのコストを低減
Megastoreの構造 Megastore: Providing Scalable, Highly Available Storage for Interactive Services, Jason Baker, et al., CIDR, 2011
Megastoreの構造(2) Megastore: Providing Scalable, Highly Available Storage for Interactive Services, Jason Baker, et al., CIDR, 2011
Paxosの最適化(1) リーダ決定の省略 Paxosの1ラウンド目はリーダーの決定 Applyの際に次のリーダーを決めてしまうことで1ラウンド目を省略 そのEntity Groupに書き込むアプリに近い場所を自動的に選ぶ この最適化はよく知られている Chubbyもマスターリースという方法で同じように省略している
Paxosの最適化(2) Coordinator の導入 オンメモリで稼働する簡単なサーバ up to dateになっているEntity Groupを知っておく Up to dateになっていることがわかっていればそのまま読み出せる わからなければ一度多数ノードからの読み出しが必要 Coordinatorの状態が整合していることはクライアントライブラリが保証する Coordinatorが先に死ぬことは想定されていない ごく単純な状態をもたないデーモンなので死なないと言うことらしい 注意:PaxosプロトコルのリーダーのことをCoordinatorと呼ぶことも多いがこれは全く別物
Megastoreの構造 Megastore: Providing Scalable, Highly Available Storage for Interactive Services, Jason Baker, et al., CIDR, 2011
読み込み時の挙動 Megastore: Providing Scalable, Highly Available Storage for Interactive Services, Jason Baker, et al., CIDR, 2011
書き込み時の挙動 Megastore: Providing Scalable, Highly Available Storage for Interactive Services, Jason Baker, et al., CIDR, 2011
可用性 Megastore: Providing Scalable, Highly Available Storage for Interactive Services, Jason Baker, et al., CIDR, 2011
遅延 Megastore: Providing Scalable, Highly Available Storage for Interactive Services, Jason Baker, et al., CIDR, 2011

Más contenido relacionado

La actualidad más candente

キャバァーン! サツバツエアアイオー弐〇壱弐
キャバァーン! サツバツエアアイオー弐〇壱弐キャバァーン! サツバツエアアイオー弐〇壱弐
キャバァーン! サツバツエアアイオー弐〇壱弐Kei Nakazawa
 
コンテナ時代にインフラエンジニアは何をするのか
コンテナ時代にインフラエンジニアは何をするのかコンテナ時代にインフラエンジニアは何をするのか
コンテナ時代にインフラエンジニアは何をするのかgree_tech
 
AWSとGPUインスタンスのご紹介
AWSとGPUインスタンスのご紹介AWSとGPUインスタンスのご紹介
AWSとGPUインスタンスのご紹介Yasuhiro Matsuo
 
アナザーエデンにおける非同期オートセーブを用いた通信待ちストレスのないゲーム体験の実現
アナザーエデンにおける非同期オートセーブを用いた通信待ちストレスのないゲーム体験の実現アナザーエデンにおける非同期オートセーブを用いた通信待ちストレスのないゲーム体験の実現
アナザーエデンにおける非同期オートセーブを用いた通信待ちストレスのないゲーム体験の実現gree_tech
 
Amazon RDS for PostgreSQL ( JPUG 2014夏セミナー) #jpug
Amazon RDS for PostgreSQL ( JPUG 2014夏セミナー)  #jpugAmazon RDS for PostgreSQL ( JPUG 2014夏セミナー)  #jpug
Amazon RDS for PostgreSQL ( JPUG 2014夏セミナー) #jpugYasuhiro Matsuo
 
Kubernetesでの性能解析 ~なんとなく遅いからの脱却~(Kubernetes Meetup Tokyo #33 発表資料)
Kubernetesでの性能解析 ~なんとなく遅いからの脱却~(Kubernetes Meetup Tokyo #33 発表資料)Kubernetesでの性能解析 ~なんとなく遅いからの脱却~(Kubernetes Meetup Tokyo #33 発表資料)
Kubernetesでの性能解析 ~なんとなく遅いからの脱却~(Kubernetes Meetup Tokyo #33 発表資料)NTT DATA Technology & Innovation
 
20211209 lt runtime_field
20211209 lt runtime_field20211209 lt runtime_field
20211209 lt runtime_fieldNomura Yuta
 
AWS サービスアップデートまとめ re:Invent 2017 直前編
AWS サービスアップデートまとめ re:Invent 2017 直前編AWS サービスアップデートまとめ re:Invent 2017 直前編
AWS サービスアップデートまとめ re:Invent 2017 直前編Amazon Web Services Japan
 
EmbulkのGCS/BigQuery周りのプラグインについて
EmbulkのGCS/BigQuery周りのプラグインについてEmbulkのGCS/BigQuery周りのプラグインについて
EmbulkのGCS/BigQuery周りのプラグインについてSatoshi Akama
 
Fantiaから学ぶgcp運用のノウハウ
Fantiaから学ぶgcp運用のノウハウFantiaから学ぶgcp運用のノウハウ
Fantiaから学ぶgcp運用のノウハウ虎の穴 開発室
 
Embulkを活用したログ管理システム
Embulkを活用したログ管理システムEmbulkを活用したログ管理システム
Embulkを活用したログ管理システムAkihiro Ikezoe
 
ゲームのインフラをAwsで実戦tips全て見せます
ゲームのインフラをAwsで実戦tips全て見せますゲームのインフラをAwsで実戦tips全て見せます
ゲームのインフラをAwsで実戦tips全て見せますinfinite_loop
 
Prometheus at Preferred Networks
Prometheus at Preferred NetworksPrometheus at Preferred Networks
Prometheus at Preferred NetworksPreferred Networks
 
CEDEC2015_OpenStack で運用する Private Cloud の泥臭い(リアル)な話
CEDEC2015_OpenStack で運用する Private Cloud の泥臭い(リアル)な話CEDEC2015_OpenStack で運用する Private Cloud の泥臭い(リアル)な話
CEDEC2015_OpenStack で運用する Private Cloud の泥臭い(リアル)な話gree_tech
 
AI & Deep Learning on AWS at CTO Night&Day 2016 Winter
AI & Deep Learning on AWS at CTO Night&Day 2016 WinterAI & Deep Learning on AWS at CTO Night&Day 2016 Winter
AI & Deep Learning on AWS at CTO Night&Day 2016 WinterYasuhiro Matsuo
 
20171109 Amazon EC2 GPUインスタンス最新動向 P3 instance
20171109 Amazon EC2 GPUインスタンス最新動向 P3 instance20171109 Amazon EC2 GPUインスタンス最新動向 P3 instance
20171109 Amazon EC2 GPUインスタンス最新動向 P3 instanceAmazon Web Services Japan
 
IBM SoftLayer @ Osc tokyo-2014-fall
IBM SoftLayer @ Osc tokyo-2014-fallIBM SoftLayer @ Osc tokyo-2014-fall
IBM SoftLayer @ Osc tokyo-2014-fallYasushi Osonoi
 
Mackerel & Norikra mackerel meetup #4 LT
Mackerel & Norikra mackerel meetup #4 LTMackerel & Norikra mackerel meetup #4 LT
Mackerel & Norikra mackerel meetup #4 LTMasahiro Nagano
 
Grafana Dashboards as Code
Grafana Dashboards as CodeGrafana Dashboards as Code
Grafana Dashboards as CodeTakuhiro Yoshida
 

La actualidad más candente (20)

キャバァーン! サツバツエアアイオー弐〇壱弐
キャバァーン! サツバツエアアイオー弐〇壱弐キャバァーン! サツバツエアアイオー弐〇壱弐
キャバァーン! サツバツエアアイオー弐〇壱弐
 
コンテナ時代にインフラエンジニアは何をするのか
コンテナ時代にインフラエンジニアは何をするのかコンテナ時代にインフラエンジニアは何をするのか
コンテナ時代にインフラエンジニアは何をするのか
 
AWSとGPUインスタンスのご紹介
AWSとGPUインスタンスのご紹介AWSとGPUインスタンスのご紹介
AWSとGPUインスタンスのご紹介
 
アナザーエデンにおける非同期オートセーブを用いた通信待ちストレスのないゲーム体験の実現
アナザーエデンにおける非同期オートセーブを用いた通信待ちストレスのないゲーム体験の実現アナザーエデンにおける非同期オートセーブを用いた通信待ちストレスのないゲーム体験の実現
アナザーエデンにおける非同期オートセーブを用いた通信待ちストレスのないゲーム体験の実現
 
Amazon RDS for PostgreSQL ( JPUG 2014夏セミナー) #jpug
Amazon RDS for PostgreSQL ( JPUG 2014夏セミナー)  #jpugAmazon RDS for PostgreSQL ( JPUG 2014夏セミナー)  #jpug
Amazon RDS for PostgreSQL ( JPUG 2014夏セミナー) #jpug
 
Kubernetesでの性能解析 ~なんとなく遅いからの脱却~(Kubernetes Meetup Tokyo #33 発表資料)
Kubernetesでの性能解析 ~なんとなく遅いからの脱却~(Kubernetes Meetup Tokyo #33 発表資料)Kubernetesでの性能解析 ~なんとなく遅いからの脱却~(Kubernetes Meetup Tokyo #33 発表資料)
Kubernetesでの性能解析 ~なんとなく遅いからの脱却~(Kubernetes Meetup Tokyo #33 発表資料)
 
20211209 lt runtime_field
20211209 lt runtime_field20211209 lt runtime_field
20211209 lt runtime_field
 
AWS サービスアップデートまとめ re:Invent 2017 直前編
AWS サービスアップデートまとめ re:Invent 2017 直前編AWS サービスアップデートまとめ re:Invent 2017 直前編
AWS サービスアップデートまとめ re:Invent 2017 直前編
 
EmbulkのGCS/BigQuery周りのプラグインについて
EmbulkのGCS/BigQuery周りのプラグインについてEmbulkのGCS/BigQuery周りのプラグインについて
EmbulkのGCS/BigQuery周りのプラグインについて
 
Fantiaから学ぶgcp運用のノウハウ
Fantiaから学ぶgcp運用のノウハウFantiaから学ぶgcp運用のノウハウ
Fantiaから学ぶgcp運用のノウハウ
 
Embulkを活用したログ管理システム
Embulkを活用したログ管理システムEmbulkを活用したログ管理システム
Embulkを活用したログ管理システム
 
ゲームのインフラをAwsで実戦tips全て見せます
ゲームのインフラをAwsで実戦tips全て見せますゲームのインフラをAwsで実戦tips全て見せます
ゲームのインフラをAwsで実戦tips全て見せます
 
Prometheus at Preferred Networks
Prometheus at Preferred NetworksPrometheus at Preferred Networks
Prometheus at Preferred Networks
 
CEDEC2015_OpenStack で運用する Private Cloud の泥臭い(リアル)な話
CEDEC2015_OpenStack で運用する Private Cloud の泥臭い(リアル)な話CEDEC2015_OpenStack で運用する Private Cloud の泥臭い(リアル)な話
CEDEC2015_OpenStack で運用する Private Cloud の泥臭い(リアル)な話
 
AI & Deep Learning on AWS at CTO Night&Day 2016 Winter
AI & Deep Learning on AWS at CTO Night&Day 2016 WinterAI & Deep Learning on AWS at CTO Night&Day 2016 Winter
AI & Deep Learning on AWS at CTO Night&Day 2016 Winter
 
Aurora
AuroraAurora
Aurora
 
20171109 Amazon EC2 GPUインスタンス最新動向 P3 instance
20171109 Amazon EC2 GPUインスタンス最新動向 P3 instance20171109 Amazon EC2 GPUインスタンス最新動向 P3 instance
20171109 Amazon EC2 GPUインスタンス最新動向 P3 instance
 
IBM SoftLayer @ Osc tokyo-2014-fall
IBM SoftLayer @ Osc tokyo-2014-fallIBM SoftLayer @ Osc tokyo-2014-fall
IBM SoftLayer @ Osc tokyo-2014-fall
 
Mackerel & Norikra mackerel meetup #4 LT
Mackerel & Norikra mackerel meetup #4 LTMackerel & Norikra mackerel meetup #4 LT
Mackerel & Norikra mackerel meetup #4 LT
 
Grafana Dashboards as Code
Grafana Dashboards as CodeGrafana Dashboards as Code
Grafana Dashboards as Code
 

Destacado

[C16] インメモリ分散KVSの弱点。一貫性が崩れる原因と、それを克服する技術とは? by Taichi Umeda
[C16] インメモリ分散KVSの弱点。一貫性が崩れる原因と、それを克服する技術とは? by Taichi Umeda[C16] インメモリ分散KVSの弱点。一貫性が崩れる原因と、それを克服する技術とは? by Taichi Umeda
[C16] インメモリ分散KVSの弱点。一貫性が崩れる原因と、それを克服する技術とは? by Taichi UmedaInsight Technology, Inc.
 
the Paxos Commit algorithm
the Paxos Commit algorithmthe Paxos Commit algorithm
the Paxos Commit algorithmpaolos84
 
LT on Python Hackathon #2
LT on Python Hackathon #2LT on Python Hackathon #2
LT on Python Hackathon #2UENISHI Kota
 
TEW4 Yatce deprecated slides
TEW4 Yatce deprecated slidesTEW4 Yatce deprecated slides
TEW4 Yatce deprecated slidesUENISHI Kota
 
VLDB 2009 Tutorial on Column-Stores
VLDB 2009 Tutorial on Column-StoresVLDB 2009 Tutorial on Column-Stores
VLDB 2009 Tutorial on Column-StoresDaniel Abadi
 
【17-C-1】 Big Data を扱うアーキテクチャーの原則
【17-C-1】 Big Data を扱うアーキテクチャーの原則【17-C-1】 Big Data を扱うアーキテクチャーの原則
【17-C-1】 Big Data を扱うアーキテクチャーの原則Masayoshi Hagiwara
 
業務系SEの今後について
業務系SEの今後について業務系SEの今後について
業務系SEの今後についてTakashi Kambayashi
 
クラウドを支える基盤技術の最新動向と今後の方向性
クラウドを支える基盤技術の最新動向と今後の方向性クラウドを支える基盤技術の最新動向と今後の方向性
クラウドを支える基盤技術の最新動向と今後の方向性Masayoshi Hagiwara
 
Asakusa Enterprise Batch Processing Framework for Hadoop
Asakusa Enterprise Batch Processing Framework for HadoopAsakusa Enterprise Batch Processing Framework for Hadoop
Asakusa Enterprise Batch Processing Framework for HadoopTakashi Kambayashi
 
A critique of ansi sql isolation levels 解説公開用
A critique of ansi sql isolation levels 解説公開用A critique of ansi sql isolation levels 解説公開用
A critique of ansi sql isolation levels 解説公開用Takashi Kambayashi
 
Transactional Information Systems入門
Transactional Information Systems入門Transactional Information Systems入門
Transactional Information Systems入門nobu_k
 
Goraft and InfluxDB
Goraft and InfluxDBGoraft and InfluxDB
Goraft and InfluxDBnobu_k
 
クラウド分散システム処理モデルの遷移およびその展望 #devsumi
クラウド分散システム処理モデルの遷移およびその展望 #devsumiクラウド分散システム処理モデルの遷移およびその展望 #devsumi
クラウド分散システム処理モデルの遷移およびその展望 #devsumiYahoo!デベロッパーネットワーク
 
[db tech showcase Tokyo 2016] A25: ACIDトランザクションをサポートするエンタープライズ向けNoSQL Databas...
[db tech showcase Tokyo 2016] A25: ACIDトランザクションをサポートするエンタープライズ向けNoSQL Databas...[db tech showcase Tokyo 2016] A25: ACIDトランザクションをサポートするエンタープライズ向けNoSQL Databas...
[db tech showcase Tokyo 2016] A25: ACIDトランザクションをサポートするエンタープライズ向けNoSQL Databas...Insight Technology, Inc.
 
最新のデータベース技術の方向性で思うこと
最新のデータベース技術の方向性で思うこと最新のデータベース技術の方向性で思うこと
最新のデータベース技術の方向性で思うことMasayoshi Hagiwara
 
[db tech showcase Tokyo 2016] B15: サイバーエージェント アドテクスタジオの次世代データ分析基盤紹介 by 株式会社サイ...
[db tech showcase Tokyo 2016] B15: サイバーエージェント アドテクスタジオの次世代データ分析基盤紹介 by 株式会社サイ...[db tech showcase Tokyo 2016] B15: サイバーエージェント アドテクスタジオの次世代データ分析基盤紹介 by 株式会社サイ...
[db tech showcase Tokyo 2016] B15: サイバーエージェント アドテクスタジオの次世代データ分析基盤紹介 by 株式会社サイ...Insight Technology, Inc.
 
大規模分散システムの現在 -- Twitter
大規模分散システムの現在 -- Twitter大規模分散システムの現在 -- Twitter
大規模分散システムの現在 -- Twittermaruyama097
 

Destacado (20)

[C16] インメモリ分散KVSの弱点。一貫性が崩れる原因と、それを克服する技術とは? by Taichi Umeda
[C16] インメモリ分散KVSの弱点。一貫性が崩れる原因と、それを克服する技術とは? by Taichi Umeda[C16] インメモリ分散KVSの弱点。一貫性が崩れる原因と、それを克服する技術とは? by Taichi Umeda
[C16] インメモリ分散KVSの弱点。一貫性が崩れる原因と、それを克服する技術とは? by Taichi Umeda
 
the Paxos Commit algorithm
the Paxos Commit algorithmthe Paxos Commit algorithm
the Paxos Commit algorithm
 
Paxos
PaxosPaxos
Paxos
 
Raft
RaftRaft
Raft
 
LT on Python Hackathon #2
LT on Python Hackathon #2LT on Python Hackathon #2
LT on Python Hackathon #2
 
TEW4 Yatce deprecated slides
TEW4 Yatce deprecated slidesTEW4 Yatce deprecated slides
TEW4 Yatce deprecated slides
 
VLDB 2009 Tutorial on Column-Stores
VLDB 2009 Tutorial on Column-StoresVLDB 2009 Tutorial on Column-Stores
VLDB 2009 Tutorial on Column-Stores
 
【17-C-1】 Big Data を扱うアーキテクチャーの原則
【17-C-1】 Big Data を扱うアーキテクチャーの原則【17-C-1】 Big Data を扱うアーキテクチャーの原則
【17-C-1】 Big Data を扱うアーキテクチャーの原則
 
業務系SEの今後について
業務系SEの今後について業務系SEの今後について
業務系SEの今後について
 
クラウドを支える基盤技術の最新動向と今後の方向性
クラウドを支える基盤技術の最新動向と今後の方向性クラウドを支える基盤技術の最新動向と今後の方向性
クラウドを支える基盤技術の最新動向と今後の方向性
 
Asakusa Enterprise Batch Processing Framework for Hadoop
Asakusa Enterprise Batch Processing Framework for HadoopAsakusa Enterprise Batch Processing Framework for Hadoop
Asakusa Enterprise Batch Processing Framework for Hadoop
 
A critique of ansi sql isolation levels 解説公開用
A critique of ansi sql isolation levels 解説公開用A critique of ansi sql isolation levels 解説公開用
A critique of ansi sql isolation levels 解説公開用
 
gen_paxos
gen_paxosgen_paxos
gen_paxos
 
Transactional Information Systems入門
Transactional Information Systems入門Transactional Information Systems入門
Transactional Information Systems入門
 
Goraft and InfluxDB
Goraft and InfluxDBGoraft and InfluxDB
Goraft and InfluxDB
 
クラウド分散システム処理モデルの遷移およびその展望 #devsumi
クラウド分散システム処理モデルの遷移およびその展望 #devsumiクラウド分散システム処理モデルの遷移およびその展望 #devsumi
クラウド分散システム処理モデルの遷移およびその展望 #devsumi
 
[db tech showcase Tokyo 2016] A25: ACIDトランザクションをサポートするエンタープライズ向けNoSQL Databas...
[db tech showcase Tokyo 2016] A25: ACIDトランザクションをサポートするエンタープライズ向けNoSQL Databas...[db tech showcase Tokyo 2016] A25: ACIDトランザクションをサポートするエンタープライズ向けNoSQL Databas...
[db tech showcase Tokyo 2016] A25: ACIDトランザクションをサポートするエンタープライズ向けNoSQL Databas...
 
最新のデータベース技術の方向性で思うこと
最新のデータベース技術の方向性で思うこと最新のデータベース技術の方向性で思うこと
最新のデータベース技術の方向性で思うこと
 
[db tech showcase Tokyo 2016] B15: サイバーエージェント アドテクスタジオの次世代データ分析基盤紹介 by 株式会社サイ...
[db tech showcase Tokyo 2016] B15: サイバーエージェント アドテクスタジオの次世代データ分析基盤紹介 by 株式会社サイ...[db tech showcase Tokyo 2016] B15: サイバーエージェント アドテクスタジオの次世代データ分析基盤紹介 by 株式会社サイ...
[db tech showcase Tokyo 2016] B15: サイバーエージェント アドテクスタジオの次世代データ分析基盤紹介 by 株式会社サイ...
 
大規模分散システムの現在 -- Twitter
大規模分散システムの現在 -- Twitter大規模分散システムの現在 -- Twitter
大規模分散システムの現在 -- Twitter
 

Similar a paxos and megastore

20121205 nosql(okuyama fs)セミナー資料
20121205 nosql(okuyama fs)セミナー資料20121205 nosql(okuyama fs)セミナー資料
20121205 nosql(okuyama fs)セミナー資料Takahiro Iwase
 
MBAAで覚えるDBREの大事なおしごと
MBAAで覚えるDBREの大事なおしごとMBAAで覚えるDBREの大事なおしごと
MBAAで覚えるDBREの大事なおしごとInsight Technology, Inc.
 
Japan elasticusergroup01 Acroquest
Japan elasticusergroup01 AcroquestJapan elasticusergroup01 Acroquest
Japan elasticusergroup01 AcroquestHiroshi Yoshioka
 
AZAREA-Clusterセミナー(クラウドEXPO2013春)
AZAREA-Clusterセミナー(クラウドEXPO2013春)AZAREA-Clusterセミナー(クラウドEXPO2013春)
AZAREA-Clusterセミナー(クラウドEXPO2013春)AzareaCluster
 
UNICORNの機械学習ワークロードにおけるSpot&AWS Batchの活用
UNICORNの機械学習ワークロードにおけるSpot&AWS Batchの活用UNICORNの機械学習ワークロードにおけるSpot&AWS Batchの活用
UNICORNの機械学習ワークロードにおけるSpot&AWS Batchの活用Inoue Seki
 
[Aws]database migration seminar_20191008
[Aws]database migration seminar_20191008[Aws]database migration seminar_20191008
[Aws]database migration seminar_20191008Toru Kimura
 
しばちょう先生が語る!オラクルデータベースの進化の歴史と最新技術動向#2
しばちょう先生が語る!オラクルデータベースの進化の歴史と最新技術動向#2しばちょう先生が語る!オラクルデータベースの進化の歴史と最新技術動向#2
しばちょう先生が語る!オラクルデータベースの進化の歴史と最新技術動向#2オラクルエンジニア通信
 
Docker ホスティングサービス 'Arukas' での Mesos + Marathon の活用について(Mesos勉強会)
Docker ホスティングサービス 'Arukas' での Mesos + Marathon の活用について(Mesos勉強会)Docker ホスティングサービス 'Arukas' での Mesos + Marathon の活用について(Mesos勉強会)
Docker ホスティングサービス 'Arukas' での Mesos + Marathon の活用について(Mesos勉強会)さくらインターネット株式会社
 
楽天における大規模データベースの運用
楽天における大規模データベースの運用楽天における大規模データベースの運用
楽天における大規模データベースの運用Rakuten Group, Inc.
 
Apm enables python app observability
Apm enables python app observabilityApm enables python app observability
Apm enables python app observabilityShotaro Suzuki
 
[db tech showcase Tokyo 2014] C31: PostgreSQLをエンタープライズシステムで利用しよう by PostgreS...
[db tech showcase Tokyo 2014] C31: PostgreSQLをエンタープライズシステムで利用しよう  by PostgreS...[db tech showcase Tokyo 2014] C31: PostgreSQLをエンタープライズシステムで利用しよう  by PostgreS...
[db tech showcase Tokyo 2014] C31: PostgreSQLをエンタープライズシステムで利用しよう by PostgreS...Insight Technology, Inc.
 
AWS を活用して小さなチームで 世界で使われるサービスを運用する方法 - JAWS Days 2013
AWS を活用して小さなチームで 世界で使われるサービスを運用する方法 - JAWS Days 2013AWS を活用して小さなチームで 世界で使われるサービスを運用する方法 - JAWS Days 2013
AWS を活用して小さなチームで 世界で使われるサービスを運用する方法 - JAWS Days 2013Takashi Someda
 
タクシードライブレコーダーの動画処理MLパイプラインにkubernetesを使ってみた
タクシードライブレコーダーの動画処理MLパイプラインにkubernetesを使ってみたタクシードライブレコーダーの動画処理MLパイプラインにkubernetesを使ってみた
タクシードライブレコーダーの動画処理MLパイプラインにkubernetesを使ってみたTetsutaro Watanabe
 
AWSでGPUも安く大量に使い倒せ
AWSでGPUも安く大量に使い倒せ AWSでGPUも安く大量に使い倒せ
AWSでGPUも安く大量に使い倒せ Yasuhiro Matsuo
 
AWSでアプリ開発するなら 知っておくべこと
AWSでアプリ開発するなら 知っておくべことAWSでアプリ開発するなら 知っておくべこと
AWSでアプリ開発するなら 知っておくべことKeisuke Nishitani
 
東北クラウド実践カンファレンス2011
東北クラウド実践カンファレンス2011東北クラウド実践カンファレンス2011
東北クラウド実践カンファレンス2011Shinichiro Isago
 
オープンソースで構築するWebメタバース ~Mozilla Hubsで学ぶUX開発から運用コスト最小化まで #CEDEC2022
オープンソースで構築するWebメタバース ~Mozilla Hubsで学ぶUX開発から運用コスト最小化まで #CEDEC2022オープンソースで構築するWebメタバース ~Mozilla Hubsで学ぶUX開発から運用コスト最小化まで #CEDEC2022
オープンソースで構築するWebメタバース ~Mozilla Hubsで学ぶUX開発から運用コスト最小化まで #CEDEC2022GREE VR Studio Lab
 
Azure 高速サイトソリューション
Azure 高速サイトソリューションAzure 高速サイトソリューション
Azure 高速サイトソリューションHiromasa Oka
 

Similar a paxos and megastore (20)

Spring Boot on Kubernetes : Yahoo!ズバトク事例 #jjug_ccc
Spring Boot on Kubernetes : Yahoo!ズバトク事例 #jjug_cccSpring Boot on Kubernetes : Yahoo!ズバトク事例 #jjug_ccc
Spring Boot on Kubernetes : Yahoo!ズバトク事例 #jjug_ccc
 
20121205 nosql(okuyama fs)セミナー資料
20121205 nosql(okuyama fs)セミナー資料20121205 nosql(okuyama fs)セミナー資料
20121205 nosql(okuyama fs)セミナー資料
 
MBAAで覚えるDBREの大事なおしごと
MBAAで覚えるDBREの大事なおしごとMBAAで覚えるDBREの大事なおしごと
MBAAで覚えるDBREの大事なおしごと
 
Japan elasticusergroup01 Acroquest
Japan elasticusergroup01 AcroquestJapan elasticusergroup01 Acroquest
Japan elasticusergroup01 Acroquest
 
AZAREA-Clusterセミナー(クラウドEXPO2013春)
AZAREA-Clusterセミナー(クラウドEXPO2013春)AZAREA-Clusterセミナー(クラウドEXPO2013春)
AZAREA-Clusterセミナー(クラウドEXPO2013春)
 
UNICORNの機械学習ワークロードにおけるSpot&AWS Batchの活用
UNICORNの機械学習ワークロードにおけるSpot&AWS Batchの活用UNICORNの機械学習ワークロードにおけるSpot&AWS Batchの活用
UNICORNの機械学習ワークロードにおけるSpot&AWS Batchの活用
 
[Aws]database migration seminar_20191008
[Aws]database migration seminar_20191008[Aws]database migration seminar_20191008
[Aws]database migration seminar_20191008
 
しばちょう先生が語る!オラクルデータベースの進化の歴史と最新技術動向#2
しばちょう先生が語る!オラクルデータベースの進化の歴史と最新技術動向#2しばちょう先生が語る!オラクルデータベースの進化の歴史と最新技術動向#2
しばちょう先生が語る!オラクルデータベースの進化の歴史と最新技術動向#2
 
Docker ホスティングサービス 'Arukas' での Mesos + Marathon の活用について(Mesos勉強会)
Docker ホスティングサービス 'Arukas' での Mesos + Marathon の活用について(Mesos勉強会)Docker ホスティングサービス 'Arukas' での Mesos + Marathon の活用について(Mesos勉強会)
Docker ホスティングサービス 'Arukas' での Mesos + Marathon の活用について(Mesos勉強会)
 
楽天における大規模データベースの運用
楽天における大規模データベースの運用楽天における大規模データベースの運用
楽天における大規模データベースの運用
 
Apm enables python app observability
Apm enables python app observabilityApm enables python app observability
Apm enables python app observability
 
Apache geode at-s1p
Apache geode at-s1pApache geode at-s1p
Apache geode at-s1p
 
[db tech showcase Tokyo 2014] C31: PostgreSQLをエンタープライズシステムで利用しよう by PostgreS...
[db tech showcase Tokyo 2014] C31: PostgreSQLをエンタープライズシステムで利用しよう  by PostgreS...[db tech showcase Tokyo 2014] C31: PostgreSQLをエンタープライズシステムで利用しよう  by PostgreS...
[db tech showcase Tokyo 2014] C31: PostgreSQLをエンタープライズシステムで利用しよう by PostgreS...
 
AWS を活用して小さなチームで 世界で使われるサービスを運用する方法 - JAWS Days 2013
AWS を活用して小さなチームで 世界で使われるサービスを運用する方法 - JAWS Days 2013AWS を活用して小さなチームで 世界で使われるサービスを運用する方法 - JAWS Days 2013
AWS を活用して小さなチームで 世界で使われるサービスを運用する方法 - JAWS Days 2013
 
タクシードライブレコーダーの動画処理MLパイプラインにkubernetesを使ってみた
タクシードライブレコーダーの動画処理MLパイプラインにkubernetesを使ってみたタクシードライブレコーダーの動画処理MLパイプラインにkubernetesを使ってみた
タクシードライブレコーダーの動画処理MLパイプラインにkubernetesを使ってみた
 
AWSでGPUも安く大量に使い倒せ
AWSでGPUも安く大量に使い倒せ AWSでGPUも安く大量に使い倒せ
AWSでGPUも安く大量に使い倒せ
 
AWSでアプリ開発するなら 知っておくべこと
AWSでアプリ開発するなら 知っておくべことAWSでアプリ開発するなら 知っておくべこと
AWSでアプリ開発するなら 知っておくべこと
 
東北クラウド実践カンファレンス2011
東北クラウド実践カンファレンス2011東北クラウド実践カンファレンス2011
東北クラウド実践カンファレンス2011
 
オープンソースで構築するWebメタバース ~Mozilla Hubsで学ぶUX開発から運用コスト最小化まで #CEDEC2022
オープンソースで構築するWebメタバース ~Mozilla Hubsで学ぶUX開発から運用コスト最小化まで #CEDEC2022オープンソースで構築するWebメタバース ~Mozilla Hubsで学ぶUX開発から運用コスト最小化まで #CEDEC2022
オープンソースで構築するWebメタバース ~Mozilla Hubsで学ぶUX開発から運用コスト最小化まで #CEDEC2022
 
Azure 高速サイトソリューション
Azure 高速サイトソリューションAzure 高速サイトソリューション
Azure 高速サイトソリューション
 

Último

[DevOpsDays Tokyo 2024] 〜デジタルとアナログのはざまに〜 スマートビルディング爆速開発を支える 自動化テスト戦略
[DevOpsDays Tokyo 2024] 〜デジタルとアナログのはざまに〜 スマートビルディング爆速開発を支える 自動化テスト戦略[DevOpsDays Tokyo 2024] 〜デジタルとアナログのはざまに〜 スマートビルディング爆速開発を支える 自動化テスト戦略
[DevOpsDays Tokyo 2024] 〜デジタルとアナログのはざまに〜 スマートビルディング爆速開発を支える 自動化テスト戦略Ryo Sasaki
 
論文紹介:Semantic segmentation using Vision Transformers: A survey
論文紹介:Semantic segmentation using Vision Transformers: A survey論文紹介:Semantic segmentation using Vision Transformers: A survey
論文紹介:Semantic segmentation using Vision Transformers: A surveyToru Tamaki
 
SOPを理解する 2024/04/19 の勉強会で発表されたものです
SOPを理解する       2024/04/19 の勉強会で発表されたものですSOPを理解する       2024/04/19 の勉強会で発表されたものです
SOPを理解する 2024/04/19 の勉強会で発表されたものですiPride Co., Ltd.
 
Open Source UN-Conference 2024 Kawagoe - 独自OS「DaisyOS GB」の紹介
Open Source UN-Conference 2024 Kawagoe - 独自OS「DaisyOS GB」の紹介Open Source UN-Conference 2024 Kawagoe - 独自OS「DaisyOS GB」の紹介
Open Source UN-Conference 2024 Kawagoe - 独自OS「DaisyOS GB」の紹介Yuma Ohgami
 
論文紹介:Content-Aware Token Sharing for Efficient Semantic Segmentation With Vis...
論文紹介:Content-Aware Token Sharing for Efficient Semantic Segmentation With Vis...論文紹介:Content-Aware Token Sharing for Efficient Semantic Segmentation With Vis...
論文紹介:Content-Aware Token Sharing for Efficient Semantic Segmentation With Vis...Toru Tamaki
 
Postman LT Fukuoka_Quick Prototype_By Daniel
Postman LT Fukuoka_Quick Prototype_By DanielPostman LT Fukuoka_Quick Prototype_By Daniel
Postman LT Fukuoka_Quick Prototype_By Danieldanielhu54
 
スマートフォンを用いた新生児あやし動作の教示システム
スマートフォンを用いた新生児あやし動作の教示システムスマートフォンを用いた新生児あやし動作の教示システム
スマートフォンを用いた新生児あやし動作の教示システムsugiuralab
 
TSAL operation mechanism and circuit diagram.pdf
TSAL operation mechanism and circuit diagram.pdfTSAL operation mechanism and circuit diagram.pdf
TSAL operation mechanism and circuit diagram.pdftaisei2219
 
論文紹介:Automated Classification of Model Errors on ImageNet
論文紹介:Automated Classification of Model Errors on ImageNet論文紹介:Automated Classification of Model Errors on ImageNet
論文紹介:Automated Classification of Model Errors on ImageNetToru Tamaki
 
【早稲田AI研究会 講義資料】3DスキャンとTextTo3Dのツールを知ろう!(Vol.1)
【早稲田AI研究会 講義資料】3DスキャンとTextTo3Dのツールを知ろう!(Vol.1)【早稲田AI研究会 講義資料】3DスキャンとTextTo3Dのツールを知ろう!(Vol.1)
【早稲田AI研究会 講義資料】3DスキャンとTextTo3Dのツールを知ろう!(Vol.1)Hiroki Ichikura
 

Último (10)

[DevOpsDays Tokyo 2024] 〜デジタルとアナログのはざまに〜 スマートビルディング爆速開発を支える 自動化テスト戦略
[DevOpsDays Tokyo 2024] 〜デジタルとアナログのはざまに〜 スマートビルディング爆速開発を支える 自動化テスト戦略[DevOpsDays Tokyo 2024] 〜デジタルとアナログのはざまに〜 スマートビルディング爆速開発を支える 自動化テスト戦略
[DevOpsDays Tokyo 2024] 〜デジタルとアナログのはざまに〜 スマートビルディング爆速開発を支える 自動化テスト戦略
 
論文紹介:Semantic segmentation using Vision Transformers: A survey
論文紹介:Semantic segmentation using Vision Transformers: A survey論文紹介:Semantic segmentation using Vision Transformers: A survey
論文紹介:Semantic segmentation using Vision Transformers: A survey
 
SOPを理解する 2024/04/19 の勉強会で発表されたものです
SOPを理解する       2024/04/19 の勉強会で発表されたものですSOPを理解する       2024/04/19 の勉強会で発表されたものです
SOPを理解する 2024/04/19 の勉強会で発表されたものです
 
Open Source UN-Conference 2024 Kawagoe - 独自OS「DaisyOS GB」の紹介
Open Source UN-Conference 2024 Kawagoe - 独自OS「DaisyOS GB」の紹介Open Source UN-Conference 2024 Kawagoe - 独自OS「DaisyOS GB」の紹介
Open Source UN-Conference 2024 Kawagoe - 独自OS「DaisyOS GB」の紹介
 
論文紹介:Content-Aware Token Sharing for Efficient Semantic Segmentation With Vis...
論文紹介:Content-Aware Token Sharing for Efficient Semantic Segmentation With Vis...論文紹介:Content-Aware Token Sharing for Efficient Semantic Segmentation With Vis...
論文紹介:Content-Aware Token Sharing for Efficient Semantic Segmentation With Vis...
 
Postman LT Fukuoka_Quick Prototype_By Daniel
Postman LT Fukuoka_Quick Prototype_By DanielPostman LT Fukuoka_Quick Prototype_By Daniel
Postman LT Fukuoka_Quick Prototype_By Daniel
 
スマートフォンを用いた新生児あやし動作の教示システム
スマートフォンを用いた新生児あやし動作の教示システムスマートフォンを用いた新生児あやし動作の教示システム
スマートフォンを用いた新生児あやし動作の教示システム
 
TSAL operation mechanism and circuit diagram.pdf
TSAL operation mechanism and circuit diagram.pdfTSAL operation mechanism and circuit diagram.pdf
TSAL operation mechanism and circuit diagram.pdf
 
論文紹介:Automated Classification of Model Errors on ImageNet
論文紹介:Automated Classification of Model Errors on ImageNet論文紹介:Automated Classification of Model Errors on ImageNet
論文紹介:Automated Classification of Model Errors on ImageNet
 
【早稲田AI研究会 講義資料】3DスキャンとTextTo3Dのツールを知ろう!(Vol.1)
【早稲田AI研究会 講義資料】3DスキャンとTextTo3Dのツールを知ろう!(Vol.1)【早稲田AI研究会 講義資料】3DスキャンとTextTo3Dのツールを知ろう!(Vol.1)
【早稲田AI研究会 講義資料】3DスキャンとTextTo3Dのツールを知ろう!(Vol.1)
 

paxos and megastore