SlideShare una empresa de Scribd logo
1 de 84
Descargar para leer sin conexión
© Hitachi, Ltd. 2013. All rights reserved.
株式会社 日立製作所 情報・通信システム社
スプリットブレインになっても
一貫性を保証する
インメモリデータグリッド製品
ITプラットフォーム事業本部 開発統括本部
2013/05/30
梅田多一
db tech showcase 大阪 2013
© Hitachi, Ltd. 2013. All rights reserved.
自己紹介
© Hitachi, Ltd. 2013. All rights reserved. 2
DB Online
http://enterprisezine.jp/dbonline/detail/3991
2000年入社
・Cosminexus開発
・Cosminexusテクニカルサポート
仕事のスタイル
・TTP
・GNN
© Hitachi, Ltd. 2013. All rights reserved.
インメモリデータグリッドって何だ?
Contents
インメモリデータグリッドの要素技術
強一貫性への挑戦!
スプリットブレインになっても一貫性を保証するインメモリデータグリッド製品
© Hitachi, Ltd. 2013. All rights reserved.
インメモリデータグリッドって
何だ?
スプリットブレインになっても一貫性を保証するインメモリデータグリッド製品
© Hitachi, Ltd. 2013. All rights reserved. 5
インメモリデータグリッドって何だ?
登場の背景
© Hitachi, Ltd. 2013. All rights reserved. 6
登場の背景
・発信データの爆発的増加(Big Data)
・データを扱うミドルウェアへの要件として
大量発信データの高速処理、リアルタイム分析、大量蓄積データの高速検索、、
・インメモリデータグリッド、複合イベント処理、超高速DB、、
Big Data
モノ の発信
人 の発信
電力メーター
運行情報
カーナビ
GPS
監視映像
環境・気象データ
設備監視
物流トレース
ICカード利用
診断画像・
電子カルテ
データベース
メール・オフィス文書
つぶやき
SNS
通話ログ
スマートフォン
人の移動
ネット購入
コンテンツダウンロード
動画・画像・音声
© Hitachi, Ltd. 2013. All rights reserved. 7
日立の取り組み
インメモリデータグリッドって何だ?
© Hitachi, Ltd. 2013. All rights reserved. 8
日立の取り組み
①uCosminexus Elastic Application Data store(以下EADs)(C22)
②uCosminexus Stream Data Platform(B14)
③Hitachi Advanced Data Binder プラットフォーム(D24)
現場の状況をいち早く把握
問題の解決
新たな価値の提供
データ
修理指示
売り場への指示
データ
③大量蓄積データの高速検索
①大量発信データの高速処理
②大量発信データのリアルタイム分析
© Hitachi, Ltd. 2013. All rights reserved. 9
インメモリデータグリッドって何だ?
日立の案件
© Hitachi, Ltd. 2013. All rights reserved. 10
日立の案件(電力)
工場
オフィス
戸建
検針値
1日分
スマートメータ
収集サーバから出力される大量の検針値(30分値)を、
一定期間(40日)分DBに格納したい。
大量の検針値を
高速に受信
当日分メモリ保持、日次ジョブ実行による
一日分ファイル出力、一括DBロード
© Hitachi, Ltd. 2013. All rights reserved. 11
日立の案件(通信)
メディエーション
交換機から出力される大量のRawCDRを、
課金システムや帯域制御システム向けのCDRに編集したい。
RawCDR
CDR
RawCDR:
接続開始/一定時間経過/HO発生/接続終了などのタイミングで出力される、
接続ID、接続時間、通信量などの情報。
CDR:
同一の接続に対する分割情報であるRawCDRを結合(通信量の合算など)した情報。
大量の接続情報を
高速に受信
同一接続のデータ集合を
イベントドリブンに編集
© Hitachi, Ltd. 2013. All rights reserved. 12
インメモリデータグリッドって何だ?
インメモリデータグリッドの
3つの特徴
© Hitachi, Ltd. 2013. All rights reserved. 13
インメモリデータグリッドの3つの特徴
①インメモリKVSである
© Hitachi, Ltd. 2013. All rights reserved. 14
インメモリデータグリッドの3つの特徴
①インメモリKVS*である
・一意に識別可能な「キー」とそれに対応する「値」
で構成されるデータを保持するインメモリストア
・レスポンス性能
* KVS: Key Value Store
Application Server インメモリKVS
Key Value
Foo A
Bar 0
Baz A,0
© Hitachi, Ltd. 2013. All rights reserved. 15
インメモリデータグリッドの3つの特徴
②分散している
© Hitachi, Ltd. 2013. All rights reserved. 16
インメモリデータグリッドの3つの特徴
②分散している
・複数サーバのメモリ上にデータを分散配置
・スループット性能と拡張性
Key Value
Foo A
Bar 0
Key Value
Baz A,0
Application Server
インメモリ分散KVS
© Hitachi, Ltd. 2013. All rights reserved. 17
インメモリデータグリッドの3つの特徴
③実行できる
© Hitachi, Ltd. 2013. All rights reserved. 18
インメモリデータグリッドの3つの特徴
③実行できる
・同時に使うデータを同じ場所に格納する(Grouping*)
・ユーザロジックの分散実行(Distributed Code Execution*)
・ネットワークトラフィックの削減とCPUの活用
* JSR 347: Data Grids for the JavaTM Platform
Key Value
G1:Foo A
G1:Bar 0
G1:Baz A,0
Key Value
G2:Foo B
G2:Bar 1
G2:Baz B,1
Application Server
インメモリデータグリッド
グループ処理
ユーザロジック
© Hitachi, Ltd. 2013. All rights reserved. 19
まとめ
インメモリデータグリッドって何だ?
© Hitachi, Ltd. 2013. All rights reserved. 20
大量発信データの高速処理(レスポンス、スループット、スケールアウト)
を実現するために以下の特徴を持つもの
・インメモリKVSである
・分散している
・実行できる
インメモリデータグリッドって何だ?
© Hitachi, Ltd. 2013. All rights reserved.
インメモリデータグリッドの
要素技術
(分散基盤編 )
スプリットブレインになっても一貫性を保証するインメモリデータグリッド製品
© Hitachi, Ltd. 2013. All rights reserved. 22
インメモリデータグリッドの要素技術
コンシステントハッシング
~分散の技術~
© Hitachi, Ltd. 2013. All rights reserved. 23
コンシステントハッシング
・サーバは232の範囲に等分配置
・Keyのハッシュ値からマスタの保存先を決定
EADs Tool
231-1 | -231
Put Foo A
レンジHash(Foo)
マスタ
サーバ
© Hitachi, Ltd. 2013. All rights reserved. 24
インメモリデータグリッドの要素技術
レプリケーション
~冗長化の技術~
© Hitachi, Ltd. 2013. All rights reserved. 25
レプリケーション
・多重度定義に従いデータを複製
・高速化のため非同期
EADs Tool
231-1 | -231
Put Foo A
レンジHash(Foo)
スレーブ1
スレーブ2
マスタ
サーバ
© Hitachi, Ltd. 2013. All rights reserved. 26
レプリケーション
・1サーバは複数レンジのデータを保持
EADs Tool
231-1 | -231
スレーブ1
スレーブ2
マスタ
© Hitachi, Ltd. 2013. All rights reserved. 27
インメモリデータグリッドの要素技術
マスタ昇格
~耐障害性の技術~
© Hitachi, Ltd. 2013. All rights reserved. 28
マスタ昇格(障害時)
・ハートビートおよびヘルスチェックによる障害検知
・サーバを切り離しマスタを切り替える
EADs Tool
231-1 | -231
スレーブ1
→マスタ
障害
© Hitachi, Ltd. 2013. All rights reserved. 29
マスタ昇格(復旧時)
・運用機能によるサーバ追加
・レンジ単位にデータ転送
EADs Tool
復旧サーバ
復旧レンジ
転送速度
© Hitachi, Ltd. 2013. All rights reserved. 30
マスタ昇格(復旧時)
EADs Tool
・運用機能によるサーバ追加
・レンジ単位にデータ転送
復旧サーバ
復旧レンジ
転送速度
© Hitachi, Ltd. 2013. All rights reserved. 31
マスタ昇格(復旧時)
EADs Tool
・運用機能によるサーバ追加
・レンジ単位にデータ転送
復旧サーバ
復旧レンジ
転送速度
© Hitachi, Ltd. 2013. All rights reserved. 32
マスタ昇格(復旧時)
EADs Tool
・サーバを追加しマスタを切り替える
復旧
© Hitachi, Ltd. 2013. All rights reserved. 33
整合性と一貫性
インメモリデータグリッドの要素技術
© Hitachi, Ltd. 2013. All rights reserved. 34
整合性:マスタとスレーブの値が同じ
一貫性:すべてのクライアントから最新の値が見える
整合性と一貫性
Foo=A
Foo=A
Foo=A
Get Foo
Get Foo
→A
→A
© Hitachi, Ltd. 2013. All rights reserved. 35
インメモリデータグリッドの要素技術
一貫性の3つの課題
© Hitachi, Ltd. 2013. All rights reserved. 36
①複製順序不正による不整合
一貫性の3つの課題
© Hitachi, Ltd. 2013. All rights reserved. 37
①通信遅延⇒複製順序不正
⇒不整合⇒マスタ昇格(永久的障害時)⇒一貫性?
①Put Foo A
①Foo=A
①Foo=B
①Foo=A
②Put Foo B
②Foo=B
②Foo=B
②Foo=A
遅延
一貫性の3つの課題
整合性:マスタとスレーブの値が同じ
一貫性:すべてのクライアントから最新の値が見える
© Hitachi, Ltd. 2013. All rights reserved. 38
一貫性の3つの課題
②複製処理失敗による不整合
© Hitachi, Ltd. 2013. All rights reserved. 39
②一時的障害(サーバ、ネットワーク)⇒複製処理失敗
⇒不整合⇒マスタ昇格(永久的障害時)⇒一貫性?
CAS Bar 0 1
Bar=01
Bar=01
Bar=0
失敗
成功
CAS: Compare and Swap
一貫性の3つの課題
整合性:マスタとスレーブの値が同じ
一貫性:すべてのクライアントから最新の値が見える
© Hitachi, Ltd. 2013. All rights reserved. 40
③スプリットブレインによる不整合
一貫性の3つの課題
© Hitachi, Ltd. 2013. All rights reserved. 41
③L2スイッチの障害⇒ネットワーク分断
⇒複数マスタ⇒一貫性?
①Put Foo A
②Put Foo B
①Foo=A
②Foo=B
②Foo=B
マスタはこのサーバだ!
マスタはこのサーバだ!
スプリット
一貫性の3つの課題
整合性:マスタとスレーブの値が同じ
一貫性:すべてのクライアントから最新の値が見える
© Hitachi, Ltd. 2013. All rights reserved. 42
インメモリデータグリッドの要素技術
参考
© Hitachi, Ltd. 2013. All rights reserved. 43
インメモリデータグリッドの要素技術
ゴシッププロトコル
~結果整合性の技術~
© Hitachi, Ltd. 2013. All rights reserved. 44
ゴシッププロトコル
・サーバ間で情報交換
・古いデータは新しいデータで上書き
・マスタとスレーブの値がそのうち同じ(結果整合性)
・最新の値が見えるとは限らない
整合性:マスタとスレーブの値が同じ
一貫性:すべてのクライアントから最新の値が見える
© Hitachi, Ltd. 2013. All rights reserved. 45
インメモリデータグリッドの要素技術
リードリペア
~結果整合性の技術~
© Hitachi, Ltd. 2013. All rights reserved. 46
リードリペア
・読み込み処理時に複数のサーバからデータを取得
・古いデータは新しいデータで上書き
・マスタとスレーブの値がそのうち同じ(結果整合性)
・最新の値が見えるとは限らない(確度を調整可能(QUORUM))
整合性:マスタとスレーブの値が同じ
一貫性:すべてのクライアントから最新の値が見える
© Hitachi, Ltd. 2013. All rights reserved. 47
インメモリデータグリッドの要素技術
まとめ
© Hitachi, Ltd. 2013. All rights reserved. 48
インメモリデータグリッドの要素技術
要素技術
・コンシステントハッシング
・レプリケーション
・マスタ昇格
・ゴシッププロトコル
・リードリペア
一貫性の3つの課題
①複製順序不正による不整合
②複製処理失敗による不整合
③スプリットブレインによる不整合
© Hitachi, Ltd. 2013. All rights reserved.
強一貫性への挑戦!
スプリットブレインになっても一貫性を保証するインメモリデータグリッド製品
© Hitachi, Ltd. 2013. All rights reserved. 50
強一貫性への挑戦!
解決へのアプローチ
© Hitachi, Ltd. 2013. All rights reserved. 51
解決へのアプローチ
①複製順序不正による不整合
②複製処理失敗による不整合
③スプリットブレインによる不整合
分散合意アルゴリズムPaxos*の適用
* The Part-Time Parliament
LESLIE LAMPORT, 1998
© Hitachi, Ltd. 2013. All rights reserved. 52
強一貫性への挑戦!
Paxosとは
© Hitachi, Ltd. 2013. All rights reserved.
Paxosとは
53
サーバの集合が同じ処理を同じ順番で実行するためのアルゴリズム
Atomic Broadcast
1番目の処理
2番目の処理
i番目の処理
put(k1,v1)
Server1 Server2 Server3
put(k1,v1) put(k1,v1)
remove(k1) remove(k1) remove(k1)
put(k1,v2) put(k1,v2) put(k1,v2)
キー バリュー
k1 v2
整合
© Hitachi, Ltd. 2013. All rights reserved.
Paxosとは
54
Proposer:
1. i番目の処理を提案
Acceptor:
2. Acceptor間で過半数承認(i番目の処理を合意)
3. i番目の処理を実行
※i-1番目までの処理を実行していなければ、
i-1番目までの処理を他のAcceptorから取得して実行(FillGaps)
© Hitachi, Ltd. 2013. All rights reserved. 55
強一貫性への挑戦!
一貫性保証のための3つの実装
© Hitachi, Ltd. 2013. All rights reserved. 56
一貫性保証のための3つの実装
①複製順序不正による不整合
の回避
© Hitachi, Ltd. 2013. All rights reserved.
①複製順序不正による不整合の回避
57
Proposer:マスタを持つサーバ
Acceptor:マスタ、スレーブ1、スレーブ2を持つサーバ+スペア*×2
実行
キュー
実行
スレッド
マスタ
サーバ1
スレーブ1
スレーブ2
マスタ
サーバ2
スレーブ1
スレーブ2
マスタ
サーバ3
スレーブ1
スレーブ2
マスタ
サーバ4
スレーブ1
スレーブ2
マスタ
サーバ5
スレーブ1
スレーブ2
put(k,v)
ストア
* スペア:過半数承認用(2多重障害対応)。ストア操作なし。
レンジ用
Paxos
© Hitachi, Ltd. 2013. All rights reserved.
①複製順序不正による不整合の回避
58
Proposer:i番目の処理を提案
Acceptor:Acceptor間で過半数承認(i番目の処理を合意)
実行
キュー
実行
スレッド
マスタ
サーバ1
スレーブ1
スレーブ2
マスタ
サーバ2
スレーブ1
スレーブ2
マスタ
サーバ3
スレーブ1
スレーブ2
マスタ
サーバ4
スレーブ1
スレーブ2
マスタ
サーバ5
スレーブ1
スレーブ2
put(k,v)
ストア
i
ok
ok
ok
ok
ok
レンジ用
Paxos
© Hitachi, Ltd. 2013. All rights reserved.
①複製順序不正による不整合の回避
59
Acceptor:i番目の処理を実行
”①複製順序不正による不整合”は発生しない!
実行
キュー
実行
スレッド
マスタ
サーバ1
スレーブ1
スレーブ2
マスタ
サーバ2
スレーブ1
スレーブ2
マスタ
サーバ3
スレーブ1
スレーブ2
マスタ
サーバ4
スレーブ1
スレーブ2
マスタ
サーバ5
スレーブ1
スレーブ2
put(k,v)
ストア
i
i
i
レンジ用
Paxos
© Hitachi, Ltd. 2013. All rights reserved.
①複製順序不正による不整合の回避
60
サーバの集合が同じ処理を同じ順番で実行する
同じ処理ができなければ閉塞(一貫性>可用性)
実行
キュー
実行
スレッド
マスタ
サーバ1
スレーブ1
スレーブ2
マスタ
サーバ2
スレーブ1
スレーブ2
マスタ
サーバ3
スレーブ1
スレーブ2
マスタ
サーバ4
スレーブ1
スレーブ2
マスタ
サーバ5
スレーブ1
スレーブ2
put(k,v)
ストア
i
i
i
レンジ用
Paxos
失敗
© Hitachi, Ltd. 2013. All rights reserved. 61
②複製処理失敗による不整合
の対処
一貫性保証のための3つの実装
© Hitachi, Ltd. 2013. All rights reserved.
②複製処理失敗による不整合の対処
62
一時的障害(サーバ、ネットワーク)
実行
キュー
実行
スレッド
マスタ
サーバ1
スレーブ1
スレーブ2
マスタ
サーバ2
スレーブ1
スレーブ2
マスタ
サーバ3
スレーブ1
スレーブ2
マスタ
サーバ4
スレーブ1
スレーブ2
マスタ
サーバ5
スレーブ1
スレーブ2
cas(k,v1,v2)
ストア
一時的障害
レンジ用
Paxos
© Hitachi, Ltd. 2013. All rights reserved.
②複製処理失敗による不整合の対処
63
Proposer:i番目の処理を提案
Acceptor:Acceptor間で過半数承認(i番目の処理を合意)
実行
キュー
実行
スレッド
マスタ
サーバ1
スレーブ1
スレーブ2
マスタ
サーバ2
スレーブ1
スレーブ2
マスタ
サーバ3
スレーブ1
スレーブ2
マスタ
サーバ4
スレーブ1
スレーブ2
マスタ
サーバ5
スレーブ1
スレーブ2
ストア
i
cas(k,v1,v2)
一時的障害
ok
ok
ok
ok
レンジ用
Paxos
© Hitachi, Ltd. 2013. All rights reserved.
②複製処理失敗による不整合の対処
64
Acceptor:i番目の処理を実行
実行
キュー
実行
スレッド
マスタ
サーバ1
スレーブ1
スレーブ2
マスタ
サーバ2
スレーブ1
スレーブ2
マスタ
サーバ3
スレーブ1
スレーブ2
マスタ
サーバ4
スレーブ1
スレーブ2
マスタ
サーバ5
スレーブ1
スレーブ2
ストア
i
i
cas(k,v1,v2)
一時的障害
レンジ用
Paxos
© Hitachi, Ltd. 2013. All rights reserved.
②複製処理失敗による不整合の対処
65
不整合
実行
キュー
実行
スレッド
マスタ
サーバ1
スレーブ1
スレーブ2
マスタ
サーバ2
スレーブ1
スレーブ2
マスタ
サーバ3
スレーブ1
スレーブ2
マスタ
サーバ4
スレーブ1
スレーブ2
マスタ
サーバ5
スレーブ1
スレーブ2
ストア
i
i
cas(k,v2,v3)
不整合
レンジ用
Paxos
© Hitachi, Ltd. 2013. All rights reserved.
②複製処理失敗による不整合の対処
66
Proposer:i+1番目の処理を提案
Acceptor:Acceptor間で過半数承認(i+1番目の処理を合意)
実行
キュー
実行
スレッド
マスタ
サーバ1
スレーブ1
スレーブ2
マスタ
サーバ2
スレーブ1
スレーブ2
マスタ
サーバ3
スレーブ1
スレーブ2
マスタ
サーバ4
スレーブ1
スレーブ2
マスタ
サーバ5
スレーブ1
スレーブ2
ストア
i
i
i+1
cas(k,v2,v3)
不整合
レンジ用
Paxos
ok
ok
ok
ok
ok
© Hitachi, Ltd. 2013. All rights reserved.
②複製処理失敗による不整合の対処
67
Acceptor:FillGapsをおこなってからi+1番目の処理を実行
実行
キュー
実行
スレッド
マスタ
サーバ1
スレーブ1
スレーブ2
マスタ
サーバ2
スレーブ1
スレーブ2
マスタ
サーバ3
スレーブ1
スレーブ2
マスタ
サーバ4
スレーブ1
スレーブ2
マスタ
サーバ5
スレーブ1
スレーブ2
ストア
i
i
i
i+1
i+1
i+1
FillGaps
cas(k,v2,v3)
不整合
レンジ用
Paxos
© Hitachi, Ltd. 2013. All rights reserved.
②複製処理失敗による不整合の対処
68
不整合
永久的障害によるマスタ昇格
実行
キュー
実行
スレッド
マスタ
サーバ1
スレーブ1
スレーブ2
マスタ
サーバ2
マスタ
スレーブ2
マスタ
サーバ3
スレーブ1
スレーブ2
マスタ
サーバ4
スレーブ1
スレーブ2
ストア
i
i
マスタ昇格
マスタ
サーバ5
スレーブ1
スレーブ2
永久的障害
不整合
レンジ用
Paxos
get(k)
© Hitachi, Ltd. 2013. All rights reserved.
②複製処理失敗による不整合の対処
69
Acceptor:マスタ昇格後はFillGapsをおこなってからgetを受付
”②複製処理失敗による不整合”が発生しても一貫性を保証する!
実行
キュー
実行
スレッド
マスタ
サーバ1
スレーブ1
スレーブ2
マスタ
サーバ2
マスタ
スレーブ2
マスタ
サーバ3
スレーブ1
スレーブ2
マスタ
サーバ4
スレーブ1
スレーブ2
get(k)
ストア
i
i
iFillGaps
マスタ昇格
マスタ
サーバ5
スレーブ1
スレーブ2
永久的障害
レンジ用
Paxos
不整合
© Hitachi, Ltd. 2013. All rights reserved.
②複製処理失敗による不整合の対処
70
実行
キュー
実行
スレッド
マスタ
サーバ1
スレーブ1
スレーブ2
マスタ
サーバ2
マスタ
スレーブ2
マスタ
サーバ3
スレーブ1
スレーブ2
マスタ
サーバ4
スレーブ1
スレーブ2
get(k)
ストア
i
i
FillGaps
マスタ昇格
マスタ
サーバ5
スレーブ1
スレーブ2
永久的障害
レンジ用
Paxos
サーバの集合が同じ処理を同じ順番で実行する
同じ順番でできなければ閉塞(一貫性>可用性)
不整合
失敗
© Hitachi, Ltd. 2013. All rights reserved. 71
③スプリットブレインによる不整合
の対処
一貫性保証のための3つの実装
© Hitachi, Ltd. 2013. All rights reserved.
③スプリットブレインによる不整合の対処
72
L2スイッチの障害
実行
キュー
実行
スレッド
マスタ
サーバ1
スレーブ1
スレーブ2
マスタ
サーバ3
スレーブ1
スレーブ2
マスタ
サーバ4
スレーブ1
スレーブ2
マスタ
サーバ5
スレーブ1
スレーブ2
ストア
マスタ
サーバ2
スレーブ1
スレーブ2
スプリット
3×
4×
5×
3×
4×
5×
1×
2×
1×
2×
1×
2×
クラスタ用
Paxos
© Hitachi, Ltd. 2013. All rights reserved.
③スプリットブレインによる不整合の対処
73
実行
キュー
実行
スレッド
マスタ
サーバ1
スレーブ1
スレーブ2
マスタ
サーバ3
スレーブ1
スレーブ2
マスタ
サーバ4
スレーブ1
スレーブ2
マスタ
サーバ5
スレーブ1
スレーブ2
ストア
マスタ
サーバ2
スレーブ1
スレーブ2
スプリット
3×
4×
5×
3×
4×
5×
1×
2×
1×
2×
1×
2×
Proposer:障害を検知したサーバ
Acceptor:すべてのサーバ
クラスタ用
Paxos
© Hitachi, Ltd. 2013. All rights reserved.
③スプリットブレインによる不整合の対処
74
実行
キュー
実行
スレッド
マスタ
サーバ1
スレーブ1
スレーブ2
マスタ
サーバ3
スレーブ1
スレーブ2
マスタ
サーバ4
スレーブ1
スレーブ2
マスタ
サーバ5
スレーブ1
スレーブ2
ストア
マスタ
サーバ2
スレーブ1
スレーブ2
スプリット
3×
4×
5×
3×
4×
5×
1×
2×
1×
2×
1×
2×
Proposer:i番目の処理を提案
Acceptor:Acceptor間で過半数承認(i番目の処理を合意)
ok
ok
ok
i
i
i
ok
ok
ok
i+1
i+1
i+1
ok
ok
i
i
ok
ok
i+1
i+1
ok
ok
i+2
i+2
合意
クラスタ用
Paxos
© Hitachi, Ltd. 2013. All rights reserved.
③スプリットブレインによる不整合の対処
75
実行
キュー
実行
スレッド
マスタ
サーバ1
スレーブ1
スレーブ2
マスタ
サーバ3
スレーブ1
スレーブ2
マスタ
サーバ4
スレーブ1
スレーブ2
マスタ
サーバ5
スレーブ1
スレーブ2
ストア
マスタ
サーバ2
スレーブ1
スレーブ2
スプリット
3×
4×
5×
3×
4×
5×
1×
2×
1×
2×
1×
2×
Acceptor:i番目の処理を実行
ok
ok
i
i
ok
ok
i+1
i+1
ok
ok
i+2
i+2
クラスタ用
Paxos
ii+1
ii+1
ii+1
© Hitachi, Ltd. 2013. All rights reserved.
マスタ
サーバ1
スレーブ1
スレーブ2
マスタ
サーバ2
スレーブ1
スレーブ2
③スプリットブレインによる不整合の対処
76
実行
キュー
実行
スレッド
マスタ
サーバ3
マスタ
マスタ
マスタ
サーバ4
スレーブ1
スレーブ2
マスタ
サーバ5
スレーブ1
スレーブ2
ストア
スプリット
3×
4×
5×
3×
4×
5×
1×
2×
1×
2×
1×
2×
クラスタ用
Paxos
get(k)
get(k)
ok
ok
i
i
ok
ok
i+1
i+1
ok
ok
i+2
i+2
マスタ昇格
FillGaps
ii+1
ii+1
ii+1
不整合
複数マスタ
不整合
不整合
© Hitachi, Ltd. 2013. All rights reserved.
マスタ
サーバ1
スレーブ1
スレーブ2
マスタ
サーバ2
スレーブ1
スレーブ2
③スプリットブレインによる不整合の対処
77
実行
キュー
実行
スレッド
マスタ
サーバ3
マスタ
マスタ
マスタ
サーバ4
スレーブ1
スレーブ2
マスタ
サーバ5
スレーブ1
スレーブ2
ストア
スプリット
3×
4×
5×
3×
4×
5×
1×
2×
1×
2×
1×
2×
クラスタ用
Paxos
get(k)
get(k)
ok
ok
i
i
ok
ok
i+1
i+1
ok
ok
i+2
i+2
マスタ昇格
FillGaps
失敗
成功
ii+1
ii+1
ii+1
Acceptor:過半数サーバ縮退の提案が通らなければgetを拒否
”③スプリットブレインによる不整合”が発生しても一貫性を保証する!
不整合
不整合
© Hitachi, Ltd. 2013. All rights reserved. 78
強一貫性への挑戦!
まとめ
© Hitachi, Ltd. 2013. All rights reserved. 79
強一貫性への挑戦!
Paxos
・サーバの集合が同じ処理を同じ順番で実行するためのアルゴリズム
一貫性保証のための3つの実装
①複製順序不正による不整合の回避
②複製処理失敗による不整合の対処
③スプリットブレインによる不整合の対処
© Hitachi, Ltd. 2013. All rights reserved.© Hitachi, Ltd. 2013. All rights reserved. 80
お知らせ
12年10月から新連載がスタート!
□ 毎月、日立のデータベースの最新情報をお伝えします。
DBOnline 日立のデータベース 検索
日立の国産データベース
シリーズが紹介されている
「国産」タブが新設!
日立の「Dr.SQL」登場!-土田正士さん
日本データベース学会 副会長
50年後には、データベースは
なくなっている?!
日立のデータベース開発基地に潜入
開発者に突撃インタビュー
© Hitachi, Ltd. 2013. All rights reserved.
© Hitachi, Ltd. 2013. All rights reserved.
• Javaは,Oracle Corporation 及びその子会社,関連会社の米国及びその他の国における登録商標です。
• その他、記載の会社名、製品名は、それぞれの会社の商標または登録商標です。
• 製品の改良により予告なく記載されている仕様が変更になることがあります。
他社商品名、商標等の引用に関する表示
© Hitachi, Ltd. 2013. All rights reserved.
株式会社 日立製作所 情報・通信システム社
スプリットブレインになっても一貫性を保証するインメモリデータグリッド製品
ITプラットフォーム事業本部 開発統括本部
2013/05/30
梅田多一
END
db tech showcase 大阪 2013
© Hitachi, Ltd. 2013. All rights reserved. 83

Más contenido relacionado

La actualidad más candente

製造業向け量子コンピュータ時代のDXセミナー~ 最適化の中身を覗いてみよう~
製造業向け量子コンピュータ時代のDXセミナー~ 最適化の中身を覗いてみよう~製造業向け量子コンピュータ時代のDXセミナー~ 最適化の中身を覗いてみよう~
製造業向け量子コンピュータ時代のDXセミナー~ 最適化の中身を覗いてみよう~Fixstars Corporation
 
量子コンピュータ時代の製造業におけるDXセミナー~生産工程効率化に向けた新たなご提案~
量子コンピュータ時代の製造業におけるDXセミナー~生産工程効率化に向けた新たなご提案~量子コンピュータ時代の製造業におけるDXセミナー~生産工程効率化に向けた新たなご提案~
量子コンピュータ時代の製造業におけるDXセミナー~生産工程効率化に向けた新たなご提案~Fixstars Corporation
 
マルチレイヤコンパイラ基盤による、エッジ向けディープラーニングの実装と最適化について
マルチレイヤコンパイラ基盤による、エッジ向けディープラーニングの実装と最適化についてマルチレイヤコンパイラ基盤による、エッジ向けディープラーニングの実装と最適化について
マルチレイヤコンパイラ基盤による、エッジ向けディープラーニングの実装と最適化についてFixstars Corporation
 
CPU / GPU高速化セミナー!性能モデルの理論と実践:理論編
CPU / GPU高速化セミナー!性能モデルの理論と実践:理論編CPU / GPU高速化セミナー!性能モデルの理論と実践:理論編
CPU / GPU高速化セミナー!性能モデルの理論と実践:理論編Fixstars Corporation
 
CPU / GPU高速化セミナー!性能モデルの理論と実践:実践編
CPU / GPU高速化セミナー!性能モデルの理論と実践:実践編CPU / GPU高速化セミナー!性能モデルの理論と実践:実践編
CPU / GPU高速化セミナー!性能モデルの理論と実践:実践編Fixstars Corporation
 
金融業界向けセミナー 量子コンピュータ時代を見据えた組合せ最適化
金融業界向けセミナー 量子コンピュータ時代を見据えた組合せ最適化金融業界向けセミナー 量子コンピュータ時代を見据えた組合せ最適化
金融業界向けセミナー 量子コンピュータ時代を見据えた組合せ最適化Fixstars Corporation
 
Jetson活用セミナー ROS2自律走行実現に向けて
Jetson活用セミナー ROS2自律走行実現に向けてJetson活用セミナー ROS2自律走行実現に向けて
Jetson活用セミナー ROS2自律走行実現に向けてFixstars Corporation
 
いまさら聞けないarmを使ったNEONの基礎と活用事例
いまさら聞けないarmを使ったNEONの基礎と活用事例いまさら聞けないarmを使ったNEONの基礎と活用事例
いまさら聞けないarmを使ったNEONの基礎と活用事例Fixstars Corporation
 
製造業向け量子コンピュータ時代のDXセミナー_生産計画最適化_20220323.pptx
製造業向け量子コンピュータ時代のDXセミナー_生産計画最適化_20220323.pptx製造業向け量子コンピュータ時代のDXセミナー_生産計画最適化_20220323.pptx
製造業向け量子コンピュータ時代のDXセミナー_生産計画最適化_20220323.pptxFixstars Corporation
 
Fpga online seminar by fixstars (1st)
Fpga online seminar by fixstars (1st)Fpga online seminar by fixstars (1st)
Fpga online seminar by fixstars (1st)Fixstars Corporation
 
D11 一つのデータベースでは、夢を現実に変えられない -Human Dreams. Make IT Real- by Taichi Ishikawa
D11 一つのデータベースでは、夢を現実に変えられない -Human Dreams. Make IT Real- by Taichi IshikawaD11 一つのデータベースでは、夢を現実に変えられない -Human Dreams. Make IT Real- by Taichi Ishikawa
D11 一つのデータベースでは、夢を現実に変えられない -Human Dreams. Make IT Real- by Taichi IshikawaInsight Technology, Inc.
 
エバンジェリストが語るパワーシステム特論 ~ 第1回:IBMオフコンはいかにして生き残れたのか?
エバンジェリストが語るパワーシステム特論 ~ 第1回:IBMオフコンはいかにして生き残れたのか?エバンジェリストが語るパワーシステム特論 ~ 第1回:IBMオフコンはいかにして生き残れたのか?
エバンジェリストが語るパワーシステム特論 ~ 第1回:IBMオフコンはいかにして生き残れたのか?Takumi Kurosawa
 
ARM CPUにおけるSIMDを用いた高速計算入門
ARM CPUにおけるSIMDを用いた高速計算入門ARM CPUにおけるSIMDを用いた高速計算入門
ARM CPUにおけるSIMDを用いた高速計算入門Fixstars Corporation
 
エバンジェリストが語るパワーシステム特論 ~ 第3回:IBMオフコンはいかにして生き残れたのか?~第二章~
エバンジェリストが語るパワーシステム特論 ~ 第3回:IBMオフコンはいかにして生き残れたのか?~第二章~エバンジェリストが語るパワーシステム特論 ~ 第3回:IBMオフコンはいかにして生き残れたのか?~第二章~
エバンジェリストが語るパワーシステム特論 ~ 第3回:IBMオフコンはいかにして生き残れたのか?~第二章~Takumi Kurosawa
 
SoftLayer バックアップ Idera編 + Endurance Storage編
SoftLayer バックアップ  Idera編 + Endurance Storage編SoftLayer バックアップ  Idera編 + Endurance Storage編
SoftLayer バックアップ Idera編 + Endurance Storage編Hideaki Tokida
 
ICLR2018におけるモデル軽量化(ICLR2018読み会@ PFN)
ICLR2018におけるモデル軽量化(ICLR2018読み会@ PFN)ICLR2018におけるモデル軽量化(ICLR2018読み会@ PFN)
ICLR2018におけるモデル軽量化(ICLR2018読み会@ PFN)tomohiro kato
 
配布:リアル事例で比較する SoftLayer と他クラウド
配布:リアル事例で比較する SoftLayer と他クラウド配布:リアル事例で比較する SoftLayer と他クラウド
配布:リアル事例で比較する SoftLayer と他クラウドTomoari Yasuda
 
IBM i : Power Systems 向け統合オペレーティング環境についての IBM の戦略およびロードマップに関するエグゼクティブ 向けガイド
IBM i : Power Systems 向け統合オペレーティング環境についての IBM の戦略およびロードマップに関するエグゼクティブ 向けガイドIBM i : Power Systems 向け統合オペレーティング環境についての IBM の戦略およびロードマップに関するエグゼクティブ 向けガイド
IBM i : Power Systems 向け統合オペレーティング環境についての IBM の戦略およびロードマップに関するエグゼクティブ 向けガイドIBM Systems @ IBM Japan, Ltd.
 

La actualidad más candente (20)

製造業向け量子コンピュータ時代のDXセミナー~ 最適化の中身を覗いてみよう~
製造業向け量子コンピュータ時代のDXセミナー~ 最適化の中身を覗いてみよう~製造業向け量子コンピュータ時代のDXセミナー~ 最適化の中身を覗いてみよう~
製造業向け量子コンピュータ時代のDXセミナー~ 最適化の中身を覗いてみよう~
 
量子コンピュータ時代の製造業におけるDXセミナー~生産工程効率化に向けた新たなご提案~
量子コンピュータ時代の製造業におけるDXセミナー~生産工程効率化に向けた新たなご提案~量子コンピュータ時代の製造業におけるDXセミナー~生産工程効率化に向けた新たなご提案~
量子コンピュータ時代の製造業におけるDXセミナー~生産工程効率化に向けた新たなご提案~
 
マルチレイヤコンパイラ基盤による、エッジ向けディープラーニングの実装と最適化について
マルチレイヤコンパイラ基盤による、エッジ向けディープラーニングの実装と最適化についてマルチレイヤコンパイラ基盤による、エッジ向けディープラーニングの実装と最適化について
マルチレイヤコンパイラ基盤による、エッジ向けディープラーニングの実装と最適化について
 
CPU / GPU高速化セミナー!性能モデルの理論と実践:理論編
CPU / GPU高速化セミナー!性能モデルの理論と実践:理論編CPU / GPU高速化セミナー!性能モデルの理論と実践:理論編
CPU / GPU高速化セミナー!性能モデルの理論と実践:理論編
 
CPU / GPU高速化セミナー!性能モデルの理論と実践:実践編
CPU / GPU高速化セミナー!性能モデルの理論と実践:実践編CPU / GPU高速化セミナー!性能モデルの理論と実践:実践編
CPU / GPU高速化セミナー!性能モデルの理論と実践:実践編
 
金融業界向けセミナー 量子コンピュータ時代を見据えた組合せ最適化
金融業界向けセミナー 量子コンピュータ時代を見据えた組合せ最適化金融業界向けセミナー 量子コンピュータ時代を見据えた組合せ最適化
金融業界向けセミナー 量子コンピュータ時代を見据えた組合せ最適化
 
Jetson活用セミナー ROS2自律走行実現に向けて
Jetson活用セミナー ROS2自律走行実現に向けてJetson活用セミナー ROS2自律走行実現に向けて
Jetson活用セミナー ROS2自律走行実現に向けて
 
いまさら聞けないarmを使ったNEONの基礎と活用事例
いまさら聞けないarmを使ったNEONの基礎と活用事例いまさら聞けないarmを使ったNEONの基礎と活用事例
いまさら聞けないarmを使ったNEONの基礎と活用事例
 
製造業向け量子コンピュータ時代のDXセミナー_生産計画最適化_20220323.pptx
製造業向け量子コンピュータ時代のDXセミナー_生産計画最適化_20220323.pptx製造業向け量子コンピュータ時代のDXセミナー_生産計画最適化_20220323.pptx
製造業向け量子コンピュータ時代のDXセミナー_生産計画最適化_20220323.pptx
 
Fpga online seminar by fixstars (1st)
Fpga online seminar by fixstars (1st)Fpga online seminar by fixstars (1st)
Fpga online seminar by fixstars (1st)
 
D11 一つのデータベースでは、夢を現実に変えられない -Human Dreams. Make IT Real- by Taichi Ishikawa
D11 一つのデータベースでは、夢を現実に変えられない -Human Dreams. Make IT Real- by Taichi IshikawaD11 一つのデータベースでは、夢を現実に変えられない -Human Dreams. Make IT Real- by Taichi Ishikawa
D11 一つのデータベースでは、夢を現実に変えられない -Human Dreams. Make IT Real- by Taichi Ishikawa
 
エバンジェリストが語るパワーシステム特論 ~ 第1回:IBMオフコンはいかにして生き残れたのか?
エバンジェリストが語るパワーシステム特論 ~ 第1回:IBMオフコンはいかにして生き残れたのか?エバンジェリストが語るパワーシステム特論 ~ 第1回:IBMオフコンはいかにして生き残れたのか?
エバンジェリストが語るパワーシステム特論 ~ 第1回:IBMオフコンはいかにして生き残れたのか?
 
Storm×couchbase serverで作るリアルタイム解析基盤
Storm×couchbase serverで作るリアルタイム解析基盤Storm×couchbase serverで作るリアルタイム解析基盤
Storm×couchbase serverで作るリアルタイム解析基盤
 
ARM CPUにおけるSIMDを用いた高速計算入門
ARM CPUにおけるSIMDを用いた高速計算入門ARM CPUにおけるSIMDを用いた高速計算入門
ARM CPUにおけるSIMDを用いた高速計算入門
 
エバンジェリストが語るパワーシステム特論 ~ 第3回:IBMオフコンはいかにして生き残れたのか?~第二章~
エバンジェリストが語るパワーシステム特論 ~ 第3回:IBMオフコンはいかにして生き残れたのか?~第二章~エバンジェリストが語るパワーシステム特論 ~ 第3回:IBMオフコンはいかにして生き残れたのか?~第二章~
エバンジェリストが語るパワーシステム特論 ~ 第3回:IBMオフコンはいかにして生き残れたのか?~第二章~
 
Node.jsStreamについて
Node.jsStreamについてNode.jsStreamについて
Node.jsStreamについて
 
SoftLayer バックアップ Idera編 + Endurance Storage編
SoftLayer バックアップ  Idera編 + Endurance Storage編SoftLayer バックアップ  Idera編 + Endurance Storage編
SoftLayer バックアップ Idera編 + Endurance Storage編
 
ICLR2018におけるモデル軽量化(ICLR2018読み会@ PFN)
ICLR2018におけるモデル軽量化(ICLR2018読み会@ PFN)ICLR2018におけるモデル軽量化(ICLR2018読み会@ PFN)
ICLR2018におけるモデル軽量化(ICLR2018読み会@ PFN)
 
配布:リアル事例で比較する SoftLayer と他クラウド
配布:リアル事例で比較する SoftLayer と他クラウド配布:リアル事例で比較する SoftLayer と他クラウド
配布:リアル事例で比較する SoftLayer と他クラウド
 
IBM i : Power Systems 向け統合オペレーティング環境についての IBM の戦略およびロードマップに関するエグゼクティブ 向けガイド
IBM i : Power Systems 向け統合オペレーティング環境についての IBM の戦略およびロードマップに関するエグゼクティブ 向けガイドIBM i : Power Systems 向け統合オペレーティング環境についての IBM の戦略およびロードマップに関するエグゼクティブ 向けガイド
IBM i : Power Systems 向け統合オペレーティング環境についての IBM の戦略およびロードマップに関するエグゼクティブ 向けガイド
 

Destacado

CaSSanDra: An SSD Boosted Key-Value Store
CaSSanDra: An SSD Boosted Key-Value StoreCaSSanDra: An SSD Boosted Key-Value Store
CaSSanDra: An SSD Boosted Key-Value StoreTilmann Rabl
 
なぜApache HBaseを選ぶのか? #cwt2013
なぜApache HBaseを選ぶのか? #cwt2013なぜApache HBaseを選ぶのか? #cwt2013
なぜApache HBaseを選ぶのか? #cwt2013Cloudera Japan
 
5分でわかる Apache HBase 最新版 #hcj2014
5分でわかる Apache HBase 最新版 #hcj20145分でわかる Apache HBase 最新版 #hcj2014
5分でわかる Apache HBase 最新版 #hcj2014Cloudera Japan
 

Destacado (7)

Consistency level
Consistency levelConsistency level
Consistency level
 
Cassandra0.7
Cassandra0.7Cassandra0.7
Cassandra0.7
 
Gossip事始め
Gossip事始めGossip事始め
Gossip事始め
 
Cassandra3.0
Cassandra3.0Cassandra3.0
Cassandra3.0
 
CaSSanDra: An SSD Boosted Key-Value Store
CaSSanDra: An SSD Boosted Key-Value StoreCaSSanDra: An SSD Boosted Key-Value Store
CaSSanDra: An SSD Boosted Key-Value Store
 
なぜApache HBaseを選ぶのか? #cwt2013
なぜApache HBaseを選ぶのか? #cwt2013なぜApache HBaseを選ぶのか? #cwt2013
なぜApache HBaseを選ぶのか? #cwt2013
 
5分でわかる Apache HBase 最新版 #hcj2014
5分でわかる Apache HBase 最新版 #hcj20145分でわかる Apache HBase 最新版 #hcj2014
5分でわかる Apache HBase 最新版 #hcj2014
 

Similar a C22 スプリットブレインになっても一貫性を保証するインメモリデータグリッド製品 by Taichi Umeda

三協立山の仮想化基板の成長を支えるイーサネット・ファブリック
三協立山の仮想化基板の成長を支えるイーサネット・ファブリック三協立山の仮想化基板の成長を支えるイーサネット・ファブリック
三協立山の仮想化基板の成長を支えるイーサネット・ファブリックBrocade
 
【GridDB入門】 IoT、そしてサイバー・フィジカル・システムを支える オープンソースデータベース GridDB ~ こだわりの理由と実現方法のポイント
【GridDB入門】 IoT、そしてサイバー・フィジカル・システムを支える オープンソースデータベース GridDB ~ こだわりの理由と実現方法のポイント【GridDB入門】 IoT、そしてサイバー・フィジカル・システムを支える オープンソースデータベース GridDB ~ こだわりの理由と実現方法のポイント
【GridDB入門】 IoT、そしてサイバー・フィジカル・システムを支える オープンソースデータベース GridDB ~ こだわりの理由と実現方法のポイントgriddb
 
DBTS2015 Tokyo DBAが知っておくべき最新テクノロジー
DBTS2015 Tokyo DBAが知っておくべき最新テクノロジーDBTS2015 Tokyo DBAが知っておくべき最新テクノロジー
DBTS2015 Tokyo DBAが知っておくべき最新テクノロジーMasaya Ishikawa
 
20141203 tiberoセミナー講演資料
20141203 tiberoセミナー講演資料20141203 tiberoセミナー講演資料
20141203 tiberoセミナー講演資料tmaxsoftjpn
 
Cloudianを利用したソリューション (Cloudian Summit 2012)
Cloudianを利用したソリューション (Cloudian Summit 2012)Cloudianを利用したソリューション (Cloudian Summit 2012)
Cloudianを利用したソリューション (Cloudian Summit 2012)CLOUDIAN KK
 
Cloudianを利用したソリューション (Cloudian Summit 2012)
Cloudianを利用したソリューション (Cloudian Summit 2012)Cloudianを利用したソリューション (Cloudian Summit 2012)
Cloudianを利用したソリューション (Cloudian Summit 2012)CLOUDIAN KK
 
AI/MLシステムにおけるビッグデータとの付き合い方
AI/MLシステムにおけるビッグデータとの付き合い方AI/MLシステムにおけるビッグデータとの付き合い方
AI/MLシステムにおけるビッグデータとの付き合い方Shota Suzuki
 
C34 ニッチだけど、社会インフラを支えるデータベース、HiRDB ~HiRDBを選ぶ人、選ばない人、その選択基準とは~ by Taichi Ishikawa
C34 ニッチだけど、社会インフラを支えるデータベース、HiRDB ~HiRDBを選ぶ人、選ばない人、その選択基準とは~ by Taichi IshikawaC34 ニッチだけど、社会インフラを支えるデータベース、HiRDB ~HiRDBを選ぶ人、選ばない人、その選択基準とは~ by Taichi Ishikawa
C34 ニッチだけど、社会インフラを支えるデータベース、HiRDB ~HiRDBを選ぶ人、選ばない人、その選択基準とは~ by Taichi IshikawaInsight Technology, Inc.
 
FPGAによる大規模データ処理の高速化
FPGAによる大規模データ処理の高速化FPGAによる大規模データ処理の高速化
FPGAによる大規模データ処理の高速化Kazunori Sato
 
de:code2018 登壇資料
de:code2018 登壇資料de:code2018 登壇資料
de:code2018 登壇資料Hiroshi Senga
 
もうSQLとNoSQLを選ぶ必要はない!?~両者を備えたスケールアウトデータベースGridDB~
もうSQLとNoSQLを選ぶ必要はない!?~両者を備えたスケールアウトデータベースGridDB~もうSQLとNoSQLを選ぶ必要はない!?~両者を備えたスケールアウトデータベースGridDB~
もうSQLとNoSQLを選ぶ必要はない!?~両者を備えたスケールアウトデータベースGridDB~griddb
 
[db tech showcase Tokyo 2014] B33: 超高速データベースエンジンでのビッグデータ分析活用事例 by 株式会社日立製作所 ...
[db tech showcase Tokyo 2014] B33: 超高速データベースエンジンでのビッグデータ分析活用事例  by 株式会社日立製作所 ...[db tech showcase Tokyo 2014] B33: 超高速データベースエンジンでのビッグデータ分析活用事例  by 株式会社日立製作所 ...
[db tech showcase Tokyo 2014] B33: 超高速データベースエンジンでのビッグデータ分析活用事例 by 株式会社日立製作所 ...Insight Technology, Inc.
 
コモディティサーバー3台で作る高速処理 “ハイパー・コンバージド・データベース・インフラストラクチャー(HCDI)” システム『Insight Qube』...
コモディティサーバー3台で作る高速処理 “ハイパー・コンバージド・データベース・インフラストラクチャー(HCDI)” システム『Insight Qube』...コモディティサーバー3台で作る高速処理 “ハイパー・コンバージド・データベース・インフラストラクチャー(HCDI)” システム『Insight Qube』...
コモディティサーバー3台で作る高速処理 “ハイパー・コンバージド・データベース・インフラストラクチャー(HCDI)” システム『Insight Qube』...Insight Technology, Inc.
 
IoT時代を迎えて、あなたのシステムは今までのDBで充分ですか?~ GridDBとその適用事例紹介 ~
IoT時代を迎えて、あなたのシステムは今までのDBで充分ですか?~ GridDBとその適用事例紹介 ~ IoT時代を迎えて、あなたのシステムは今までのDBで充分ですか?~ GridDBとその適用事例紹介 ~
IoT時代を迎えて、あなたのシステムは今までのDBで充分ですか?~ GridDBとその適用事例紹介 ~ griddb
 
[db tech showcase Tokyo 2014] D15:日立ストレージと国産DBMS HiRDBで実現する『ワンランク上』のディザスタリカバリ...
[db tech showcase Tokyo 2014] D15:日立ストレージと国産DBMS HiRDBで実現する『ワンランク上』のディザスタリカバリ...[db tech showcase Tokyo 2014] D15:日立ストレージと国産DBMS HiRDBで実現する『ワンランク上』のディザスタリカバリ...
[db tech showcase Tokyo 2014] D15:日立ストレージと国産DBMS HiRDBで実現する『ワンランク上』のディザスタリカバリ...Insight Technology, Inc.
 
オブジェクトストレージの適用領域とCloudianの位置づけ (Cloudian Summit 2012)
オブジェクトストレージの適用領域とCloudianの位置づけ (Cloudian Summit 2012)オブジェクトストレージの適用領域とCloudianの位置づけ (Cloudian Summit 2012)
オブジェクトストレージの適用領域とCloudianの位置づけ (Cloudian Summit 2012)CLOUDIAN KK
 
D24 ビックデータへの苦難と、国産データベースの挑戦 自社従来比100倍の性能に挑む、超高速データベースエンジンHitachi Advanced Dat...
D24 ビックデータへの苦難と、国産データベースの挑戦 自社従来比100倍の性能に挑む、超高速データベースエンジンHitachi Advanced Dat...D24 ビックデータへの苦難と、国産データベースの挑戦 自社従来比100倍の性能に挑む、超高速データベースエンジンHitachi Advanced Dat...
D24 ビックデータへの苦難と、国産データベースの挑戦 自社従来比100倍の性能に挑む、超高速データベースエンジンHitachi Advanced Dat...Insight Technology, Inc.
 
[C32] 正確でスピーディーな決断を促す、日立の高速データアクセス基盤~性能検証事例と活用効果~ by Taichi Ishikawa
[C32] 正確でスピーディーな決断を促す、日立の高速データアクセス基盤~性能検証事例と活用効果~ by Taichi Ishikawa[C32] 正確でスピーディーな決断を促す、日立の高速データアクセス基盤~性能検証事例と活用効果~ by Taichi Ishikawa
[C32] 正確でスピーディーな決断を促す、日立の高速データアクセス基盤~性能検証事例と活用効果~ by Taichi IshikawaInsight Technology, Inc.
 
新しいTERASOLUNA Batch Frameworkとは
新しいTERASOLUNA Batch Frameworkとは新しいTERASOLUNA Batch Frameworkとは
新しいTERASOLUNA Batch Frameworkとはapkiban
 

Similar a C22 スプリットブレインになっても一貫性を保証するインメモリデータグリッド製品 by Taichi Umeda (20)

三協立山の仮想化基板の成長を支えるイーサネット・ファブリック
三協立山の仮想化基板の成長を支えるイーサネット・ファブリック三協立山の仮想化基板の成長を支えるイーサネット・ファブリック
三協立山の仮想化基板の成長を支えるイーサネット・ファブリック
 
【GridDB入門】 IoT、そしてサイバー・フィジカル・システムを支える オープンソースデータベース GridDB ~ こだわりの理由と実現方法のポイント
【GridDB入門】 IoT、そしてサイバー・フィジカル・システムを支える オープンソースデータベース GridDB ~ こだわりの理由と実現方法のポイント【GridDB入門】 IoT、そしてサイバー・フィジカル・システムを支える オープンソースデータベース GridDB ~ こだわりの理由と実現方法のポイント
【GridDB入門】 IoT、そしてサイバー・フィジカル・システムを支える オープンソースデータベース GridDB ~ こだわりの理由と実現方法のポイント
 
DBTS2015 Tokyo DBAが知っておくべき最新テクノロジー
DBTS2015 Tokyo DBAが知っておくべき最新テクノロジーDBTS2015 Tokyo DBAが知っておくべき最新テクノロジー
DBTS2015 Tokyo DBAが知っておくべき最新テクノロジー
 
20141203 tiberoセミナー講演資料
20141203 tiberoセミナー講演資料20141203 tiberoセミナー講演資料
20141203 tiberoセミナー講演資料
 
Cloudianを利用したソリューション (Cloudian Summit 2012)
Cloudianを利用したソリューション (Cloudian Summit 2012)Cloudianを利用したソリューション (Cloudian Summit 2012)
Cloudianを利用したソリューション (Cloudian Summit 2012)
 
Cloudianを利用したソリューション (Cloudian Summit 2012)
Cloudianを利用したソリューション (Cloudian Summit 2012)Cloudianを利用したソリューション (Cloudian Summit 2012)
Cloudianを利用したソリューション (Cloudian Summit 2012)
 
AI/MLシステムにおけるビッグデータとの付き合い方
AI/MLシステムにおけるビッグデータとの付き合い方AI/MLシステムにおけるビッグデータとの付き合い方
AI/MLシステムにおけるビッグデータとの付き合い方
 
Atomsystem
AtomsystemAtomsystem
Atomsystem
 
C34 ニッチだけど、社会インフラを支えるデータベース、HiRDB ~HiRDBを選ぶ人、選ばない人、その選択基準とは~ by Taichi Ishikawa
C34 ニッチだけど、社会インフラを支えるデータベース、HiRDB ~HiRDBを選ぶ人、選ばない人、その選択基準とは~ by Taichi IshikawaC34 ニッチだけど、社会インフラを支えるデータベース、HiRDB ~HiRDBを選ぶ人、選ばない人、その選択基準とは~ by Taichi Ishikawa
C34 ニッチだけど、社会インフラを支えるデータベース、HiRDB ~HiRDBを選ぶ人、選ばない人、その選択基準とは~ by Taichi Ishikawa
 
FPGAによる大規模データ処理の高速化
FPGAによる大規模データ処理の高速化FPGAによる大規模データ処理の高速化
FPGAによる大規模データ処理の高速化
 
de:code2018 登壇資料
de:code2018 登壇資料de:code2018 登壇資料
de:code2018 登壇資料
 
もうSQLとNoSQLを選ぶ必要はない!?~両者を備えたスケールアウトデータベースGridDB~
もうSQLとNoSQLを選ぶ必要はない!?~両者を備えたスケールアウトデータベースGridDB~もうSQLとNoSQLを選ぶ必要はない!?~両者を備えたスケールアウトデータベースGridDB~
もうSQLとNoSQLを選ぶ必要はない!?~両者を備えたスケールアウトデータベースGridDB~
 
[db tech showcase Tokyo 2014] B33: 超高速データベースエンジンでのビッグデータ分析活用事例 by 株式会社日立製作所 ...
[db tech showcase Tokyo 2014] B33: 超高速データベースエンジンでのビッグデータ分析活用事例  by 株式会社日立製作所 ...[db tech showcase Tokyo 2014] B33: 超高速データベースエンジンでのビッグデータ分析活用事例  by 株式会社日立製作所 ...
[db tech showcase Tokyo 2014] B33: 超高速データベースエンジンでのビッグデータ分析活用事例 by 株式会社日立製作所 ...
 
コモディティサーバー3台で作る高速処理 “ハイパー・コンバージド・データベース・インフラストラクチャー(HCDI)” システム『Insight Qube』...
コモディティサーバー3台で作る高速処理 “ハイパー・コンバージド・データベース・インフラストラクチャー(HCDI)” システム『Insight Qube』...コモディティサーバー3台で作る高速処理 “ハイパー・コンバージド・データベース・インフラストラクチャー(HCDI)” システム『Insight Qube』...
コモディティサーバー3台で作る高速処理 “ハイパー・コンバージド・データベース・インフラストラクチャー(HCDI)” システム『Insight Qube』...
 
IoT時代を迎えて、あなたのシステムは今までのDBで充分ですか?~ GridDBとその適用事例紹介 ~
IoT時代を迎えて、あなたのシステムは今までのDBで充分ですか?~ GridDBとその適用事例紹介 ~ IoT時代を迎えて、あなたのシステムは今までのDBで充分ですか?~ GridDBとその適用事例紹介 ~
IoT時代を迎えて、あなたのシステムは今までのDBで充分ですか?~ GridDBとその適用事例紹介 ~
 
[db tech showcase Tokyo 2014] D15:日立ストレージと国産DBMS HiRDBで実現する『ワンランク上』のディザスタリカバリ...
[db tech showcase Tokyo 2014] D15:日立ストレージと国産DBMS HiRDBで実現する『ワンランク上』のディザスタリカバリ...[db tech showcase Tokyo 2014] D15:日立ストレージと国産DBMS HiRDBで実現する『ワンランク上』のディザスタリカバリ...
[db tech showcase Tokyo 2014] D15:日立ストレージと国産DBMS HiRDBで実現する『ワンランク上』のディザスタリカバリ...
 
オブジェクトストレージの適用領域とCloudianの位置づけ (Cloudian Summit 2012)
オブジェクトストレージの適用領域とCloudianの位置づけ (Cloudian Summit 2012)オブジェクトストレージの適用領域とCloudianの位置づけ (Cloudian Summit 2012)
オブジェクトストレージの適用領域とCloudianの位置づけ (Cloudian Summit 2012)
 
D24 ビックデータへの苦難と、国産データベースの挑戦 自社従来比100倍の性能に挑む、超高速データベースエンジンHitachi Advanced Dat...
D24 ビックデータへの苦難と、国産データベースの挑戦 自社従来比100倍の性能に挑む、超高速データベースエンジンHitachi Advanced Dat...D24 ビックデータへの苦難と、国産データベースの挑戦 自社従来比100倍の性能に挑む、超高速データベースエンジンHitachi Advanced Dat...
D24 ビックデータへの苦難と、国産データベースの挑戦 自社従来比100倍の性能に挑む、超高速データベースエンジンHitachi Advanced Dat...
 
[C32] 正確でスピーディーな決断を促す、日立の高速データアクセス基盤~性能検証事例と活用効果~ by Taichi Ishikawa
[C32] 正確でスピーディーな決断を促す、日立の高速データアクセス基盤~性能検証事例と活用効果~ by Taichi Ishikawa[C32] 正確でスピーディーな決断を促す、日立の高速データアクセス基盤~性能検証事例と活用効果~ by Taichi Ishikawa
[C32] 正確でスピーディーな決断を促す、日立の高速データアクセス基盤~性能検証事例と活用効果~ by Taichi Ishikawa
 
新しいTERASOLUNA Batch Frameworkとは
新しいTERASOLUNA Batch Frameworkとは新しいTERASOLUNA Batch Frameworkとは
新しいTERASOLUNA Batch Frameworkとは
 

Más de Insight Technology, Inc.

グラフデータベースは如何に自然言語を理解するか?
グラフデータベースは如何に自然言語を理解するか?グラフデータベースは如何に自然言語を理解するか?
グラフデータベースは如何に自然言語を理解するか?Insight Technology, Inc.
 
Great performance at scale~次期PostgreSQL12のパーティショニング性能の実力に迫る~
Great performance at scale~次期PostgreSQL12のパーティショニング性能の実力に迫る~Great performance at scale~次期PostgreSQL12のパーティショニング性能の実力に迫る~
Great performance at scale~次期PostgreSQL12のパーティショニング性能の実力に迫る~Insight Technology, Inc.
 
事例を通じて機械学習とは何かを説明する
事例を通じて機械学習とは何かを説明する事例を通じて機械学習とは何かを説明する
事例を通じて機械学習とは何かを説明するInsight Technology, Inc.
 
仮想通貨ウォレットアプリで理解するデータストアとしてのブロックチェーン
仮想通貨ウォレットアプリで理解するデータストアとしてのブロックチェーン仮想通貨ウォレットアプリで理解するデータストアとしてのブロックチェーン
仮想通貨ウォレットアプリで理解するデータストアとしてのブロックチェーンInsight Technology, Inc.
 
MBAAで覚えるDBREの大事なおしごと
MBAAで覚えるDBREの大事なおしごとMBAAで覚えるDBREの大事なおしごと
MBAAで覚えるDBREの大事なおしごとInsight Technology, Inc.
 
グラフデータベースは如何に自然言語を理解するか?
グラフデータベースは如何に自然言語を理解するか?グラフデータベースは如何に自然言語を理解するか?
グラフデータベースは如何に自然言語を理解するか?Insight Technology, Inc.
 
DBREから始めるデータベースプラットフォーム
DBREから始めるデータベースプラットフォームDBREから始めるデータベースプラットフォーム
DBREから始めるデータベースプラットフォームInsight Technology, Inc.
 
SQL Server エンジニアのためのコンテナ入門
SQL Server エンジニアのためのコンテナ入門SQL Server エンジニアのためのコンテナ入門
SQL Server エンジニアのためのコンテナ入門Insight Technology, Inc.
 
db tech showcase2019オープニングセッション @ 森田 俊哉
db tech showcase2019オープニングセッション @ 森田 俊哉 db tech showcase2019オープニングセッション @ 森田 俊哉
db tech showcase2019オープニングセッション @ 森田 俊哉 Insight Technology, Inc.
 
db tech showcase2019 オープニングセッション @ 石川 雅也
db tech showcase2019 オープニングセッション @ 石川 雅也db tech showcase2019 オープニングセッション @ 石川 雅也
db tech showcase2019 オープニングセッション @ 石川 雅也Insight Technology, Inc.
 
db tech showcase2019 オープニングセッション @ マイナー・アレン・パーカー
db tech showcase2019 オープニングセッション @ マイナー・アレン・パーカー db tech showcase2019 オープニングセッション @ マイナー・アレン・パーカー
db tech showcase2019 オープニングセッション @ マイナー・アレン・パーカー Insight Technology, Inc.
 
難しいアプリケーション移行、手軽に試してみませんか?
難しいアプリケーション移行、手軽に試してみませんか?難しいアプリケーション移行、手軽に試してみませんか?
難しいアプリケーション移行、手軽に試してみませんか?Insight Technology, Inc.
 
Attunityのソリューションと異種データベース・クラウド移行事例のご紹介
Attunityのソリューションと異種データベース・クラウド移行事例のご紹介Attunityのソリューションと異種データベース・クラウド移行事例のご紹介
Attunityのソリューションと異種データベース・クラウド移行事例のご紹介Insight Technology, Inc.
 
そのデータベース、クラウドで使ってみませんか?
そのデータベース、クラウドで使ってみませんか?そのデータベース、クラウドで使ってみませんか?
そのデータベース、クラウドで使ってみませんか?Insight Technology, Inc.
 
複数DBのバックアップ・切り戻し運用手順が異なって大変?!運用性の大幅改善、その先に。。
複数DBのバックアップ・切り戻し運用手順が異なって大変?!運用性の大幅改善、その先に。。 複数DBのバックアップ・切り戻し運用手順が異なって大変?!運用性の大幅改善、その先に。。
複数DBのバックアップ・切り戻し運用手順が異なって大変?!運用性の大幅改善、その先に。。 Insight Technology, Inc.
 
Attunity社のソリューションの日本国内外適用事例及びロードマップ紹介[ATTUNITY & インサイトテクノロジー IoT / Big Data フ...
Attunity社のソリューションの日本国内外適用事例及びロードマップ紹介[ATTUNITY & インサイトテクノロジー IoT / Big Data フ...Attunity社のソリューションの日本国内外適用事例及びロードマップ紹介[ATTUNITY & インサイトテクノロジー IoT / Big Data フ...
Attunity社のソリューションの日本国内外適用事例及びロードマップ紹介[ATTUNITY & インサイトテクノロジー IoT / Big Data フ...Insight Technology, Inc.
 
レガシーに埋もれたデータをリアルタイムでクラウドへ [ATTUNITY & インサイトテクノロジー IoT / Big Data フォーラム 2018]
レガシーに埋もれたデータをリアルタイムでクラウドへ [ATTUNITY & インサイトテクノロジー IoT / Big Data フォーラム 2018]レガシーに埋もれたデータをリアルタイムでクラウドへ [ATTUNITY & インサイトテクノロジー IoT / Big Data フォーラム 2018]
レガシーに埋もれたデータをリアルタイムでクラウドへ [ATTUNITY & インサイトテクノロジー IoT / Big Data フォーラム 2018]Insight Technology, Inc.
 
エンタープライズでのAI活用を支援する新世代データウェアハウスのあり方[ATTUNITY & インサイトテクノロジー IoT / Big Data フォー...
エンタープライズでのAI活用を支援する新世代データウェアハウスのあり方[ATTUNITY & インサイトテクノロジー IoT / Big Data フォー...エンタープライズでのAI活用を支援する新世代データウェアハウスのあり方[ATTUNITY & インサイトテクノロジー IoT / Big Data フォー...
エンタープライズでのAI活用を支援する新世代データウェアハウスのあり方[ATTUNITY & インサイトテクノロジー IoT / Big Data フォー...Insight Technology, Inc.
 

Más de Insight Technology, Inc. (20)

グラフデータベースは如何に自然言語を理解するか?
グラフデータベースは如何に自然言語を理解するか?グラフデータベースは如何に自然言語を理解するか?
グラフデータベースは如何に自然言語を理解するか?
 
Docker and the Oracle Database
Docker and the Oracle DatabaseDocker and the Oracle Database
Docker and the Oracle Database
 
Great performance at scale~次期PostgreSQL12のパーティショニング性能の実力に迫る~
Great performance at scale~次期PostgreSQL12のパーティショニング性能の実力に迫る~Great performance at scale~次期PostgreSQL12のパーティショニング性能の実力に迫る~
Great performance at scale~次期PostgreSQL12のパーティショニング性能の実力に迫る~
 
事例を通じて機械学習とは何かを説明する
事例を通じて機械学習とは何かを説明する事例を通じて機械学習とは何かを説明する
事例を通じて機械学習とは何かを説明する
 
仮想通貨ウォレットアプリで理解するデータストアとしてのブロックチェーン
仮想通貨ウォレットアプリで理解するデータストアとしてのブロックチェーン仮想通貨ウォレットアプリで理解するデータストアとしてのブロックチェーン
仮想通貨ウォレットアプリで理解するデータストアとしてのブロックチェーン
 
MBAAで覚えるDBREの大事なおしごと
MBAAで覚えるDBREの大事なおしごとMBAAで覚えるDBREの大事なおしごと
MBAAで覚えるDBREの大事なおしごと
 
グラフデータベースは如何に自然言語を理解するか?
グラフデータベースは如何に自然言語を理解するか?グラフデータベースは如何に自然言語を理解するか?
グラフデータベースは如何に自然言語を理解するか?
 
DBREから始めるデータベースプラットフォーム
DBREから始めるデータベースプラットフォームDBREから始めるデータベースプラットフォーム
DBREから始めるデータベースプラットフォーム
 
SQL Server エンジニアのためのコンテナ入門
SQL Server エンジニアのためのコンテナ入門SQL Server エンジニアのためのコンテナ入門
SQL Server エンジニアのためのコンテナ入門
 
Lunch & Learn, AWS NoSQL Services
Lunch & Learn, AWS NoSQL ServicesLunch & Learn, AWS NoSQL Services
Lunch & Learn, AWS NoSQL Services
 
db tech showcase2019オープニングセッション @ 森田 俊哉
db tech showcase2019オープニングセッション @ 森田 俊哉 db tech showcase2019オープニングセッション @ 森田 俊哉
db tech showcase2019オープニングセッション @ 森田 俊哉
 
db tech showcase2019 オープニングセッション @ 石川 雅也
db tech showcase2019 オープニングセッション @ 石川 雅也db tech showcase2019 オープニングセッション @ 石川 雅也
db tech showcase2019 オープニングセッション @ 石川 雅也
 
db tech showcase2019 オープニングセッション @ マイナー・アレン・パーカー
db tech showcase2019 オープニングセッション @ マイナー・アレン・パーカー db tech showcase2019 オープニングセッション @ マイナー・アレン・パーカー
db tech showcase2019 オープニングセッション @ マイナー・アレン・パーカー
 
難しいアプリケーション移行、手軽に試してみませんか?
難しいアプリケーション移行、手軽に試してみませんか?難しいアプリケーション移行、手軽に試してみませんか?
難しいアプリケーション移行、手軽に試してみませんか?
 
Attunityのソリューションと異種データベース・クラウド移行事例のご紹介
Attunityのソリューションと異種データベース・クラウド移行事例のご紹介Attunityのソリューションと異種データベース・クラウド移行事例のご紹介
Attunityのソリューションと異種データベース・クラウド移行事例のご紹介
 
そのデータベース、クラウドで使ってみませんか?
そのデータベース、クラウドで使ってみませんか?そのデータベース、クラウドで使ってみませんか?
そのデータベース、クラウドで使ってみませんか?
 
複数DBのバックアップ・切り戻し運用手順が異なって大変?!運用性の大幅改善、その先に。。
複数DBのバックアップ・切り戻し運用手順が異なって大変?!運用性の大幅改善、その先に。。 複数DBのバックアップ・切り戻し運用手順が異なって大変?!運用性の大幅改善、その先に。。
複数DBのバックアップ・切り戻し運用手順が異なって大変?!運用性の大幅改善、その先に。。
 
Attunity社のソリューションの日本国内外適用事例及びロードマップ紹介[ATTUNITY & インサイトテクノロジー IoT / Big Data フ...
Attunity社のソリューションの日本国内外適用事例及びロードマップ紹介[ATTUNITY & インサイトテクノロジー IoT / Big Data フ...Attunity社のソリューションの日本国内外適用事例及びロードマップ紹介[ATTUNITY & インサイトテクノロジー IoT / Big Data フ...
Attunity社のソリューションの日本国内外適用事例及びロードマップ紹介[ATTUNITY & インサイトテクノロジー IoT / Big Data フ...
 
レガシーに埋もれたデータをリアルタイムでクラウドへ [ATTUNITY & インサイトテクノロジー IoT / Big Data フォーラム 2018]
レガシーに埋もれたデータをリアルタイムでクラウドへ [ATTUNITY & インサイトテクノロジー IoT / Big Data フォーラム 2018]レガシーに埋もれたデータをリアルタイムでクラウドへ [ATTUNITY & インサイトテクノロジー IoT / Big Data フォーラム 2018]
レガシーに埋もれたデータをリアルタイムでクラウドへ [ATTUNITY & インサイトテクノロジー IoT / Big Data フォーラム 2018]
 
エンタープライズでのAI活用を支援する新世代データウェアハウスのあり方[ATTUNITY & インサイトテクノロジー IoT / Big Data フォー...
エンタープライズでのAI活用を支援する新世代データウェアハウスのあり方[ATTUNITY & インサイトテクノロジー IoT / Big Data フォー...エンタープライズでのAI活用を支援する新世代データウェアハウスのあり方[ATTUNITY & インサイトテクノロジー IoT / Big Data フォー...
エンタープライズでのAI活用を支援する新世代データウェアハウスのあり方[ATTUNITY & インサイトテクノロジー IoT / Big Data フォー...
 

Último

知識ゼロの営業マンでもできた!超速で初心者を脱する、悪魔的学習ステップ3選.pptx
知識ゼロの営業マンでもできた!超速で初心者を脱する、悪魔的学習ステップ3選.pptx知識ゼロの営業マンでもできた!超速で初心者を脱する、悪魔的学習ステップ3選.pptx
知識ゼロの営業マンでもできた!超速で初心者を脱する、悪魔的学習ステップ3選.pptxsn679259
 
Amazon SES を勉強してみる その32024/04/26の勉強会で発表されたものです。
Amazon SES を勉強してみる その32024/04/26の勉強会で発表されたものです。Amazon SES を勉強してみる その32024/04/26の勉強会で発表されたものです。
Amazon SES を勉強してみる その32024/04/26の勉強会で発表されたものです。iPride Co., Ltd.
 
LoRaWANスマート距離検出センサー DS20L カタログ LiDARデバイス
LoRaWANスマート距離検出センサー  DS20L  カタログ  LiDARデバイスLoRaWANスマート距離検出センサー  DS20L  カタログ  LiDARデバイス
LoRaWANスマート距離検出センサー DS20L カタログ LiDARデバイスCRI Japan, Inc.
 
LoRaWAN スマート距離検出デバイスDS20L日本語マニュアル
LoRaWAN スマート距離検出デバイスDS20L日本語マニュアルLoRaWAN スマート距離検出デバイスDS20L日本語マニュアル
LoRaWAN スマート距離検出デバイスDS20L日本語マニュアルCRI Japan, Inc.
 
論文紹介: The Surprising Effectiveness of PPO in Cooperative Multi-Agent Games
論文紹介: The Surprising Effectiveness of PPO in Cooperative Multi-Agent Games論文紹介: The Surprising Effectiveness of PPO in Cooperative Multi-Agent Games
論文紹介: The Surprising Effectiveness of PPO in Cooperative Multi-Agent Gamesatsushi061452
 
Utilizing Ballerina for Cloud Native Integrations
Utilizing Ballerina for Cloud Native IntegrationsUtilizing Ballerina for Cloud Native Integrations
Utilizing Ballerina for Cloud Native IntegrationsWSO2
 
Observabilityは従来型の監視と何が違うのか(キンドリルジャパン社内勉強会:2022年10月27日発表)
Observabilityは従来型の監視と何が違うのか(キンドリルジャパン社内勉強会:2022年10月27日発表)Observabilityは従来型の監視と何が違うのか(キンドリルジャパン社内勉強会:2022年10月27日発表)
Observabilityは従来型の監視と何が違うのか(キンドリルジャパン社内勉強会:2022年10月27日発表)Hiroshi Tomioka
 
論文紹介:Selective Structured State-Spaces for Long-Form Video Understanding
論文紹介:Selective Structured State-Spaces for Long-Form Video Understanding論文紹介:Selective Structured State-Spaces for Long-Form Video Understanding
論文紹介:Selective Structured State-Spaces for Long-Form Video UnderstandingToru Tamaki
 
Amazon SES を勉強してみる その22024/04/26の勉強会で発表されたものです。
Amazon SES を勉強してみる その22024/04/26の勉強会で発表されたものです。Amazon SES を勉強してみる その22024/04/26の勉強会で発表されたものです。
Amazon SES を勉強してみる その22024/04/26の勉強会で発表されたものです。iPride Co., Ltd.
 
新人研修 後半 2024/04/26の勉強会で発表されたものです。
新人研修 後半        2024/04/26の勉強会で発表されたものです。新人研修 後半        2024/04/26の勉強会で発表されたものです。
新人研修 後半 2024/04/26の勉強会で発表されたものです。iPride Co., Ltd.
 
論文紹介:Video-GroundingDINO: Towards Open-Vocabulary Spatio-Temporal Video Groun...
論文紹介:Video-GroundingDINO: Towards Open-Vocabulary Spatio-Temporal Video Groun...論文紹介:Video-GroundingDINO: Towards Open-Vocabulary Spatio-Temporal Video Groun...
論文紹介:Video-GroundingDINO: Towards Open-Vocabulary Spatio-Temporal Video Groun...Toru Tamaki
 

Último (11)

知識ゼロの営業マンでもできた!超速で初心者を脱する、悪魔的学習ステップ3選.pptx
知識ゼロの営業マンでもできた!超速で初心者を脱する、悪魔的学習ステップ3選.pptx知識ゼロの営業マンでもできた!超速で初心者を脱する、悪魔的学習ステップ3選.pptx
知識ゼロの営業マンでもできた!超速で初心者を脱する、悪魔的学習ステップ3選.pptx
 
Amazon SES を勉強してみる その32024/04/26の勉強会で発表されたものです。
Amazon SES を勉強してみる その32024/04/26の勉強会で発表されたものです。Amazon SES を勉強してみる その32024/04/26の勉強会で発表されたものです。
Amazon SES を勉強してみる その32024/04/26の勉強会で発表されたものです。
 
LoRaWANスマート距離検出センサー DS20L カタログ LiDARデバイス
LoRaWANスマート距離検出センサー  DS20L  カタログ  LiDARデバイスLoRaWANスマート距離検出センサー  DS20L  カタログ  LiDARデバイス
LoRaWANスマート距離検出センサー DS20L カタログ LiDARデバイス
 
LoRaWAN スマート距離検出デバイスDS20L日本語マニュアル
LoRaWAN スマート距離検出デバイスDS20L日本語マニュアルLoRaWAN スマート距離検出デバイスDS20L日本語マニュアル
LoRaWAN スマート距離検出デバイスDS20L日本語マニュアル
 
論文紹介: The Surprising Effectiveness of PPO in Cooperative Multi-Agent Games
論文紹介: The Surprising Effectiveness of PPO in Cooperative Multi-Agent Games論文紹介: The Surprising Effectiveness of PPO in Cooperative Multi-Agent Games
論文紹介: The Surprising Effectiveness of PPO in Cooperative Multi-Agent Games
 
Utilizing Ballerina for Cloud Native Integrations
Utilizing Ballerina for Cloud Native IntegrationsUtilizing Ballerina for Cloud Native Integrations
Utilizing Ballerina for Cloud Native Integrations
 
Observabilityは従来型の監視と何が違うのか(キンドリルジャパン社内勉強会:2022年10月27日発表)
Observabilityは従来型の監視と何が違うのか(キンドリルジャパン社内勉強会:2022年10月27日発表)Observabilityは従来型の監視と何が違うのか(キンドリルジャパン社内勉強会:2022年10月27日発表)
Observabilityは従来型の監視と何が違うのか(キンドリルジャパン社内勉強会:2022年10月27日発表)
 
論文紹介:Selective Structured State-Spaces for Long-Form Video Understanding
論文紹介:Selective Structured State-Spaces for Long-Form Video Understanding論文紹介:Selective Structured State-Spaces for Long-Form Video Understanding
論文紹介:Selective Structured State-Spaces for Long-Form Video Understanding
 
Amazon SES を勉強してみる その22024/04/26の勉強会で発表されたものです。
Amazon SES を勉強してみる その22024/04/26の勉強会で発表されたものです。Amazon SES を勉強してみる その22024/04/26の勉強会で発表されたものです。
Amazon SES を勉強してみる その22024/04/26の勉強会で発表されたものです。
 
新人研修 後半 2024/04/26の勉強会で発表されたものです。
新人研修 後半        2024/04/26の勉強会で発表されたものです。新人研修 後半        2024/04/26の勉強会で発表されたものです。
新人研修 後半 2024/04/26の勉強会で発表されたものです。
 
論文紹介:Video-GroundingDINO: Towards Open-Vocabulary Spatio-Temporal Video Groun...
論文紹介:Video-GroundingDINO: Towards Open-Vocabulary Spatio-Temporal Video Groun...論文紹介:Video-GroundingDINO: Towards Open-Vocabulary Spatio-Temporal Video Groun...
論文紹介:Video-GroundingDINO: Towards Open-Vocabulary Spatio-Temporal Video Groun...
 

C22 スプリットブレインになっても一貫性を保証するインメモリデータグリッド製品 by Taichi Umeda

  • 1. © Hitachi, Ltd. 2013. All rights reserved. 株式会社 日立製作所 情報・通信システム社 スプリットブレインになっても 一貫性を保証する インメモリデータグリッド製品 ITプラットフォーム事業本部 開発統括本部 2013/05/30 梅田多一 db tech showcase 大阪 2013
  • 2. © Hitachi, Ltd. 2013. All rights reserved. 自己紹介
  • 3. © Hitachi, Ltd. 2013. All rights reserved. 2 DB Online http://enterprisezine.jp/dbonline/detail/3991 2000年入社 ・Cosminexus開発 ・Cosminexusテクニカルサポート 仕事のスタイル ・TTP ・GNN
  • 4. © Hitachi, Ltd. 2013. All rights reserved. インメモリデータグリッドって何だ? Contents インメモリデータグリッドの要素技術 強一貫性への挑戦! スプリットブレインになっても一貫性を保証するインメモリデータグリッド製品
  • 5. © Hitachi, Ltd. 2013. All rights reserved. インメモリデータグリッドって 何だ? スプリットブレインになっても一貫性を保証するインメモリデータグリッド製品
  • 6. © Hitachi, Ltd. 2013. All rights reserved. 5 インメモリデータグリッドって何だ? 登場の背景
  • 7. © Hitachi, Ltd. 2013. All rights reserved. 6 登場の背景 ・発信データの爆発的増加(Big Data) ・データを扱うミドルウェアへの要件として 大量発信データの高速処理、リアルタイム分析、大量蓄積データの高速検索、、 ・インメモリデータグリッド、複合イベント処理、超高速DB、、 Big Data モノ の発信 人 の発信 電力メーター 運行情報 カーナビ GPS 監視映像 環境・気象データ 設備監視 物流トレース ICカード利用 診断画像・ 電子カルテ データベース メール・オフィス文書 つぶやき SNS 通話ログ スマートフォン 人の移動 ネット購入 コンテンツダウンロード 動画・画像・音声
  • 8. © Hitachi, Ltd. 2013. All rights reserved. 7 日立の取り組み インメモリデータグリッドって何だ?
  • 9. © Hitachi, Ltd. 2013. All rights reserved. 8 日立の取り組み ①uCosminexus Elastic Application Data store(以下EADs)(C22) ②uCosminexus Stream Data Platform(B14) ③Hitachi Advanced Data Binder プラットフォーム(D24) 現場の状況をいち早く把握 問題の解決 新たな価値の提供 データ 修理指示 売り場への指示 データ ③大量蓄積データの高速検索 ①大量発信データの高速処理 ②大量発信データのリアルタイム分析
  • 10. © Hitachi, Ltd. 2013. All rights reserved. 9 インメモリデータグリッドって何だ? 日立の案件
  • 11. © Hitachi, Ltd. 2013. All rights reserved. 10 日立の案件(電力) 工場 オフィス 戸建 検針値 1日分 スマートメータ 収集サーバから出力される大量の検針値(30分値)を、 一定期間(40日)分DBに格納したい。 大量の検針値を 高速に受信 当日分メモリ保持、日次ジョブ実行による 一日分ファイル出力、一括DBロード
  • 12. © Hitachi, Ltd. 2013. All rights reserved. 11 日立の案件(通信) メディエーション 交換機から出力される大量のRawCDRを、 課金システムや帯域制御システム向けのCDRに編集したい。 RawCDR CDR RawCDR: 接続開始/一定時間経過/HO発生/接続終了などのタイミングで出力される、 接続ID、接続時間、通信量などの情報。 CDR: 同一の接続に対する分割情報であるRawCDRを結合(通信量の合算など)した情報。 大量の接続情報を 高速に受信 同一接続のデータ集合を イベントドリブンに編集
  • 13. © Hitachi, Ltd. 2013. All rights reserved. 12 インメモリデータグリッドって何だ? インメモリデータグリッドの 3つの特徴
  • 14. © Hitachi, Ltd. 2013. All rights reserved. 13 インメモリデータグリッドの3つの特徴 ①インメモリKVSである
  • 15. © Hitachi, Ltd. 2013. All rights reserved. 14 インメモリデータグリッドの3つの特徴 ①インメモリKVS*である ・一意に識別可能な「キー」とそれに対応する「値」 で構成されるデータを保持するインメモリストア ・レスポンス性能 * KVS: Key Value Store Application Server インメモリKVS Key Value Foo A Bar 0 Baz A,0
  • 16. © Hitachi, Ltd. 2013. All rights reserved. 15 インメモリデータグリッドの3つの特徴 ②分散している
  • 17. © Hitachi, Ltd. 2013. All rights reserved. 16 インメモリデータグリッドの3つの特徴 ②分散している ・複数サーバのメモリ上にデータを分散配置 ・スループット性能と拡張性 Key Value Foo A Bar 0 Key Value Baz A,0 Application Server インメモリ分散KVS
  • 18. © Hitachi, Ltd. 2013. All rights reserved. 17 インメモリデータグリッドの3つの特徴 ③実行できる
  • 19. © Hitachi, Ltd. 2013. All rights reserved. 18 インメモリデータグリッドの3つの特徴 ③実行できる ・同時に使うデータを同じ場所に格納する(Grouping*) ・ユーザロジックの分散実行(Distributed Code Execution*) ・ネットワークトラフィックの削減とCPUの活用 * JSR 347: Data Grids for the JavaTM Platform Key Value G1:Foo A G1:Bar 0 G1:Baz A,0 Key Value G2:Foo B G2:Bar 1 G2:Baz B,1 Application Server インメモリデータグリッド グループ処理 ユーザロジック
  • 20. © Hitachi, Ltd. 2013. All rights reserved. 19 まとめ インメモリデータグリッドって何だ?
  • 21. © Hitachi, Ltd. 2013. All rights reserved. 20 大量発信データの高速処理(レスポンス、スループット、スケールアウト) を実現するために以下の特徴を持つもの ・インメモリKVSである ・分散している ・実行できる インメモリデータグリッドって何だ?
  • 22. © Hitachi, Ltd. 2013. All rights reserved. インメモリデータグリッドの 要素技術 (分散基盤編 ) スプリットブレインになっても一貫性を保証するインメモリデータグリッド製品
  • 23. © Hitachi, Ltd. 2013. All rights reserved. 22 インメモリデータグリッドの要素技術 コンシステントハッシング ~分散の技術~
  • 24. © Hitachi, Ltd. 2013. All rights reserved. 23 コンシステントハッシング ・サーバは232の範囲に等分配置 ・Keyのハッシュ値からマスタの保存先を決定 EADs Tool 231-1 | -231 Put Foo A レンジHash(Foo) マスタ サーバ
  • 25. © Hitachi, Ltd. 2013. All rights reserved. 24 インメモリデータグリッドの要素技術 レプリケーション ~冗長化の技術~
  • 26. © Hitachi, Ltd. 2013. All rights reserved. 25 レプリケーション ・多重度定義に従いデータを複製 ・高速化のため非同期 EADs Tool 231-1 | -231 Put Foo A レンジHash(Foo) スレーブ1 スレーブ2 マスタ サーバ
  • 27. © Hitachi, Ltd. 2013. All rights reserved. 26 レプリケーション ・1サーバは複数レンジのデータを保持 EADs Tool 231-1 | -231 スレーブ1 スレーブ2 マスタ
  • 28. © Hitachi, Ltd. 2013. All rights reserved. 27 インメモリデータグリッドの要素技術 マスタ昇格 ~耐障害性の技術~
  • 29. © Hitachi, Ltd. 2013. All rights reserved. 28 マスタ昇格(障害時) ・ハートビートおよびヘルスチェックによる障害検知 ・サーバを切り離しマスタを切り替える EADs Tool 231-1 | -231 スレーブ1 →マスタ 障害
  • 30. © Hitachi, Ltd. 2013. All rights reserved. 29 マスタ昇格(復旧時) ・運用機能によるサーバ追加 ・レンジ単位にデータ転送 EADs Tool 復旧サーバ 復旧レンジ 転送速度
  • 31. © Hitachi, Ltd. 2013. All rights reserved. 30 マスタ昇格(復旧時) EADs Tool ・運用機能によるサーバ追加 ・レンジ単位にデータ転送 復旧サーバ 復旧レンジ 転送速度
  • 32. © Hitachi, Ltd. 2013. All rights reserved. 31 マスタ昇格(復旧時) EADs Tool ・運用機能によるサーバ追加 ・レンジ単位にデータ転送 復旧サーバ 復旧レンジ 転送速度
  • 33. © Hitachi, Ltd. 2013. All rights reserved. 32 マスタ昇格(復旧時) EADs Tool ・サーバを追加しマスタを切り替える 復旧
  • 34. © Hitachi, Ltd. 2013. All rights reserved. 33 整合性と一貫性 インメモリデータグリッドの要素技術
  • 35. © Hitachi, Ltd. 2013. All rights reserved. 34 整合性:マスタとスレーブの値が同じ 一貫性:すべてのクライアントから最新の値が見える 整合性と一貫性 Foo=A Foo=A Foo=A Get Foo Get Foo →A →A
  • 36. © Hitachi, Ltd. 2013. All rights reserved. 35 インメモリデータグリッドの要素技術 一貫性の3つの課題
  • 37. © Hitachi, Ltd. 2013. All rights reserved. 36 ①複製順序不正による不整合 一貫性の3つの課題
  • 38. © Hitachi, Ltd. 2013. All rights reserved. 37 ①通信遅延⇒複製順序不正 ⇒不整合⇒マスタ昇格(永久的障害時)⇒一貫性? ①Put Foo A ①Foo=A ①Foo=B ①Foo=A ②Put Foo B ②Foo=B ②Foo=B ②Foo=A 遅延 一貫性の3つの課題 整合性:マスタとスレーブの値が同じ 一貫性:すべてのクライアントから最新の値が見える
  • 39. © Hitachi, Ltd. 2013. All rights reserved. 38 一貫性の3つの課題 ②複製処理失敗による不整合
  • 40. © Hitachi, Ltd. 2013. All rights reserved. 39 ②一時的障害(サーバ、ネットワーク)⇒複製処理失敗 ⇒不整合⇒マスタ昇格(永久的障害時)⇒一貫性? CAS Bar 0 1 Bar=01 Bar=01 Bar=0 失敗 成功 CAS: Compare and Swap 一貫性の3つの課題 整合性:マスタとスレーブの値が同じ 一貫性:すべてのクライアントから最新の値が見える
  • 41. © Hitachi, Ltd. 2013. All rights reserved. 40 ③スプリットブレインによる不整合 一貫性の3つの課題
  • 42. © Hitachi, Ltd. 2013. All rights reserved. 41 ③L2スイッチの障害⇒ネットワーク分断 ⇒複数マスタ⇒一貫性? ①Put Foo A ②Put Foo B ①Foo=A ②Foo=B ②Foo=B マスタはこのサーバだ! マスタはこのサーバだ! スプリット 一貫性の3つの課題 整合性:マスタとスレーブの値が同じ 一貫性:すべてのクライアントから最新の値が見える
  • 43. © Hitachi, Ltd. 2013. All rights reserved. 42 インメモリデータグリッドの要素技術 参考
  • 44. © Hitachi, Ltd. 2013. All rights reserved. 43 インメモリデータグリッドの要素技術 ゴシッププロトコル ~結果整合性の技術~
  • 45. © Hitachi, Ltd. 2013. All rights reserved. 44 ゴシッププロトコル ・サーバ間で情報交換 ・古いデータは新しいデータで上書き ・マスタとスレーブの値がそのうち同じ(結果整合性) ・最新の値が見えるとは限らない 整合性:マスタとスレーブの値が同じ 一貫性:すべてのクライアントから最新の値が見える
  • 46. © Hitachi, Ltd. 2013. All rights reserved. 45 インメモリデータグリッドの要素技術 リードリペア ~結果整合性の技術~
  • 47. © Hitachi, Ltd. 2013. All rights reserved. 46 リードリペア ・読み込み処理時に複数のサーバからデータを取得 ・古いデータは新しいデータで上書き ・マスタとスレーブの値がそのうち同じ(結果整合性) ・最新の値が見えるとは限らない(確度を調整可能(QUORUM)) 整合性:マスタとスレーブの値が同じ 一貫性:すべてのクライアントから最新の値が見える
  • 48. © Hitachi, Ltd. 2013. All rights reserved. 47 インメモリデータグリッドの要素技術 まとめ
  • 49. © Hitachi, Ltd. 2013. All rights reserved. 48 インメモリデータグリッドの要素技術 要素技術 ・コンシステントハッシング ・レプリケーション ・マスタ昇格 ・ゴシッププロトコル ・リードリペア 一貫性の3つの課題 ①複製順序不正による不整合 ②複製処理失敗による不整合 ③スプリットブレインによる不整合
  • 50. © Hitachi, Ltd. 2013. All rights reserved. 強一貫性への挑戦! スプリットブレインになっても一貫性を保証するインメモリデータグリッド製品
  • 51. © Hitachi, Ltd. 2013. All rights reserved. 50 強一貫性への挑戦! 解決へのアプローチ
  • 52. © Hitachi, Ltd. 2013. All rights reserved. 51 解決へのアプローチ ①複製順序不正による不整合 ②複製処理失敗による不整合 ③スプリットブレインによる不整合 分散合意アルゴリズムPaxos*の適用 * The Part-Time Parliament LESLIE LAMPORT, 1998
  • 53. © Hitachi, Ltd. 2013. All rights reserved. 52 強一貫性への挑戦! Paxosとは
  • 54. © Hitachi, Ltd. 2013. All rights reserved. Paxosとは 53 サーバの集合が同じ処理を同じ順番で実行するためのアルゴリズム Atomic Broadcast 1番目の処理 2番目の処理 i番目の処理 put(k1,v1) Server1 Server2 Server3 put(k1,v1) put(k1,v1) remove(k1) remove(k1) remove(k1) put(k1,v2) put(k1,v2) put(k1,v2) キー バリュー k1 v2 整合
  • 55. © Hitachi, Ltd. 2013. All rights reserved. Paxosとは 54 Proposer: 1. i番目の処理を提案 Acceptor: 2. Acceptor間で過半数承認(i番目の処理を合意) 3. i番目の処理を実行 ※i-1番目までの処理を実行していなければ、 i-1番目までの処理を他のAcceptorから取得して実行(FillGaps)
  • 56. © Hitachi, Ltd. 2013. All rights reserved. 55 強一貫性への挑戦! 一貫性保証のための3つの実装
  • 57. © Hitachi, Ltd. 2013. All rights reserved. 56 一貫性保証のための3つの実装 ①複製順序不正による不整合 の回避
  • 58. © Hitachi, Ltd. 2013. All rights reserved. ①複製順序不正による不整合の回避 57 Proposer:マスタを持つサーバ Acceptor:マスタ、スレーブ1、スレーブ2を持つサーバ+スペア*×2 実行 キュー 実行 スレッド マスタ サーバ1 スレーブ1 スレーブ2 マスタ サーバ2 スレーブ1 スレーブ2 マスタ サーバ3 スレーブ1 スレーブ2 マスタ サーバ4 スレーブ1 スレーブ2 マスタ サーバ5 スレーブ1 スレーブ2 put(k,v) ストア * スペア:過半数承認用(2多重障害対応)。ストア操作なし。 レンジ用 Paxos
  • 59. © Hitachi, Ltd. 2013. All rights reserved. ①複製順序不正による不整合の回避 58 Proposer:i番目の処理を提案 Acceptor:Acceptor間で過半数承認(i番目の処理を合意) 実行 キュー 実行 スレッド マスタ サーバ1 スレーブ1 スレーブ2 マスタ サーバ2 スレーブ1 スレーブ2 マスタ サーバ3 スレーブ1 スレーブ2 マスタ サーバ4 スレーブ1 スレーブ2 マスタ サーバ5 スレーブ1 スレーブ2 put(k,v) ストア i ok ok ok ok ok レンジ用 Paxos
  • 60. © Hitachi, Ltd. 2013. All rights reserved. ①複製順序不正による不整合の回避 59 Acceptor:i番目の処理を実行 ”①複製順序不正による不整合”は発生しない! 実行 キュー 実行 スレッド マスタ サーバ1 スレーブ1 スレーブ2 マスタ サーバ2 スレーブ1 スレーブ2 マスタ サーバ3 スレーブ1 スレーブ2 マスタ サーバ4 スレーブ1 スレーブ2 マスタ サーバ5 スレーブ1 スレーブ2 put(k,v) ストア i i i レンジ用 Paxos
  • 61. © Hitachi, Ltd. 2013. All rights reserved. ①複製順序不正による不整合の回避 60 サーバの集合が同じ処理を同じ順番で実行する 同じ処理ができなければ閉塞(一貫性>可用性) 実行 キュー 実行 スレッド マスタ サーバ1 スレーブ1 スレーブ2 マスタ サーバ2 スレーブ1 スレーブ2 マスタ サーバ3 スレーブ1 スレーブ2 マスタ サーバ4 スレーブ1 スレーブ2 マスタ サーバ5 スレーブ1 スレーブ2 put(k,v) ストア i i i レンジ用 Paxos 失敗
  • 62. © Hitachi, Ltd. 2013. All rights reserved. 61 ②複製処理失敗による不整合 の対処 一貫性保証のための3つの実装
  • 63. © Hitachi, Ltd. 2013. All rights reserved. ②複製処理失敗による不整合の対処 62 一時的障害(サーバ、ネットワーク) 実行 キュー 実行 スレッド マスタ サーバ1 スレーブ1 スレーブ2 マスタ サーバ2 スレーブ1 スレーブ2 マスタ サーバ3 スレーブ1 スレーブ2 マスタ サーバ4 スレーブ1 スレーブ2 マスタ サーバ5 スレーブ1 スレーブ2 cas(k,v1,v2) ストア 一時的障害 レンジ用 Paxos
  • 64. © Hitachi, Ltd. 2013. All rights reserved. ②複製処理失敗による不整合の対処 63 Proposer:i番目の処理を提案 Acceptor:Acceptor間で過半数承認(i番目の処理を合意) 実行 キュー 実行 スレッド マスタ サーバ1 スレーブ1 スレーブ2 マスタ サーバ2 スレーブ1 スレーブ2 マスタ サーバ3 スレーブ1 スレーブ2 マスタ サーバ4 スレーブ1 スレーブ2 マスタ サーバ5 スレーブ1 スレーブ2 ストア i cas(k,v1,v2) 一時的障害 ok ok ok ok レンジ用 Paxos
  • 65. © Hitachi, Ltd. 2013. All rights reserved. ②複製処理失敗による不整合の対処 64 Acceptor:i番目の処理を実行 実行 キュー 実行 スレッド マスタ サーバ1 スレーブ1 スレーブ2 マスタ サーバ2 スレーブ1 スレーブ2 マスタ サーバ3 スレーブ1 スレーブ2 マスタ サーバ4 スレーブ1 スレーブ2 マスタ サーバ5 スレーブ1 スレーブ2 ストア i i cas(k,v1,v2) 一時的障害 レンジ用 Paxos
  • 66. © Hitachi, Ltd. 2013. All rights reserved. ②複製処理失敗による不整合の対処 65 不整合 実行 キュー 実行 スレッド マスタ サーバ1 スレーブ1 スレーブ2 マスタ サーバ2 スレーブ1 スレーブ2 マスタ サーバ3 スレーブ1 スレーブ2 マスタ サーバ4 スレーブ1 スレーブ2 マスタ サーバ5 スレーブ1 スレーブ2 ストア i i cas(k,v2,v3) 不整合 レンジ用 Paxos
  • 67. © Hitachi, Ltd. 2013. All rights reserved. ②複製処理失敗による不整合の対処 66 Proposer:i+1番目の処理を提案 Acceptor:Acceptor間で過半数承認(i+1番目の処理を合意) 実行 キュー 実行 スレッド マスタ サーバ1 スレーブ1 スレーブ2 マスタ サーバ2 スレーブ1 スレーブ2 マスタ サーバ3 スレーブ1 スレーブ2 マスタ サーバ4 スレーブ1 スレーブ2 マスタ サーバ5 スレーブ1 スレーブ2 ストア i i i+1 cas(k,v2,v3) 不整合 レンジ用 Paxos ok ok ok ok ok
  • 68. © Hitachi, Ltd. 2013. All rights reserved. ②複製処理失敗による不整合の対処 67 Acceptor:FillGapsをおこなってからi+1番目の処理を実行 実行 キュー 実行 スレッド マスタ サーバ1 スレーブ1 スレーブ2 マスタ サーバ2 スレーブ1 スレーブ2 マスタ サーバ3 スレーブ1 スレーブ2 マスタ サーバ4 スレーブ1 スレーブ2 マスタ サーバ5 スレーブ1 スレーブ2 ストア i i i i+1 i+1 i+1 FillGaps cas(k,v2,v3) 不整合 レンジ用 Paxos
  • 69. © Hitachi, Ltd. 2013. All rights reserved. ②複製処理失敗による不整合の対処 68 不整合 永久的障害によるマスタ昇格 実行 キュー 実行 スレッド マスタ サーバ1 スレーブ1 スレーブ2 マスタ サーバ2 マスタ スレーブ2 マスタ サーバ3 スレーブ1 スレーブ2 マスタ サーバ4 スレーブ1 スレーブ2 ストア i i マスタ昇格 マスタ サーバ5 スレーブ1 スレーブ2 永久的障害 不整合 レンジ用 Paxos get(k)
  • 70. © Hitachi, Ltd. 2013. All rights reserved. ②複製処理失敗による不整合の対処 69 Acceptor:マスタ昇格後はFillGapsをおこなってからgetを受付 ”②複製処理失敗による不整合”が発生しても一貫性を保証する! 実行 キュー 実行 スレッド マスタ サーバ1 スレーブ1 スレーブ2 マスタ サーバ2 マスタ スレーブ2 マスタ サーバ3 スレーブ1 スレーブ2 マスタ サーバ4 スレーブ1 スレーブ2 get(k) ストア i i iFillGaps マスタ昇格 マスタ サーバ5 スレーブ1 スレーブ2 永久的障害 レンジ用 Paxos 不整合
  • 71. © Hitachi, Ltd. 2013. All rights reserved. ②複製処理失敗による不整合の対処 70 実行 キュー 実行 スレッド マスタ サーバ1 スレーブ1 スレーブ2 マスタ サーバ2 マスタ スレーブ2 マスタ サーバ3 スレーブ1 スレーブ2 マスタ サーバ4 スレーブ1 スレーブ2 get(k) ストア i i FillGaps マスタ昇格 マスタ サーバ5 スレーブ1 スレーブ2 永久的障害 レンジ用 Paxos サーバの集合が同じ処理を同じ順番で実行する 同じ順番でできなければ閉塞(一貫性>可用性) 不整合 失敗
  • 72. © Hitachi, Ltd. 2013. All rights reserved. 71 ③スプリットブレインによる不整合 の対処 一貫性保証のための3つの実装
  • 73. © Hitachi, Ltd. 2013. All rights reserved. ③スプリットブレインによる不整合の対処 72 L2スイッチの障害 実行 キュー 実行 スレッド マスタ サーバ1 スレーブ1 スレーブ2 マスタ サーバ3 スレーブ1 スレーブ2 マスタ サーバ4 スレーブ1 スレーブ2 マスタ サーバ5 スレーブ1 スレーブ2 ストア マスタ サーバ2 スレーブ1 スレーブ2 スプリット 3× 4× 5× 3× 4× 5× 1× 2× 1× 2× 1× 2× クラスタ用 Paxos
  • 74. © Hitachi, Ltd. 2013. All rights reserved. ③スプリットブレインによる不整合の対処 73 実行 キュー 実行 スレッド マスタ サーバ1 スレーブ1 スレーブ2 マスタ サーバ3 スレーブ1 スレーブ2 マスタ サーバ4 スレーブ1 スレーブ2 マスタ サーバ5 スレーブ1 スレーブ2 ストア マスタ サーバ2 スレーブ1 スレーブ2 スプリット 3× 4× 5× 3× 4× 5× 1× 2× 1× 2× 1× 2× Proposer:障害を検知したサーバ Acceptor:すべてのサーバ クラスタ用 Paxos
  • 75. © Hitachi, Ltd. 2013. All rights reserved. ③スプリットブレインによる不整合の対処 74 実行 キュー 実行 スレッド マスタ サーバ1 スレーブ1 スレーブ2 マスタ サーバ3 スレーブ1 スレーブ2 マスタ サーバ4 スレーブ1 スレーブ2 マスタ サーバ5 スレーブ1 スレーブ2 ストア マスタ サーバ2 スレーブ1 スレーブ2 スプリット 3× 4× 5× 3× 4× 5× 1× 2× 1× 2× 1× 2× Proposer:i番目の処理を提案 Acceptor:Acceptor間で過半数承認(i番目の処理を合意) ok ok ok i i i ok ok ok i+1 i+1 i+1 ok ok i i ok ok i+1 i+1 ok ok i+2 i+2 合意 クラスタ用 Paxos
  • 76. © Hitachi, Ltd. 2013. All rights reserved. ③スプリットブレインによる不整合の対処 75 実行 キュー 実行 スレッド マスタ サーバ1 スレーブ1 スレーブ2 マスタ サーバ3 スレーブ1 スレーブ2 マスタ サーバ4 スレーブ1 スレーブ2 マスタ サーバ5 スレーブ1 スレーブ2 ストア マスタ サーバ2 スレーブ1 スレーブ2 スプリット 3× 4× 5× 3× 4× 5× 1× 2× 1× 2× 1× 2× Acceptor:i番目の処理を実行 ok ok i i ok ok i+1 i+1 ok ok i+2 i+2 クラスタ用 Paxos ii+1 ii+1 ii+1
  • 77. © Hitachi, Ltd. 2013. All rights reserved. マスタ サーバ1 スレーブ1 スレーブ2 マスタ サーバ2 スレーブ1 スレーブ2 ③スプリットブレインによる不整合の対処 76 実行 キュー 実行 スレッド マスタ サーバ3 マスタ マスタ マスタ サーバ4 スレーブ1 スレーブ2 マスタ サーバ5 スレーブ1 スレーブ2 ストア スプリット 3× 4× 5× 3× 4× 5× 1× 2× 1× 2× 1× 2× クラスタ用 Paxos get(k) get(k) ok ok i i ok ok i+1 i+1 ok ok i+2 i+2 マスタ昇格 FillGaps ii+1 ii+1 ii+1 不整合 複数マスタ 不整合 不整合
  • 78. © Hitachi, Ltd. 2013. All rights reserved. マスタ サーバ1 スレーブ1 スレーブ2 マスタ サーバ2 スレーブ1 スレーブ2 ③スプリットブレインによる不整合の対処 77 実行 キュー 実行 スレッド マスタ サーバ3 マスタ マスタ マスタ サーバ4 スレーブ1 スレーブ2 マスタ サーバ5 スレーブ1 スレーブ2 ストア スプリット 3× 4× 5× 3× 4× 5× 1× 2× 1× 2× 1× 2× クラスタ用 Paxos get(k) get(k) ok ok i i ok ok i+1 i+1 ok ok i+2 i+2 マスタ昇格 FillGaps 失敗 成功 ii+1 ii+1 ii+1 Acceptor:過半数サーバ縮退の提案が通らなければgetを拒否 ”③スプリットブレインによる不整合”が発生しても一貫性を保証する! 不整合 不整合
  • 79. © Hitachi, Ltd. 2013. All rights reserved. 78 強一貫性への挑戦! まとめ
  • 80. © Hitachi, Ltd. 2013. All rights reserved. 79 強一貫性への挑戦! Paxos ・サーバの集合が同じ処理を同じ順番で実行するためのアルゴリズム 一貫性保証のための3つの実装 ①複製順序不正による不整合の回避 ②複製処理失敗による不整合の対処 ③スプリットブレインによる不整合の対処
  • 81. © Hitachi, Ltd. 2013. All rights reserved.© Hitachi, Ltd. 2013. All rights reserved. 80 お知らせ 12年10月から新連載がスタート! □ 毎月、日立のデータベースの最新情報をお伝えします。 DBOnline 日立のデータベース 検索 日立の国産データベース シリーズが紹介されている 「国産」タブが新設! 日立の「Dr.SQL」登場!-土田正士さん 日本データベース学会 副会長 50年後には、データベースは なくなっている?! 日立のデータベース開発基地に潜入 開発者に突撃インタビュー © Hitachi, Ltd. 2013. All rights reserved.
  • 82. © Hitachi, Ltd. 2013. All rights reserved. • Javaは,Oracle Corporation 及びその子会社,関連会社の米国及びその他の国における登録商標です。 • その他、記載の会社名、製品名は、それぞれの会社の商標または登録商標です。 • 製品の改良により予告なく記載されている仕様が変更になることがあります。 他社商品名、商標等の引用に関する表示
  • 83. © Hitachi, Ltd. 2013. All rights reserved. 株式会社 日立製作所 情報・通信システム社 スプリットブレインになっても一貫性を保証するインメモリデータグリッド製品 ITプラットフォーム事業本部 開発統括本部 2013/05/30 梅田多一 END db tech showcase 大阪 2013
  • 84. © Hitachi, Ltd. 2013. All rights reserved. 83