SlideShare ist ein Scribd-Unternehmen logo
1 von 98
Downloaden Sie, um offline zu lesen
コピーライトの表示については、作成元で責任を持って適宜変更してください。 ⇒ © Hitachi, Ltd. 2015. All rights reserved.
株式会社 日立製作所 情報・通信システム社
ITプラットフォーム事業本部
2015/06/12
和田 洋祐
データ一貫性にこだわる
日立のインメモリ分散KVS
~こだわりの理由と実現方法とは~
© Hitachi, Ltd. 2015. All rights reserved.
自己紹介
1
和田 洋祐(わだ ようすけ)
2010年度入社
ミドルウェア設計・開発
分散KVS歴 3年
COBOL歴 2年
© Hitachi, Ltd. 2015. All rights reserved.
1. 分散KVSとは何か
2. 分散KVSの悩み事 【一貫性】
3.一貫性へのこだわりと実現方法
Contents
2
© Hitachi, Ltd. 2015. All rights reserved.
1. 分散KVSとは何か
3
© Hitachi, Ltd. 2015. All rights reserved.
分散KVS、簡単に言えば・・・
4
RDBと同じ、「データを管理するソフトウエア」
だけど、RDBではない。
KVSというデータ構造を持つ
RDB 分散KVS
KVS = Key Value Store
データ管理 データ管理
Table
Table
Table
Key Value
Key Value
Key Value
Key Value
Key Value
© Hitachi, Ltd. 2015. All rights reserved.
登場の背景
5
データ管理と言えばRDB
RDB
システムの
データ
システムの
データ
システムの
データ
© Hitachi, Ltd. 2015. All rights reserved.
システムの
データシステムの
データ
システムの
データ
登場の背景
6
RDB
システムの
データ
システムの
データ
システムの
データ
システムの
データ
Table
Table
Table
Table
複雑化する
テーブル
大量リクエスト
スケールアップ
の限界
求められる
耐障害性
大量データ システム開発の
短期化
データ管理と言えばRDB
© Hitachi, Ltd. 2015. All rights reserved.
登場の背景
7
システムの
データ
システムの
データ
システムの
データ
システムの
データ
システムの
データ
システムの
データ
KVS KVS KVS
KVS
RDBを補う形で分散KVSは登場した。
クラスタリング
© Hitachi, Ltd. 2015. All rights reserved.
分散KVSの具体的な特徴
8
高スループット
スケーラビリティ
高可用性
© Hitachi, Ltd. 2015. All rights reserved.
高スループット
9
各サーバで分散処理する
A aaa
write
write
write
write B
write A
write C
B bbb
C ccc
© Hitachi, Ltd. 2015. All rights reserved.
スケーラビリティ
10
簡単にスケールアウトできる
A aaa
D ddd
B bbb
C ccc
write B
write A
write C
write D
© Hitachi, Ltd. 2015. All rights reserved.
高可用性
11
障害が起きても、他のサーバで業務継続
A aaa
C ccc
D ddd
D ddd
B bbb
A aaa
C ccc
B bbb
同じデータを
複数サーバで保持する
get D
© Hitachi, Ltd. 2015. All rights reserved.
A aaa
C ccc
D ddd
D ddd
B bbb
A aaa
C ccc
B bbb
高可用性
12
障害が起きても、他のサーバで業務継続
マシンが壊れても
他のマシンからデータが
取れる。
♪
get D
© Hitachi, Ltd. 2015. All rights reserved.
分散KVSの使われ方
13
RDB
バッファ キャッシュ
メッセージング ストア
write read
add take update
高可用性を活かした構成
高スループットを活かした構成
update
© Hitachi, Ltd. 2015. All rights reserved.
具体例:コンテンツキャッシュ
14
HITACHI Net Shopp ing
商品DB
DBのキャッシュとして,大量アクセスに対応
ECサイト分散KVS
© Hitachi, Ltd. 2015. All rights reserved.
具体例:センサーデータバッファリング
15
1000万超の検針装置から数分おきにデータ発信
検針装置 電力会社分散KVS
© Hitachi, Ltd. 2015. All rights reserved.
携帯電話
具体例:高速メッセージング
16
メールサーバ1台あたり、1時間に1300万通
管理システム分散KVS
© Hitachi, Ltd. 2015. All rights reserved.
具体例:無停止基幹システム
17
搬入
分散KVS
管理
配送
物流センターの業務無停止化
© Hitachi, Ltd. 2015. All rights reserved.
分散KVSとは何か -まとめ-
18
ビッグデータ時代のデータ管理製品
高スループット・スケーラビリティ・高可用性
KVS構造でも使い方は多種多様
© Hitachi, Ltd. 2015. All rights reserved.
2. 分散KVSの悩み事 【一貫性】
19
© Hitachi, Ltd. 2015. All rights reserved.
データの一貫性ってどういうこと?
20
分散したデータの内容が同じであること
C ccc
D ddd
D ddd
A aaawrite D
get D
© Hitachi, Ltd. 2015. All rights reserved.
一貫性って当たり前じゃないの?
21
対策しないと簡単に崩れます
© Hitachi, Ltd. 2015. All rights reserved.
難関:ダウンの誤検知
22
通信が
できない?
ダウン?Write A=bbb
A aaa
A aaa
Aを更新
します
スプリットブレインが起きたとき・・・
A aaa
© Hitachi, Ltd. 2015. All rights reserved.
難関:ダウンの誤検知
23
Write A=bbb
Write A=ccc
Aの処理
は引き継
ぎます。
A bbb
A ccc
A aaa
他から
応答が
来ない?
スプリットブレインが起きたとき・・・
© Hitachi, Ltd. 2015. All rights reserved.
難関:ダウンの誤検知
24
Write A=bbb
Write A=ccc
Aはこっちの
担当だよ?
引き継ぎ
済みですよ?
A bbb
A ccc
A ???
どっちを
信じれば・・
バチバチ
© Hitachi, Ltd. 2015. All rights reserved.
一貫性には強度がある
25
結果整合性 強一貫性
強弱 一貫性の強度
© Hitachi, Ltd. 2015. All rights reserved.
結果整合性
26
A a1 A a2
データがずれることを許容
A a1 A a2
今どんな
感じ?
Aがズレて
ますね
A a2 A a2
互いに確認して修正
いつかは一致する
© Hitachi, Ltd. 2015. All rights reserved.
中間的な一貫性
27
A a1 A a1
安定状態で一貫性あり
A a1 A a1
苦手なパターンの障害が発生すると
A a2 A a3
ずれてしまうことがある
相手と
通信できない
ダウンしたの
かな?
© Hitachi, Ltd. 2015. All rights reserved.
強一貫性
28
A a1 A a1
安定状態で一貫性あり
A a1 A a1
A a2 A a2
ずれることはない
様々なパターンの障害が発生しても
© Hitachi, Ltd. 2015. All rights reserved.
一貫性には強度がある
29
崩れても良い
いつか一致する。
苦手な障害で
崩れてしまう。
多様な障害でも
一貫性あり。
結果整合性 強一貫性
強弱 一貫性の強度
© Hitachi, Ltd. 2015. All rights reserved.
一貫性が崩れるとどうなるの? (ケース1)
30
A ---
C ---
D M
B ---
C ---
B ---
♪
write D Nさん
たとえばECサイトで予約するとき・・・
D N
A ---
HITACHI Net Shopp ing
Nさん
♪
Mさん
write D Mさん
商品D
限定1名様
© Hitachi, Ltd. 2015. All rights reserved.
一貫性が崩れるとどうなるの? (ケース1)
31
A ---
C ---
D M
B ---
C ---
B ---
異なるデータが格納されてしまう。
D N
A ---
HITACHI Net Shopp ing
どっちが
正しいの?
管理者Lさん
get D
商品D
限定1名様
© Hitachi, Ltd. 2015. All rights reserved.
一貫性が崩れるとどうなるの? (ケース2)
32
A ---
C ---
D ---
B ---
C ---
B ---
♪
write D Nさん
たとえばECサイトで予約するとき・・・
D N
A ---
HITACHI Net Shopp ing
Nさん
商品D
限定1名様
© Hitachi, Ltd. 2015. All rights reserved.
D N
A ---
一貫性が崩れるとどうなるの? (ケース2)
33
A ---
C ---
D ---
B ---
C ---
B ---
不整合な時に障害が起きると
HITACHI Net Shopp ing
商品D
限定1名様
© Hitachi, Ltd. 2015. All rights reserved.
A ---
D N
一貫性が崩れるとどうなるの? (ケース2)
34
A ---
C ---
D ---
B ---
C ---
B ---
♪
get D
HITACHI Net Shopp ing
Mさん
商品D
限定1名様
情報が消えてしまう。
© Hitachi, Ltd. 2015. All rights reserved.
一貫性には強度がある
35
崩れても良い
いつか一致する。
苦手な障害で
崩れてしまう。
多様な障害でも
一貫性あり。
性能 速極速
メール
チケット予約
課金システム
コンテンツキャッシュ
センサー監視
得意分野
結果整合性 強一貫性
強弱 一貫性の強度
© Hitachi, Ltd. 2015. All rights reserved.
分散KVSの悩み事 【一貫性】 -まとめ-
36
一貫性とは、分散したデータが揃っていること
一貫性にも強度がある(結果整合性 ~ 強一貫性)
強度ごとに適材適所がある。
強度が強いほど,多様なシステムに適用しやすい。
© Hitachi, Ltd. 2015. All rights reserved.
3. 一貫性へのこだわりと実現方法
37
© Hitachi, Ltd. 2015. All rights reserved.
まずは・・・
38
一貫性について復習
© Hitachi, Ltd. 2015. All rights reserved.
一貫性が崩れるとどうなるの? (ケース1)
39
A ---
C ---
D M
B ---
C ---
B ---
異なるデータが格納されてしまう。
D N
A ---
HITACHI Net Shopp ing
どっちが
正しいの?
管理者Lさん
get D
商品D
限定1名様
© Hitachi, Ltd. 2015. All rights reserved.
A ---
D N
一貫性が崩れるとどうなるの? (ケース2)
40
A ---
C ---
D ---
B ---
C ---
B ---
♪
get D
HITACHI Net Shopp ing
Mさん
商品D
限定1名様
情報が消えてしまう。
© Hitachi, Ltd. 2015. All rights reserved.
一貫性が崩れる原因
41
Write A=bbb
Write A=ccc
Aの処理
は引き継
ぎます。
A bbb
A ccc
A aaa
他から
応答が
来ない?
© Hitachi, Ltd. 2015. All rights reserved.
一貫性には強度がある
42
結果整合性 強一貫性
強弱 一貫性の強度
崩れても良い
いつか一致する。
苦手な障害で
崩れてしまう。
多様な障害でも
一貫性あり。
性能 速極速
メール
チケット予約
課金システム
コンテンツキャッシュ
センサー監視
得意分野
© Hitachi, Ltd. 2015. All rights reserved.
日立の分散KVSへの取り組み
43
Big Data
モノ の発信
人 の発信
電力メーター
運行情報
カーナビ
GPS
監視映像
環境・気象データ
設備監視
物流トレース
ICカード利用
診断画像・
電子カルテ
データベース
メール・オフィス文書
つぶやき
SNS
通話ログ
スマートフォン
人の移動
ネット購入
コンテンツダウンロード
動画・画像・音声
データ不整合によるシステムトラブルは許容されない
© Hitachi, Ltd. 2015. All rights reserved.
日立の分散KVSへの取り組み
44
強一貫性の分散KVS
EADS
(Hitachi Elastic Application Data Store)
© Hitachi, Ltd. 2015. All rights reserved.
強一貫性 の 実現方法
45
分散合意アルゴリズム
Paxos
© Hitachi, Ltd. 2015. All rights reserved.
分散合意アルゴリズムとは?
46
みんなで「やることを決める」ための仕組み
Write A=bbb Write A=ccc
Aのデータを
cccに更新しよう
A bbb A ccc
Aのデータを
bbbに更新しよう
それぞれが,勝手に「やることを決める」と・・・
一貫性は崩れる
© Hitachi, Ltd. 2015. All rights reserved.
分散合意アルゴリズムとは?
47
みんなで「やることを決める」ための仕組み
Write A=bbb Write A=ccc
Aの件,
了解しました。
A bbb A bbb
Aのデータを
bbbにしたい
あらかじめ,更新内容を決めてから実行すれば
一貫性は保たれる
© Hitachi, Ltd. 2015. All rights reserved.
そんなに難しいこと?
48
テレビ会議をイメージしてください。
ちゃんと決定できますか?
network
通信到着順序は
各人でバラバラ
急用で席を
外す人もいる
通信が
途切れる
複数人が
発言する
© Hitachi, Ltd. 2015. All rights reserved.
そんなに難しいこと?
49
テレビ会議をイメージしてください。
ちゃんと決定できますか?
networkそば
牛丼
パスタ電話中
通信到着順序は
各人でバラバラ
急用で席を
外す人もいる
通信が
途切れる
複数人が
発言する
© Hitachi, Ltd. 2015. All rights reserved.
Paxosはどのように「決定」しているのか
50
更新内容と順序を多数決
決定内容の補完
事前の進捗確認
© Hitachi, Ltd. 2015. All rights reserved.
更新内容と順序を「提案」する
EADS2
EADS3
EADS4
EADS5
EADS1
更新内容と順序を多数決
51
Slave
Slave
Master
A ---
A ---
A ---
[1] write A
するよ!
© Hitachi, Ltd. 2015. All rights reserved.
決定は過半数承認(多数決)で行う
EADS2
EADS3
EADS4
EADS5
EADS1
更新内容と順序を多数決
52
[1] write A
承認!
[1] write A
するよ!
Slave
Slave
Master
[1] write A
承認!
A ---
A ---
A ---
© Hitachi, Ltd. 2015. All rights reserved.
承認した内容は覚えておく。
EADS2
EADS3
EADS4
EADS5
EADS1
更新内容と順序を多数決
53
[1] write A
承認!
[1] write A
するよ!
Slave
Slave
Master
[1] write A
承認!
[1] write A
[1] write A
[1] write A
A ---
A ---
A ---
© Hitachi, Ltd. 2015. All rights reserved.
多数決を勝ち取ったら「決定」したことを通知する。
EADS2
EADS3
EADS4
EADS5
EADS1
更新内容と順序を多数決
54
[1] は決定
しました
Slave
Slave
Master
A ---
A ---
A ---
[1] write A
[1] write A
[1] write A
© Hitachi, Ltd. 2015. All rights reserved.
通知を受けたら更新内容を反映する。
EADS2
EADS3
EADS4
EADS5
EADS1
更新内容と順序を多数決
55
Slave
Slave
Master
A data
A data
A data
[1] write A
[1] write A
[1] write A
© Hitachi, Ltd. 2015. All rights reserved.
もし障害が起きていたら・・・
EADS2
EADS3
EADS4
EADS5
EADS1
更新内容と順序を多数決
56
Slave
Slave
Master
A ---
A ---
A ---
[1] write A
するよ!
© Hitachi, Ltd. 2015. All rights reserved.
他が承認してくれるので,「決定」できる。
EADS2
EADS3
EADS4
EADS5
EADS1
更新内容と順序を多数決
57
Slave
Slave
Master
A ---
A ---
A ---
[1] write A
承認!
[1] write A
するよ!
[1] write A
承認!
© Hitachi, Ltd. 2015. All rights reserved.
承認した内容を覚えておく。
EADS2
EADS3
EADS4
EADS5
EADS1
更新内容と順序を多数決
58
[1] write A
承認!
[1] write A
するよ!
Slave
Slave
Master
A ---
A ---
A ---
[1] write A
承認![1] write A
[1] write A
[1] write A
© Hitachi, Ltd. 2015. All rights reserved.
多数決を勝ち取って「決定」したことを通知する。
EADS2
EADS3
EADS4
EADS5
EADS1
更新内容と順序を多数決
59
[1] は決定
しました
Slave
Slave
Master
A ---
A ---
A ---
[1] write A
[1] write A
[1] write A
© Hitachi, Ltd. 2015. All rights reserved.
更新を反映する。
EADS2
EADS3
EADS4
EADS5
EADS1
更新内容と順序を多数決
60
Slave
Slave
Master
A data
A data
A ---
[1] write A
[1] write A
[1] write A
© Hitachi, Ltd. 2015. All rights reserved.
更新内容と順序を多数決
61
Paxosは過半数承認で決定するから,
一部障害では止まらない。
© Hitachi, Ltd. 2015. All rights reserved.
障害から回復したら・・
EADS2
EADS3
EADS4
EADS5
EADS1
決定内容の補完
62
Slave
Slave
Master
A data
A data
A ---
[1] write A
[1] write A
[1] write A
[2] change A
するよ!
※末尾に
2を付ける
© Hitachi, Ltd. 2015. All rights reserved.
新しい更新の多数決に参加する
EADS2
EADS3
EADS4
EADS5
EADS1
決定内容の補完
63
Slave
Slave
Master
A data
A data
A ---
[1] write A
[1] write A
[1] write A
[2] change A
するよ!
[2] change A
承認!
[2] change A
承認!
© Hitachi, Ltd. 2015. All rights reserved.
承認した内容を覚える
EADS2
EADS3
EADS4
EADS5
EADS1
決定内容の補完
64
Slave
Slave
Master
A data
A data
A ---
[1] write A
[1] write A
[2] change A
[1] write A
[2] change A
[2] change A
するよ!
[2] change A
承認!
[2] change A
承認!
[2] change A
© Hitachi, Ltd. 2015. All rights reserved.
多数決を勝ち取って「決定」したことを通知する。
EADS2
EADS3
EADS4
EADS5
EADS1
決定内容の補完
65
[2] は決定
しました
Slave
Slave
Master
A data
A data
A ---
[1] write A
[1] write A
[2] change A
[1] write A
[2] change A
[2] change A
© Hitachi, Ltd. 2015. All rights reserved.
更新を反映しようとするけど・・・
EADS2
EADS3
EADS4
EADS5
EADS1
決定内容の補完
66
Slave
Slave
Master
A data2
A data2
A ---
[1] write A
[1] write A
[2] change A
[1] write A
[2] change A
[2] change A
あれ?
[1]は?
※末尾に
2を付ける
© Hitachi, Ltd. 2015. All rights reserved.
抜けている更新内容は他から教えてもらう。
EADS2
EADS3
EADS4
EADS5
EADS1
決定内容の補完
67
Slave
Slave
Master
A data2
A data2
A ---
[1] write A
[1] write A
[2] change A
[1] write A
[2] change A
[1] write A
[2] change A
[1] write A
だよ!
ありがとう
© Hitachi, Ltd. 2015. All rights reserved.
更新順序が同じなので,同じ内容になる
EADS2
EADS3
EADS4
EADS5
EADS1
決定内容の補完
68
Slave
Slave
Master
A data2
A data2
A data2
[1] write A
[1] write A
[2] change A
[1] write A
[2] change A
[1] write A
[2] change A
© Hitachi, Ltd. 2015. All rights reserved.
決定内容の補完
69
処理の抜けに気付けるから,
障害回復してからも一貫性を保てる。
© Hitachi, Ltd. 2015. All rights reserved.
更新内容と順序を「提案」する
EADS2
EADS3
EADS4
EADS5
EADS1
事前の進捗確認
70
[1] write A
するよ!
Slave
Slave
Master
A ---
A ---
A ---
© Hitachi, Ltd. 2015. All rights reserved.
決定は過半数承認(多数決)で行う
EADS2
EADS3
EADS4
EADS5
EADS1
事前の進捗確認
71
[1] write A
するよ!
Slave
Slave
Master
A ---
A ---
A ---
[1] write A
承認!
[1] write A
承認!
© Hitachi, Ltd. 2015. All rights reserved.
[1] write A
承認した内容は覚えておく。
EADS2
EADS3
EADS4
EADS5
EADS1
事前の進捗確認
72
[1] write A
するよ!
Slave
Slave
Master
A ---
A ---
A ---
[1] write A
承認!
[1] write A
承認![1] write A
[1] write A
© Hitachi, Ltd. 2015. All rights reserved.
「決定」を通知しようとしたら,障害が・・・
EADS2
EADS3
EADS4
EADS5
EADS1
事前の進捗確認
73
Slave
Slave
Master
A ---
A ---
[1] write A
[1] write A
© Hitachi, Ltd. 2015. All rights reserved.
新しいサーバが処理を引き継ぐ
EADS2
EADS3
EADS4
EADS5
EADS1
事前の進捗確認
74
Slave
Slave
Master
A ---
A ---
[1] write A
[1] write A
通信が切れた
処理引き継ぎ
Master
© Hitachi, Ltd. 2015. All rights reserved.
自分含め過半数に進捗を確認する。
EADS2
EADS3
EADS4
EADS5
EADS1
事前の進捗確認
75
Master
Slave
A ---
A ---
[1] write A
[1] write A
今どう
なってるの?
© Hitachi, Ltd. 2015. All rights reserved.
記録した内容から進捗を報告
EADS2
EADS3
EADS4
EADS5
EADS1
事前の進捗確認
76
Master
Slave
A ---
A ---
[1] write A
[1] write A
今どう
なってるの?
[1] write A
承認したよ
なにも
してないよ
© Hitachi, Ltd. 2015. All rights reserved.
承認済みの内容があれば,それを提案する。
EADS2
EADS3
EADS4
EADS5
EADS1
事前の進捗確認
77
Master
Slave
A ---
A ---
[1] write A
[1] write A
じゃあ
[1] write A
しよう
© Hitachi, Ltd. 2015. All rights reserved.
提案途中で障害が起きても処理は継続する。
EADS2
EADS3
EADS4
EADS5
EADS1
事前の進捗確認
78
Master
Slave
A ---
A ---
[1] write A
[1] write A
じゃあ
[1] write A
しよう
[1] write A
承認!
[1] write A
承認!
© Hitachi, Ltd. 2015. All rights reserved.
事前の進捗確認
79
中途半端な状態で障害が起きても
別サーバで処理を継続できる。
© Hitachi, Ltd. 2015. All rights reserved.
Paxosの挙動
80
更新内容と順序を多数決
決定内容の補完
事前の進捗確認
スプリットブレインが起きたときはどうなるのか?
© Hitachi, Ltd. 2015. All rights reserved.
一貫性が崩れる原因 おさらい
81
Write A=bbb
Write A=ccc
Aの処理
は引き継
ぎます。
A bbb
A ccc
A aaa
他から
応答が
来ない?
© Hitachi, Ltd. 2015. All rights reserved.
更新内容と順序を「提案」するけれど
EADS2
EADS3
EADS4
EADS5
EADS1
スプリットブレインの時は・・・
82
Slave
Slave
Master
A ---
A ---
A ---
[1] write A
するよ!
© Hitachi, Ltd. 2015. All rights reserved.
過半数の承認を得られない。
EADS2
EADS3
EADS4
EADS5
EADS1
スプリットブレインの時は・・・
83
Slave
Slave
Master
A ---
A ---
A ---
[1] write A
するよ!
[1] write A
承認!
[1] write A
[1] write A
© Hitachi, Ltd. 2015. All rights reserved.
処理の引き継ぎが行われると・・・
EADS2
EADS3
EADS4
EADS5
EADS1
スプリットブレインの時は・・・
84
Slave
Slave
Master
A ---
A ---
A ---
[1] write A
[1] write A
通信が切れた
処理引き継ぎ
Master
© Hitachi, Ltd. 2015. All rights reserved.
事前確認が行われる。
EADS2
EADS3
EADS4
EADS5
EADS1
スプリットブレインの時は・・・
85
Master
Slave
Master
A ---
A ---
A ---
[1] write A
[1] write A
今どんな
感じですか?
© Hitachi, Ltd. 2015. All rights reserved.
右側には通信が来ていないので
EADS2
EADS3
EADS4
EADS5
EADS1
スプリットブレインの時は・・・
86
Master
Slave
Master
A ---
A ---
A ---
[1] write A
[1] write A
今どんな
感じですか?
なにも
してません
なにも
してません
© Hitachi, Ltd. 2015. All rights reserved.
まったく別の更新内容を提案する
EADS2
EADS3
EADS4
EADS5
EADS1
スプリットブレインの時は・・・
87
Master
Slave
Master
A ---
A ---
A ---
[1] write A
[1] write A
[1] write A #
するよ!
© Hitachi, Ltd. 2015. All rights reserved.
承認して覚えておく。
EADS2
EADS3
EADS4
EADS5
EADS1
スプリットブレインの時は・・・
88
Master
Slave
Master
A ---
A ---
A ---
[1] write A
[1] write A
[1] write A #
するよ!
[1] write A #
承認!
[1] write A #
[1] write A #
[1] write A #
[1] write A #
承認!
© Hitachi, Ltd. 2015. All rights reserved.
こんなタイミングでネットワークが回復すると・・
EADS2
EADS3
EADS4
EADS5
EADS1
スプリットブレインの時は・・・
89
Master
Slave
Master
A ---
A ###
A ###
[1] write A
[1] write A
[1] write A #
[1] write A #
[1] write A #
[1] write A
するよ!
© Hitachi, Ltd. 2015. All rights reserved.
残り一人の承認は得られず,逆に補完される
EADS2
EADS3
EADS4
EADS5
EADS1
スプリットブレインの時は・・・
90
Master
Slave
Master
A ---
A ###
A ###
[1] write A
[1] write A
[1] write A #
[1] write A #
[1] write A #
[1] write A #
決定ずみ!
© Hitachi, Ltd. 2015. All rights reserved.
EADS2
EADS3
EADS4
EADS5
EADS1
スプリットブレインの時は・・・
91
Master
Slave
Master
A ###
A ###
A ###
[1] write A #
[1] write A
[1] write A #
[1] write A #
[1] write A #
© Hitachi, Ltd. 2015. All rights reserved.
Paxosの挙動
92
更新内容と順序を多数決
決定内容の補完
事前の進捗確認
スプリットブレインが起きたときはどうなるのか?
一貫性は崩れない!
© Hitachi, Ltd. 2015. All rights reserved.
まとめ
93
© Hitachi, Ltd. 2015. All rights reserved.
一貫性へのこだわりと実現方法 -まとめ-
94
一貫性へのこだわり
社会インフラのシステムでの利用を想定
システムトラブルの原因になるデータ不整合を徹底対策
一貫性の実現方法
分散合意アルゴリズムのPaxosを導入
スプリットブレインでも崩れない強一貫性を実現
© Hitachi, Ltd. 2015. All rights reserved.
他社商品名、商標等の引用に関する表示
95
• Hitachi Elastic Application Data Storeは,(株)日立製作所の登録商標です。
• その他記載の会社名,製品名は,それぞれの会社の商標もしくは登録商標です。
• 製品の改良により予告なく記載されている仕様が変更になることがあります。
© Hitachi, Ltd. 2015. All rights reserved.
株式会社 日立製作所 情報・通信システム社
ITプラットフォーム事業本部
~こだわりの理由と実現方法とは~
データ一貫性にこだわる日立のインメモリ分散KVS
2015/06/12
和田 洋祐
END
96
[db tech showcase Tokyo 2015] C32:「データ一貫性にこだわる日立のインメモリ分散KVS~こだわりの理由と実現方法とは~」 by 株式会社日立製作所 情報・通信システム社 和田洋祐

Weitere ähnliche Inhalte

Was ist angesagt?

[B15] HiRDBのSQL実行プランはどのように決定しているのか?by Masaaki Narita
[B15] HiRDBのSQL実行プランはどのように決定しているのか?by Masaaki Narita[B15] HiRDBのSQL実行プランはどのように決定しているのか?by Masaaki Narita
[B15] HiRDBのSQL実行プランはどのように決定しているのか?by Masaaki Narita
Insight Technology, Inc.
 
【ハンズオンセミナー】NoSQL/SQLデュアルインタフェースを備えたIoT向けデータベースGridDB ~ GridDB CE 4.6のテーブルパーティ...
【ハンズオンセミナー】NoSQL/SQLデュアルインタフェースを備えたIoT向けデータベースGridDB ~ GridDB CE 4.6のテーブルパーティ...【ハンズオンセミナー】NoSQL/SQLデュアルインタフェースを備えたIoT向けデータベースGridDB ~ GridDB CE 4.6のテーブルパーティ...
【ハンズオンセミナー】NoSQL/SQLデュアルインタフェースを備えたIoT向けデータベースGridDB ~ GridDB CE 4.6のテーブルパーティ...
griddb
 
C34 ニッチだけど、社会インフラを支えるデータベース、HiRDB ~HiRDBを選ぶ人、選ばない人、その選択基準とは~ by Taichi Ishikawa
C34 ニッチだけど、社会インフラを支えるデータベース、HiRDB ~HiRDBを選ぶ人、選ばない人、その選択基準とは~ by Taichi IshikawaC34 ニッチだけど、社会インフラを支えるデータベース、HiRDB ~HiRDBを選ぶ人、選ばない人、その選択基準とは~ by Taichi Ishikawa
C34 ニッチだけど、社会インフラを支えるデータベース、HiRDB ~HiRDBを選ぶ人、選ばない人、その選択基準とは~ by Taichi Ishikawa
Insight Technology, Inc.
 

Was ist angesagt? (20)

[db tech showcase Tokyo 2015] E27: Neo4jグラフデータベース by クリエーションライン株式会社 李昌桓
[db tech showcase Tokyo 2015] E27: Neo4jグラフデータベース by クリエーションライン株式会社 李昌桓[db tech showcase Tokyo 2015] E27: Neo4jグラフデータベース by クリエーションライン株式会社 李昌桓
[db tech showcase Tokyo 2015] E27: Neo4jグラフデータベース by クリエーションライン株式会社 李昌桓
 
[db tech showcase Tokyo 2015] C25:HP NonStop SQLはなぜグローバルに分散DBを構築できるのか、 データの整合...
[db tech showcase Tokyo 2015] C25:HP NonStop SQLはなぜグローバルに分散DBを構築できるのか、 データの整合...[db tech showcase Tokyo 2015] C25:HP NonStop SQLはなぜグローバルに分散DBを構築できるのか、 データの整合...
[db tech showcase Tokyo 2015] C25:HP NonStop SQLはなぜグローバルに分散DBを構築できるのか、 データの整合...
 
[db tech showcase Tokyo 2015] B15:最新PostgreSQLはパフォーマンスが飛躍的に向上する!? - PostgreSQ...
[db tech showcase Tokyo 2015] B15:最新PostgreSQLはパフォーマンスが飛躍的に向上する!? - PostgreSQ...[db tech showcase Tokyo 2015] B15:最新PostgreSQLはパフォーマンスが飛躍的に向上する!? - PostgreSQ...
[db tech showcase Tokyo 2015] B15:最新PostgreSQLはパフォーマンスが飛躍的に向上する!? - PostgreSQ...
 
[db tech showcase Tokyo 2015] D35:高トランザクションを実現するスケーラブルRDBMS技術 by 日本電気株式会社 並木悠太
[db tech showcase Tokyo 2015] D35:高トランザクションを実現するスケーラブルRDBMS技術 by 日本電気株式会社 並木悠太[db tech showcase Tokyo 2015] D35:高トランザクションを実現するスケーラブルRDBMS技術 by 日本電気株式会社 並木悠太
[db tech showcase Tokyo 2015] D35:高トランザクションを実現するスケーラブルRDBMS技術 by 日本電気株式会社 並木悠太
 
[db tech showcase Tokyo 2015] D23:MySQLはドキュメントデータベースになり、HTTPもしゃべる - MySQL Lab...
[db tech showcase Tokyo 2015] D23:MySQLはドキュメントデータベースになり、HTTPもしゃべる - MySQL Lab...[db tech showcase Tokyo 2015] D23:MySQLはドキュメントデータベースになり、HTTPもしゃべる - MySQL Lab...
[db tech showcase Tokyo 2015] D23:MySQLはドキュメントデータベースになり、HTTPもしゃべる - MySQL Lab...
 
[db tech showcase Tokyo 2015] A26:内部犯行による漏えいを防ぐPostgreSQLの透過的暗号化機能に関する実装と利用方法...
[db tech showcase Tokyo 2015] A26:内部犯行による漏えいを防ぐPostgreSQLの透過的暗号化機能に関する実装と利用方法...[db tech showcase Tokyo 2015] A26:内部犯行による漏えいを防ぐPostgreSQLの透過的暗号化機能に関する実装と利用方法...
[db tech showcase Tokyo 2015] A26:内部犯行による漏えいを防ぐPostgreSQLの透過的暗号化機能に関する実装と利用方法...
 
[db tech showcase Tokyo 2015] B36:Hitachi Advanced Data Binder 実践SQLチューニング方法 ...
[db tech showcase Tokyo 2015] B36:Hitachi Advanced Data Binder 実践SQLチューニング方法 ...[db tech showcase Tokyo 2015] B36:Hitachi Advanced Data Binder 実践SQLチューニング方法 ...
[db tech showcase Tokyo 2015] B36:Hitachi Advanced Data Binder 実践SQLチューニング方法 ...
 
[db tech showcase Tokyo 2015] D32:HPの全方位インメモリDB化に向けた取り組みとSAP HANAインメモリDB の効果を...
[db tech showcase Tokyo 2015] D32:HPの全方位インメモリDB化に向けた取り組みとSAP HANAインメモリDB の効果を...[db tech showcase Tokyo 2015] D32:HPの全方位インメモリDB化に向けた取り組みとSAP HANAインメモリDB の効果を...
[db tech showcase Tokyo 2015] D32:HPの全方位インメモリDB化に向けた取り組みとSAP HANAインメモリDB の効果を...
 
[B15] HiRDBのSQL実行プランはどのように決定しているのか?by Masaaki Narita
[B15] HiRDBのSQL実行プランはどのように決定しているのか?by Masaaki Narita[B15] HiRDBのSQL実行プランはどのように決定しているのか?by Masaaki Narita
[B15] HiRDBのSQL実行プランはどのように決定しているのか?by Masaaki Narita
 
分析指向データレイク実現の次の一手 ~Delta Lake、なにそれおいしいの?~(NTTデータ テクノロジーカンファレンス 2020 発表資料)
分析指向データレイク実現の次の一手 ~Delta Lake、なにそれおいしいの?~(NTTデータ テクノロジーカンファレンス 2020 発表資料)分析指向データレイク実現の次の一手 ~Delta Lake、なにそれおいしいの?~(NTTデータ テクノロジーカンファレンス 2020 発表資料)
分析指向データレイク実現の次の一手 ~Delta Lake、なにそれおいしいの?~(NTTデータ テクノロジーカンファレンス 2020 発表資料)
 
【ハンズオンセミナー】NoSQL/SQLデュアルインタフェースを備えたIoT向けデータベースGridDB ~ GridDB CE 4.6のテーブルパーティ...
【ハンズオンセミナー】NoSQL/SQLデュアルインタフェースを備えたIoT向けデータベースGridDB ~ GridDB CE 4.6のテーブルパーティ...【ハンズオンセミナー】NoSQL/SQLデュアルインタフェースを備えたIoT向けデータベースGridDB ~ GridDB CE 4.6のテーブルパーティ...
【ハンズオンセミナー】NoSQL/SQLデュアルインタフェースを備えたIoT向けデータベースGridDB ~ GridDB CE 4.6のテーブルパーティ...
 
[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で実現する『ワンランク上』のディザスタリカバリ...
 
[db tech showcase Tokyo 2015] C17:MySQL Cluster ユーザー事例紹介~JR東日本情報システム様における導入事例...
[db tech showcase Tokyo 2015] C17:MySQL Cluster ユーザー事例紹介~JR東日本情報システム様における導入事例...[db tech showcase Tokyo 2015] C17:MySQL Cluster ユーザー事例紹介~JR東日本情報システム様における導入事例...
[db tech showcase Tokyo 2015] C17:MySQL Cluster ユーザー事例紹介~JR東日本情報システム様における導入事例...
 
[db tech showcase Sapporo 2015] B16:ビッグデータには、なぜ列指向が有効なのか? by 日本ヒューレット・パッカード株式...
[db tech showcase Sapporo 2015] B16:ビッグデータには、なぜ列指向が有効なのか? by 日本ヒューレット・パッカード株式...[db tech showcase Sapporo 2015] B16:ビッグデータには、なぜ列指向が有効なのか? by 日本ヒューレット・パッカード株式...
[db tech showcase Sapporo 2015] B16:ビッグデータには、なぜ列指向が有効なのか? by 日本ヒューレット・パッカード株式...
 
[db tech showcase Tokyo 2015] B16:最新版PostgreSQLのパフォーマンスを引き出すためのポイント by Postgr...
[db tech showcase Tokyo 2015] B16:最新版PostgreSQLのパフォーマンスを引き出すためのポイント by Postgr...[db tech showcase Tokyo 2015] B16:最新版PostgreSQLのパフォーマンスを引き出すためのポイント by Postgr...
[db tech showcase Tokyo 2015] B16:最新版PostgreSQLのパフォーマンスを引き出すためのポイント by Postgr...
 
もうSQLとNoSQLを選ぶ必要はない!?~両者を備えたスケールアウトデータベースGridDB~
もうSQLとNoSQLを選ぶ必要はない!?~両者を備えたスケールアウトデータベースGridDB~もうSQLとNoSQLを選ぶ必要はない!?~両者を備えたスケールアウトデータベースGridDB~
もうSQLとNoSQLを選ぶ必要はない!?~両者を備えたスケールアウトデータベースGridDB~
 
Pivotal Cloud FoundryによるDevOpsとアジャイル開発の推進
Pivotal Cloud FoundryによるDevOpsとアジャイル開発の推進Pivotal Cloud FoundryによるDevOpsとアジャイル開発の推進
Pivotal Cloud FoundryによるDevOpsとアジャイル開発の推進
 
DeNAでのverticaを活用したアナリスト業務のご紹介
DeNAでのverticaを活用したアナリスト業務のご紹介DeNAでのverticaを活用したアナリスト業務のご紹介
DeNAでのverticaを活用したアナリスト業務のご紹介
 
[db tech showcase Tokyo 2016] E33: こんな方法あり!? 何でもありです! インフラストラクチャレベルインメモリコンピュー...
[db tech showcase Tokyo 2016] E33: こんな方法あり!? 何でもありです! インフラストラクチャレベルインメモリコンピュー...[db tech showcase Tokyo 2016] E33: こんな方法あり!? 何でもありです! インフラストラクチャレベルインメモリコンピュー...
[db tech showcase Tokyo 2016] E33: こんな方法あり!? 何でもありです! インフラストラクチャレベルインメモリコンピュー...
 
C34 ニッチだけど、社会インフラを支えるデータベース、HiRDB ~HiRDBを選ぶ人、選ばない人、その選択基準とは~ by Taichi Ishikawa
C34 ニッチだけど、社会インフラを支えるデータベース、HiRDB ~HiRDBを選ぶ人、選ばない人、その選択基準とは~ by Taichi IshikawaC34 ニッチだけど、社会インフラを支えるデータベース、HiRDB ~HiRDBを選ぶ人、選ばない人、その選択基準とは~ by Taichi Ishikawa
C34 ニッチだけど、社会インフラを支えるデータベース、HiRDB ~HiRDBを選ぶ人、選ばない人、その選択基準とは~ by Taichi Ishikawa
 

Andere mochten auch

Db tech show - hivemall
Db tech show - hivemallDb tech show - hivemall
Db tech show - hivemall
Makoto Yui
 
[db tech showcase Tokyo 2015] C16:Oracle Disaster Recovery at New Zealand sto...
[db tech showcase Tokyo 2015] C16:Oracle Disaster Recovery at New Zealand sto...[db tech showcase Tokyo 2015] C16:Oracle Disaster Recovery at New Zealand sto...
[db tech showcase Tokyo 2015] C16:Oracle Disaster Recovery at New Zealand sto...
Insight Technology, Inc.
 
[db tech showcase Tokyo 2015] D25:The difference between logical and physical...
[db tech showcase Tokyo 2015] D25:The difference between logical and physical...[db tech showcase Tokyo 2015] D25:The difference between logical and physical...
[db tech showcase Tokyo 2015] D25:The difference between logical and physical...
Insight Technology, Inc.
 
[DB tech showcase Tokyo 2015] B37 :オンプレミスからAWS上のSAP HANAまで高信頼DBシステム構築にHAクラスタリ...
[DB tech showcase Tokyo 2015] B37 :オンプレミスからAWS上のSAP HANAまで高信頼DBシステム構築にHAクラスタリ...[DB tech showcase Tokyo 2015] B37 :オンプレミスからAWS上のSAP HANAまで高信頼DBシステム構築にHAクラスタリ...
[DB tech showcase Tokyo 2015] B37 :オンプレミスからAWS上のSAP HANAまで高信頼DBシステム構築にHAクラスタリ...
Funada Yasunobu
 

Andere mochten auch (19)

Mongodb x business
Mongodb x businessMongodb x business
Mongodb x business
 
[db tech showcase Tokyo 2015] A33:Amazon DynamoDB Deep Dive by アマゾン データ サービス ...
[db tech showcase Tokyo 2015] A33:Amazon DynamoDB Deep Dive by アマゾン データ サービス ...[db tech showcase Tokyo 2015] A33:Amazon DynamoDB Deep Dive by アマゾン データ サービス ...
[db tech showcase Tokyo 2015] A33:Amazon DynamoDB Deep Dive by アマゾン データ サービス ...
 
Apache Drill で JSON 形式の オープンデータを分析してみる - db tech showcase Tokyo 2015 2015/06/11
Apache Drill で JSON 形式の オープンデータを分析してみる - db tech showcase Tokyo 2015 2015/06/11Apache Drill で JSON 形式の オープンデータを分析してみる - db tech showcase Tokyo 2015 2015/06/11
Apache Drill で JSON 形式の オープンデータを分析してみる - db tech showcase Tokyo 2015 2015/06/11
 
[db tech showcase Tokyo 2015] D22:インメモリープラットホームSAP HANAのご紹介と最新情報 by SAPジャパン株式...
[db tech showcase Tokyo 2015] D22:インメモリープラットホームSAP HANAのご紹介と最新情報 by SAPジャパン株式...[db tech showcase Tokyo 2015] D22:インメモリープラットホームSAP HANAのご紹介と最新情報 by SAPジャパン株式...
[db tech showcase Tokyo 2015] D22:インメモリープラットホームSAP HANAのご紹介と最新情報 by SAPジャパン株式...
 
Couchbase introduction-20150611
Couchbase introduction-20150611Couchbase introduction-20150611
Couchbase introduction-20150611
 
Apache Hiveの今とこれから
Apache Hiveの今とこれからApache Hiveの今とこれから
Apache Hiveの今とこれから
 
[db tech showcase Tokyo 2015] E15:Hadoop大量データ処理技術と日立匿名化技術によるプライバシー保護とデータ活用 by...
[db tech showcase Tokyo 2015] E15:Hadoop大量データ処理技術と日立匿名化技術によるプライバシー保護とデータ活用 by...[db tech showcase Tokyo 2015] E15:Hadoop大量データ処理技術と日立匿名化技術によるプライバシー保護とデータ活用 by...
[db tech showcase Tokyo 2015] E15:Hadoop大量データ処理技術と日立匿名化技術によるプライバシー保護とデータ活用 by...
 
[db tech showcase Tokyo 2015] C15:DevOps MySQL in カカクコム~ OSSによる可用性担保とリアルタイムパフ...
[db tech showcase Tokyo 2015] C15:DevOps MySQL in カカクコム~ OSSによる可用性担保とリアルタイムパフ...[db tech showcase Tokyo 2015] C15:DevOps MySQL in カカクコム~ OSSによる可用性担保とリアルタイムパフ...
[db tech showcase Tokyo 2015] C15:DevOps MySQL in カカクコム~ OSSによる可用性担保とリアルタイムパフ...
 
Db tech show - hivemall
Db tech show - hivemallDb tech show - hivemall
Db tech show - hivemall
 
[db tech showcase Tokyo 2015] E35: Web, IoT, モバイル時代のデータベース、Apache Cassandraを学ぼう
[db tech showcase Tokyo 2015] E35: Web, IoT, モバイル時代のデータベース、Apache Cassandraを学ぼう[db tech showcase Tokyo 2015] E35: Web, IoT, モバイル時代のデータベース、Apache Cassandraを学ぼう
[db tech showcase Tokyo 2015] E35: Web, IoT, モバイル時代のデータベース、Apache Cassandraを学ぼう
 
[db tech showcase Tokyo 2015] C16:Oracle Disaster Recovery at New Zealand sto...
[db tech showcase Tokyo 2015] C16:Oracle Disaster Recovery at New Zealand sto...[db tech showcase Tokyo 2015] C16:Oracle Disaster Recovery at New Zealand sto...
[db tech showcase Tokyo 2015] C16:Oracle Disaster Recovery at New Zealand sto...
 
[db tech showcase Tokyo 2015] D25:The difference between logical and physical...
[db tech showcase Tokyo 2015] D25:The difference between logical and physical...[db tech showcase Tokyo 2015] D25:The difference between logical and physical...
[db tech showcase Tokyo 2015] D25:The difference between logical and physical...
 
[db tech showcase Tokyo 2015] C14:30万のユーザ部門を抱える日立、情シスの「理想と現実」 by 株式会社日立製作所 情報...
[db tech showcase Tokyo 2015] C14:30万のユーザ部門を抱える日立、情シスの「理想と現実」 by 株式会社日立製作所 情報...[db tech showcase Tokyo 2015] C14:30万のユーザ部門を抱える日立、情シスの「理想と現実」 by 株式会社日立製作所 情報...
[db tech showcase Tokyo 2015] C14:30万のユーザ部門を抱える日立、情シスの「理想と現実」 by 株式会社日立製作所 情報...
 
[DB tech showcase Tokyo 2015] B37 :オンプレミスからAWS上のSAP HANAまで高信頼DBシステム構築にHAクラスタリ...
[DB tech showcase Tokyo 2015] B37 :オンプレミスからAWS上のSAP HANAまで高信頼DBシステム構築にHAクラスタリ...[DB tech showcase Tokyo 2015] B37 :オンプレミスからAWS上のSAP HANAまで高信頼DBシステム構築にHAクラスタリ...
[DB tech showcase Tokyo 2015] B37 :オンプレミスからAWS上のSAP HANAまで高信頼DBシステム構築にHAクラスタリ...
 
[db tech showcase Tokyo 2015] C33:ビッグデータ・IoT時代のキーテクノロジー、CEPの「今」を掴む! by 株式会社日立...
[db tech showcase Tokyo 2015] C33:ビッグデータ・IoT時代のキーテクノロジー、CEPの「今」を掴む! by 株式会社日立...[db tech showcase Tokyo 2015] C33:ビッグデータ・IoT時代のキーテクノロジー、CEPの「今」を掴む! by 株式会社日立...
[db tech showcase Tokyo 2015] C33:ビッグデータ・IoT時代のキーテクノロジー、CEPの「今」を掴む! by 株式会社日立...
 
Presto in Treasure Data
Presto in Treasure DataPresto in Treasure Data
Presto in Treasure Data
 
[db tech showcase Tokyo 2015] B27:インメモリーDBとスケールアップマシンによりBig Dataの課題を解決する by S...
[db tech showcase Tokyo 2015] B27:インメモリーDBとスケールアップマシンによりBig Dataの課題を解決する by S...[db tech showcase Tokyo 2015] B27:インメモリーDBとスケールアップマシンによりBig Dataの課題を解決する by S...
[db tech showcase Tokyo 2015] B27:インメモリーDBとスケールアップマシンによりBig Dataの課題を解決する by S...
 
[db tech showcase Tokyo 2015] B34:データの仮想化を具体化するIBMのロジカルデータウェアハウス by 日本アイ・ビー・エ...
[db tech showcase Tokyo 2015] B34:データの仮想化を具体化するIBMのロジカルデータウェアハウス by 日本アイ・ビー・エ...[db tech showcase Tokyo 2015] B34:データの仮想化を具体化するIBMのロジカルデータウェアハウス by 日本アイ・ビー・エ...
[db tech showcase Tokyo 2015] B34:データの仮想化を具体化するIBMのロジカルデータウェアハウス by 日本アイ・ビー・エ...
 
Dbts2015 tokyo vector_in_hadoop_vortex
Dbts2015 tokyo vector_in_hadoop_vortexDbts2015 tokyo vector_in_hadoop_vortex
Dbts2015 tokyo vector_in_hadoop_vortex
 

Ähnlich wie [db tech showcase Tokyo 2015] C32:「データ一貫性にこだわる日立のインメモリ分散KVS~こだわりの理由と実現方法とは~」 by 株式会社日立製作所 情報・通信システム社 和田洋祐

[D12] 日立だからこだわる ~一貫性を追求した日立のインメモリ分散KVS~ by Masakata Kawanishi
[D12] 日立だからこだわる ~一貫性を追求した日立のインメモリ分散KVS~ by Masakata Kawanishi[D12] 日立だからこだわる ~一貫性を追求した日立のインメモリ分散KVS~ by Masakata Kawanishi
[D12] 日立だからこだわる ~一貫性を追求した日立のインメモリ分散KVS~ by Masakata Kawanishi
Insight Technology, Inc.
 
dbts osaka 2014 D13 hitachiKVS Masakata Kawanishi
dbts osaka 2014 D13 hitachiKVS Masakata Kawanishidbts osaka 2014 D13 hitachiKVS Masakata Kawanishi
dbts osaka 2014 D13 hitachiKVS Masakata Kawanishi
Insight Technology, Inc.
 
[C16] インメモリ分散KVSの弱点。一貫性が崩れる原因と、それを克服する技術とは? by Taichi Umeda
[C16] インメモリ分散KVSの弱点。一貫性が崩れる原因と、それを克服する技術とは? by Taichi Umeda[C16] インメモリ分散KVSの弱点。一貫性が崩れる原因と、それを克服する技術とは? by Taichi Umeda
[C16] インメモリ分散KVSの弱点。一貫性が崩れる原因と、それを克服する技術とは? by Taichi Umeda
Insight Technology, Inc.
 
C22 スプリットブレインになっても一貫性を保証するインメモリデータグリッド製品 by Taichi Umeda
C22 スプリットブレインになっても一貫性を保証するインメモリデータグリッド製品 by  Taichi UmedaC22 スプリットブレインになっても一貫性を保証するインメモリデータグリッド製品 by  Taichi Umeda
C22 スプリットブレインになっても一貫性を保証するインメモリデータグリッド製品 by Taichi Umeda
Insight Technology, Inc.
 
オープンクラウド基盤に最適! EMCのElastic Cloudソリューション
オープンクラウド基盤に最適! EMCのElastic Cloudソリューションオープンクラウド基盤に最適! EMCのElastic Cloudソリューション
オープンクラウド基盤に最適! EMCのElastic Cloudソリューション
EMC Japan
 
[D34] Shared Nothingなのに、Active-Activeクラスタ? ~ 高いスケーラビリティを誇る日立国産DBMS「HiRDB」のクラス...
[D34] Shared Nothingなのに、Active-Activeクラスタ? ~ 高いスケーラビリティを誇る日立国産DBMS「HiRDB」のクラス...[D34] Shared Nothingなのに、Active-Activeクラスタ? ~ 高いスケーラビリティを誇る日立国産DBMS「HiRDB」のクラス...
[D34] Shared Nothingなのに、Active-Activeクラスタ? ~ 高いスケーラビリティを誇る日立国産DBMS「HiRDB」のクラス...
Insight Technology, Inc.
 

Ähnlich wie [db tech showcase Tokyo 2015] C32:「データ一貫性にこだわる日立のインメモリ分散KVS~こだわりの理由と実現方法とは~」 by 株式会社日立製作所 情報・通信システム社 和田洋祐 (20)

[D12] 日立だからこだわる ~一貫性を追求した日立のインメモリ分散KVS~ by Masakata Kawanishi
[D12] 日立だからこだわる ~一貫性を追求した日立のインメモリ分散KVS~ by Masakata Kawanishi[D12] 日立だからこだわる ~一貫性を追求した日立のインメモリ分散KVS~ by Masakata Kawanishi
[D12] 日立だからこだわる ~一貫性を追求した日立のインメモリ分散KVS~ by Masakata Kawanishi
 
dbts osaka 2014 D13 hitachiKVS Masakata Kawanishi
dbts osaka 2014 D13 hitachiKVS Masakata Kawanishidbts osaka 2014 D13 hitachiKVS Masakata Kawanishi
dbts osaka 2014 D13 hitachiKVS Masakata Kawanishi
 
[C16] インメモリ分散KVSの弱点。一貫性が崩れる原因と、それを克服する技術とは? by Taichi Umeda
[C16] インメモリ分散KVSの弱点。一貫性が崩れる原因と、それを克服する技術とは? by Taichi Umeda[C16] インメモリ分散KVSの弱点。一貫性が崩れる原因と、それを克服する技術とは? by Taichi Umeda
[C16] インメモリ分散KVSの弱点。一貫性が崩れる原因と、それを克服する技術とは? by Taichi Umeda
 
C22 スプリットブレインになっても一貫性を保証するインメモリデータグリッド製品 by Taichi Umeda
C22 スプリットブレインになっても一貫性を保証するインメモリデータグリッド製品 by  Taichi UmedaC22 スプリットブレインになっても一貫性を保証するインメモリデータグリッド製品 by  Taichi Umeda
C22 スプリットブレインになっても一貫性を保証するインメモリデータグリッド製品 by Taichi Umeda
 
管理画面の作り方ディスカス 新宿.rb 36th #shinjukurb
管理画面の作り方ディスカス 新宿.rb 36th #shinjukurb管理画面の作り方ディスカス 新宿.rb 36th #shinjukurb
管理画面の作り方ディスカス 新宿.rb 36th #shinjukurb
 
VIOPS10: SSDの基本技術と最新動向
VIOPS10: SSDの基本技術と最新動向VIOPS10: SSDの基本技術と最新動向
VIOPS10: SSDの基本技術と最新動向
 
オープンソースデータベース GridDB ~ なぜ いま、データベースを開発したのか?その理由とGridDBの概要紹介 ~
オープンソースデータベース GridDB ~ なぜ いま、データベースを開発したのか?その理由とGridDBの概要紹介 ~オープンソースデータベース GridDB ~ なぜ いま、データベースを開発したのか?その理由とGridDBの概要紹介 ~
オープンソースデータベース GridDB ~ なぜ いま、データベースを開発したのか?その理由とGridDBの概要紹介 ~
 
クラウドサービスの活用〜IDCFクラウド〜
クラウドサービスの活用〜IDCFクラウド〜クラウドサービスの活用〜IDCFクラウド〜
クラウドサービスの活用〜IDCFクラウド〜
 
データが覗いたOpenStack Summit Vancouver
データが覗いたOpenStack Summit Vancouverデータが覗いたOpenStack Summit Vancouver
データが覗いたOpenStack Summit Vancouver
 
2015.6.5 EMC主催OpenStackセミナー - EMC講演スライド
2015.6.5 EMC主催OpenStackセミナー - EMC講演スライド2015.6.5 EMC主催OpenStackセミナー - EMC講演スライド
2015.6.5 EMC主催OpenStackセミナー - EMC講演スライド
 
NHNグループ合同勉強会 ライブドア片野
NHNグループ合同勉強会 ライブドア片野NHNグループ合同勉強会 ライブドア片野
NHNグループ合同勉強会 ライブドア片野
 
オープンクラウド基盤に最適! EMCのElastic Cloudソリューション
オープンクラウド基盤に最適! EMCのElastic Cloudソリューションオープンクラウド基盤に最適! EMCのElastic Cloudソリューション
オープンクラウド基盤に最適! EMCのElastic Cloudソリューション
 
[D34] Shared Nothingなのに、Active-Activeクラスタ? ~ 高いスケーラビリティを誇る日立国産DBMS「HiRDB」のクラス...
[D34] Shared Nothingなのに、Active-Activeクラスタ? ~ 高いスケーラビリティを誇る日立国産DBMS「HiRDB」のクラス...[D34] Shared Nothingなのに、Active-Activeクラスタ? ~ 高いスケーラビリティを誇る日立国産DBMS「HiRDB」のクラス...
[D34] Shared Nothingなのに、Active-Activeクラスタ? ~ 高いスケーラビリティを誇る日立国産DBMS「HiRDB」のクラス...
 
バイトコードって言葉をよく目にするけど一体何なんだろう?(JJUG CCC 2022 Spring 発表資料)
バイトコードって言葉をよく目にするけど一体何なんだろう?(JJUG CCC 2022 Spring 発表資料)バイトコードって言葉をよく目にするけど一体何なんだろう?(JJUG CCC 2022 Spring 発表資料)
バイトコードって言葉をよく目にするけど一体何なんだろう?(JJUG CCC 2022 Spring 発表資料)
 
OpenJDKは使い物になるか?OpenJDKの実際と今後 (NTTデータ オープンソースDAY 2015 Autumn 講演資料)
OpenJDKは使い物になるか?OpenJDKの実際と今後 (NTTデータ オープンソースDAY 2015 Autumn 講演資料)OpenJDKは使い物になるか?OpenJDKの実際と今後 (NTTデータ オープンソースDAY 2015 Autumn 講演資料)
OpenJDKは使い物になるか?OpenJDKの実際と今後 (NTTデータ オープンソースDAY 2015 Autumn 講演資料)
 
ハンドノート(スーパーセット・サブセット:周延について)
ハンドノート(スーパーセット・サブセット:周延について)ハンドノート(スーパーセット・サブセット:周延について)
ハンドノート(スーパーセット・サブセット:周延について)
 
【SoftLayer事例】アップクロス株式会社
【SoftLayer事例】アップクロス株式会社【SoftLayer事例】アップクロス株式会社
【SoftLayer事例】アップクロス株式会社
 
チーム開発におけるDevとOpsのプラクティス
チーム開発におけるDevとOpsのプラクティスチーム開発におけるDevとOpsのプラクティス
チーム開発におけるDevとOpsのプラクティス
 
[OpenStack Days Tokyo 2015] Enterprise Elastic Cloudを実現するEMCのOpenStack戦略
[OpenStack Days Tokyo 2015] Enterprise Elastic Cloudを実現するEMCのOpenStack戦略[OpenStack Days Tokyo 2015] Enterprise Elastic Cloudを実現するEMCのOpenStack戦略
[OpenStack Days Tokyo 2015] Enterprise Elastic Cloudを実現するEMCのOpenStack戦略
 
20180528_VxRailCC_Backup_NW宮本
20180528_VxRailCC_Backup_NW宮本20180528_VxRailCC_Backup_NW宮本
20180528_VxRailCC_Backup_NW宮本
 

Mehr von Insight Technology, Inc.

コモディティサーバー3台で作る高速処理 “ハイパー・コンバージド・データベース・インフラストラクチャー(HCDI)” システム『Insight Qube』...
コモディティサーバー3台で作る高速処理 “ハイパー・コンバージド・データベース・インフラストラクチャー(HCDI)” システム『Insight Qube』...コモディティサーバー3台で作る高速処理 “ハイパー・コンバージド・データベース・インフラストラクチャー(HCDI)” システム『Insight Qube』...
コモディティサーバー3台で作る高速処理 “ハイパー・コンバージド・データベース・インフラストラクチャー(HCDI)” システム『Insight Qube』...
Insight Technology, Inc.
 

Mehr von 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のソリューションと異種データベース・クラウド移行事例のご紹介
 
そのデータベース、クラウドで使ってみませんか?
そのデータベース、クラウドで使ってみませんか?そのデータベース、クラウドで使ってみませんか?
そのデータベース、クラウドで使ってみませんか?
 
コモディティサーバー3台で作る高速処理 “ハイパー・コンバージド・データベース・インフラストラクチャー(HCDI)” システム『Insight Qube』...
コモディティサーバー3台で作る高速処理 “ハイパー・コンバージド・データベース・インフラストラクチャー(HCDI)” システム『Insight Qube』...コモディティサーバー3台で作る高速処理 “ハイパー・コンバージド・データベース・インフラストラクチャー(HCDI)” システム『Insight Qube』...
コモディティサーバー3台で作る高速処理 “ハイパー・コンバージド・データベース・インフラストラクチャー(HCDI)” システム『Insight Qube』...
 
複数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]
 

Kürzlich hochgeladen

Kürzlich hochgeladen (12)

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
 
論文紹介: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...
 
NewSQLの可用性構成パターン(OCHaCafe Season 8 #4 発表資料)
NewSQLの可用性構成パターン(OCHaCafe Season 8 #4 発表資料)NewSQLの可用性構成パターン(OCHaCafe Season 8 #4 発表資料)
NewSQLの可用性構成パターン(OCHaCafe Season 8 #4 発表資料)
 
LoRaWANスマート距離検出センサー DS20L カタログ LiDARデバイス
LoRaWANスマート距離検出センサー  DS20L  カタログ  LiDARデバイスLoRaWANスマート距離検出センサー  DS20L  カタログ  LiDARデバイス
LoRaWANスマート距離検出センサー DS20L カタログ LiDARデバイス
 
Amazon SES を勉強してみる その22024/04/26の勉強会で発表されたものです。
Amazon SES を勉強してみる その22024/04/26の勉強会で発表されたものです。Amazon SES を勉強してみる その22024/04/26の勉強会で発表されたものです。
Amazon SES を勉強してみる その22024/04/26の勉強会で発表されたものです。
 
論文紹介: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 を勉強してみる その32024/04/26の勉強会で発表されたものです。
Amazon SES を勉強してみる その32024/04/26の勉強会で発表されたものです。Amazon SES を勉強してみる その32024/04/26の勉強会で発表されたものです。
Amazon SES を勉強してみる その32024/04/26の勉強会で発表されたものです。
 
新人研修 後半 2024/04/26の勉強会で発表されたものです。
新人研修 後半        2024/04/26の勉強会で発表されたものです。新人研修 後半        2024/04/26の勉強会で発表されたものです。
新人研修 後半 2024/04/26の勉強会で発表されたものです。
 
Observabilityは従来型の監視と何が違うのか(キンドリルジャパン社内勉強会:2022年10月27日発表)
Observabilityは従来型の監視と何が違うのか(キンドリルジャパン社内勉強会:2022年10月27日発表)Observabilityは従来型の監視と何が違うのか(キンドリルジャパン社内勉強会:2022年10月27日発表)
Observabilityは従来型の監視と何が違うのか(キンドリルジャパン社内勉強会:2022年10月27日発表)
 
Utilizing Ballerina for Cloud Native Integrations
Utilizing Ballerina for Cloud Native IntegrationsUtilizing Ballerina for Cloud Native Integrations
Utilizing Ballerina for Cloud Native Integrations
 
知識ゼロの営業マンでもできた!超速で初心者を脱する、悪魔的学習ステップ3選.pptx
知識ゼロの営業マンでもできた!超速で初心者を脱する、悪魔的学習ステップ3選.pptx知識ゼロの営業マンでもできた!超速で初心者を脱する、悪魔的学習ステップ3選.pptx
知識ゼロの営業マンでもできた!超速で初心者を脱する、悪魔的学習ステップ3選.pptx
 

[db tech showcase Tokyo 2015] C32:「データ一貫性にこだわる日立のインメモリ分散KVS~こだわりの理由と実現方法とは~」 by 株式会社日立製作所 情報・通信システム社 和田洋祐

  • 1. コピーライトの表示については、作成元で責任を持って適宜変更してください。 ⇒ © Hitachi, Ltd. 2015. All rights reserved. 株式会社 日立製作所 情報・通信システム社 ITプラットフォーム事業本部 2015/06/12 和田 洋祐 データ一貫性にこだわる 日立のインメモリ分散KVS ~こだわりの理由と実現方法とは~
  • 2. © Hitachi, Ltd. 2015. All rights reserved. 自己紹介 1 和田 洋祐(わだ ようすけ) 2010年度入社 ミドルウェア設計・開発 分散KVS歴 3年 COBOL歴 2年
  • 3. © Hitachi, Ltd. 2015. All rights reserved. 1. 分散KVSとは何か 2. 分散KVSの悩み事 【一貫性】 3.一貫性へのこだわりと実現方法 Contents 2
  • 4. © Hitachi, Ltd. 2015. All rights reserved. 1. 分散KVSとは何か 3
  • 5. © Hitachi, Ltd. 2015. All rights reserved. 分散KVS、簡単に言えば・・・ 4 RDBと同じ、「データを管理するソフトウエア」 だけど、RDBではない。 KVSというデータ構造を持つ RDB 分散KVS KVS = Key Value Store データ管理 データ管理 Table Table Table Key Value Key Value Key Value Key Value Key Value
  • 6. © Hitachi, Ltd. 2015. All rights reserved. 登場の背景 5 データ管理と言えばRDB RDB システムの データ システムの データ システムの データ
  • 7. © Hitachi, Ltd. 2015. All rights reserved. システムの データシステムの データ システムの データ 登場の背景 6 RDB システムの データ システムの データ システムの データ システムの データ Table Table Table Table 複雑化する テーブル 大量リクエスト スケールアップ の限界 求められる 耐障害性 大量データ システム開発の 短期化 データ管理と言えばRDB
  • 8. © Hitachi, Ltd. 2015. All rights reserved. 登場の背景 7 システムの データ システムの データ システムの データ システムの データ システムの データ システムの データ KVS KVS KVS KVS RDBを補う形で分散KVSは登場した。 クラスタリング
  • 9. © Hitachi, Ltd. 2015. All rights reserved. 分散KVSの具体的な特徴 8 高スループット スケーラビリティ 高可用性
  • 10. © Hitachi, Ltd. 2015. All rights reserved. 高スループット 9 各サーバで分散処理する A aaa write write write write B write A write C B bbb C ccc
  • 11. © Hitachi, Ltd. 2015. All rights reserved. スケーラビリティ 10 簡単にスケールアウトできる A aaa D ddd B bbb C ccc write B write A write C write D
  • 12. © Hitachi, Ltd. 2015. All rights reserved. 高可用性 11 障害が起きても、他のサーバで業務継続 A aaa C ccc D ddd D ddd B bbb A aaa C ccc B bbb 同じデータを 複数サーバで保持する get D
  • 13. © Hitachi, Ltd. 2015. All rights reserved. A aaa C ccc D ddd D ddd B bbb A aaa C ccc B bbb 高可用性 12 障害が起きても、他のサーバで業務継続 マシンが壊れても 他のマシンからデータが 取れる。 ♪ get D
  • 14. © Hitachi, Ltd. 2015. All rights reserved. 分散KVSの使われ方 13 RDB バッファ キャッシュ メッセージング ストア write read add take update 高可用性を活かした構成 高スループットを活かした構成 update
  • 15. © Hitachi, Ltd. 2015. All rights reserved. 具体例:コンテンツキャッシュ 14 HITACHI Net Shopp ing 商品DB DBのキャッシュとして,大量アクセスに対応 ECサイト分散KVS
  • 16. © Hitachi, Ltd. 2015. All rights reserved. 具体例:センサーデータバッファリング 15 1000万超の検針装置から数分おきにデータ発信 検針装置 電力会社分散KVS
  • 17. © Hitachi, Ltd. 2015. All rights reserved. 携帯電話 具体例:高速メッセージング 16 メールサーバ1台あたり、1時間に1300万通 管理システム分散KVS
  • 18. © Hitachi, Ltd. 2015. All rights reserved. 具体例:無停止基幹システム 17 搬入 分散KVS 管理 配送 物流センターの業務無停止化
  • 19. © Hitachi, Ltd. 2015. All rights reserved. 分散KVSとは何か -まとめ- 18 ビッグデータ時代のデータ管理製品 高スループット・スケーラビリティ・高可用性 KVS構造でも使い方は多種多様
  • 20. © Hitachi, Ltd. 2015. All rights reserved. 2. 分散KVSの悩み事 【一貫性】 19
  • 21. © Hitachi, Ltd. 2015. All rights reserved. データの一貫性ってどういうこと? 20 分散したデータの内容が同じであること C ccc D ddd D ddd A aaawrite D get D
  • 22. © Hitachi, Ltd. 2015. All rights reserved. 一貫性って当たり前じゃないの? 21 対策しないと簡単に崩れます
  • 23. © Hitachi, Ltd. 2015. All rights reserved. 難関:ダウンの誤検知 22 通信が できない? ダウン?Write A=bbb A aaa A aaa Aを更新 します スプリットブレインが起きたとき・・・ A aaa
  • 24. © Hitachi, Ltd. 2015. All rights reserved. 難関:ダウンの誤検知 23 Write A=bbb Write A=ccc Aの処理 は引き継 ぎます。 A bbb A ccc A aaa 他から 応答が 来ない? スプリットブレインが起きたとき・・・
  • 25. © Hitachi, Ltd. 2015. All rights reserved. 難関:ダウンの誤検知 24 Write A=bbb Write A=ccc Aはこっちの 担当だよ? 引き継ぎ 済みですよ? A bbb A ccc A ??? どっちを 信じれば・・ バチバチ
  • 26. © Hitachi, Ltd. 2015. All rights reserved. 一貫性には強度がある 25 結果整合性 強一貫性 強弱 一貫性の強度
  • 27. © Hitachi, Ltd. 2015. All rights reserved. 結果整合性 26 A a1 A a2 データがずれることを許容 A a1 A a2 今どんな 感じ? Aがズレて ますね A a2 A a2 互いに確認して修正 いつかは一致する
  • 28. © Hitachi, Ltd. 2015. All rights reserved. 中間的な一貫性 27 A a1 A a1 安定状態で一貫性あり A a1 A a1 苦手なパターンの障害が発生すると A a2 A a3 ずれてしまうことがある 相手と 通信できない ダウンしたの かな?
  • 29. © Hitachi, Ltd. 2015. All rights reserved. 強一貫性 28 A a1 A a1 安定状態で一貫性あり A a1 A a1 A a2 A a2 ずれることはない 様々なパターンの障害が発生しても
  • 30. © Hitachi, Ltd. 2015. All rights reserved. 一貫性には強度がある 29 崩れても良い いつか一致する。 苦手な障害で 崩れてしまう。 多様な障害でも 一貫性あり。 結果整合性 強一貫性 強弱 一貫性の強度
  • 31. © Hitachi, Ltd. 2015. All rights reserved. 一貫性が崩れるとどうなるの? (ケース1) 30 A --- C --- D M B --- C --- B --- ♪ write D Nさん たとえばECサイトで予約するとき・・・ D N A --- HITACHI Net Shopp ing Nさん ♪ Mさん write D Mさん 商品D 限定1名様
  • 32. © Hitachi, Ltd. 2015. All rights reserved. 一貫性が崩れるとどうなるの? (ケース1) 31 A --- C --- D M B --- C --- B --- 異なるデータが格納されてしまう。 D N A --- HITACHI Net Shopp ing どっちが 正しいの? 管理者Lさん get D 商品D 限定1名様
  • 33. © Hitachi, Ltd. 2015. All rights reserved. 一貫性が崩れるとどうなるの? (ケース2) 32 A --- C --- D --- B --- C --- B --- ♪ write D Nさん たとえばECサイトで予約するとき・・・ D N A --- HITACHI Net Shopp ing Nさん 商品D 限定1名様
  • 34. © Hitachi, Ltd. 2015. All rights reserved. D N A --- 一貫性が崩れるとどうなるの? (ケース2) 33 A --- C --- D --- B --- C --- B --- 不整合な時に障害が起きると HITACHI Net Shopp ing 商品D 限定1名様
  • 35. © Hitachi, Ltd. 2015. All rights reserved. A --- D N 一貫性が崩れるとどうなるの? (ケース2) 34 A --- C --- D --- B --- C --- B --- ♪ get D HITACHI Net Shopp ing Mさん 商品D 限定1名様 情報が消えてしまう。
  • 36. © Hitachi, Ltd. 2015. All rights reserved. 一貫性には強度がある 35 崩れても良い いつか一致する。 苦手な障害で 崩れてしまう。 多様な障害でも 一貫性あり。 性能 速極速 メール チケット予約 課金システム コンテンツキャッシュ センサー監視 得意分野 結果整合性 強一貫性 強弱 一貫性の強度
  • 37. © Hitachi, Ltd. 2015. All rights reserved. 分散KVSの悩み事 【一貫性】 -まとめ- 36 一貫性とは、分散したデータが揃っていること 一貫性にも強度がある(結果整合性 ~ 強一貫性) 強度ごとに適材適所がある。 強度が強いほど,多様なシステムに適用しやすい。
  • 38. © Hitachi, Ltd. 2015. All rights reserved. 3. 一貫性へのこだわりと実現方法 37
  • 39. © Hitachi, Ltd. 2015. All rights reserved. まずは・・・ 38 一貫性について復習
  • 40. © Hitachi, Ltd. 2015. All rights reserved. 一貫性が崩れるとどうなるの? (ケース1) 39 A --- C --- D M B --- C --- B --- 異なるデータが格納されてしまう。 D N A --- HITACHI Net Shopp ing どっちが 正しいの? 管理者Lさん get D 商品D 限定1名様
  • 41. © Hitachi, Ltd. 2015. All rights reserved. A --- D N 一貫性が崩れるとどうなるの? (ケース2) 40 A --- C --- D --- B --- C --- B --- ♪ get D HITACHI Net Shopp ing Mさん 商品D 限定1名様 情報が消えてしまう。
  • 42. © Hitachi, Ltd. 2015. All rights reserved. 一貫性が崩れる原因 41 Write A=bbb Write A=ccc Aの処理 は引き継 ぎます。 A bbb A ccc A aaa 他から 応答が 来ない?
  • 43. © Hitachi, Ltd. 2015. All rights reserved. 一貫性には強度がある 42 結果整合性 強一貫性 強弱 一貫性の強度 崩れても良い いつか一致する。 苦手な障害で 崩れてしまう。 多様な障害でも 一貫性あり。 性能 速極速 メール チケット予約 課金システム コンテンツキャッシュ センサー監視 得意分野
  • 44. © Hitachi, Ltd. 2015. All rights reserved. 日立の分散KVSへの取り組み 43 Big Data モノ の発信 人 の発信 電力メーター 運行情報 カーナビ GPS 監視映像 環境・気象データ 設備監視 物流トレース ICカード利用 診断画像・ 電子カルテ データベース メール・オフィス文書 つぶやき SNS 通話ログ スマートフォン 人の移動 ネット購入 コンテンツダウンロード 動画・画像・音声 データ不整合によるシステムトラブルは許容されない
  • 45. © Hitachi, Ltd. 2015. All rights reserved. 日立の分散KVSへの取り組み 44 強一貫性の分散KVS EADS (Hitachi Elastic Application Data Store)
  • 46. © Hitachi, Ltd. 2015. All rights reserved. 強一貫性 の 実現方法 45 分散合意アルゴリズム Paxos
  • 47. © Hitachi, Ltd. 2015. All rights reserved. 分散合意アルゴリズムとは? 46 みんなで「やることを決める」ための仕組み Write A=bbb Write A=ccc Aのデータを cccに更新しよう A bbb A ccc Aのデータを bbbに更新しよう それぞれが,勝手に「やることを決める」と・・・ 一貫性は崩れる
  • 48. © Hitachi, Ltd. 2015. All rights reserved. 分散合意アルゴリズムとは? 47 みんなで「やることを決める」ための仕組み Write A=bbb Write A=ccc Aの件, 了解しました。 A bbb A bbb Aのデータを bbbにしたい あらかじめ,更新内容を決めてから実行すれば 一貫性は保たれる
  • 49. © Hitachi, Ltd. 2015. All rights reserved. そんなに難しいこと? 48 テレビ会議をイメージしてください。 ちゃんと決定できますか? network 通信到着順序は 各人でバラバラ 急用で席を 外す人もいる 通信が 途切れる 複数人が 発言する
  • 50. © Hitachi, Ltd. 2015. All rights reserved. そんなに難しいこと? 49 テレビ会議をイメージしてください。 ちゃんと決定できますか? networkそば 牛丼 パスタ電話中 通信到着順序は 各人でバラバラ 急用で席を 外す人もいる 通信が 途切れる 複数人が 発言する
  • 51. © Hitachi, Ltd. 2015. All rights reserved. Paxosはどのように「決定」しているのか 50 更新内容と順序を多数決 決定内容の補完 事前の進捗確認
  • 52. © Hitachi, Ltd. 2015. All rights reserved. 更新内容と順序を「提案」する EADS2 EADS3 EADS4 EADS5 EADS1 更新内容と順序を多数決 51 Slave Slave Master A --- A --- A --- [1] write A するよ!
  • 53. © Hitachi, Ltd. 2015. All rights reserved. 決定は過半数承認(多数決)で行う EADS2 EADS3 EADS4 EADS5 EADS1 更新内容と順序を多数決 52 [1] write A 承認! [1] write A するよ! Slave Slave Master [1] write A 承認! A --- A --- A ---
  • 54. © Hitachi, Ltd. 2015. All rights reserved. 承認した内容は覚えておく。 EADS2 EADS3 EADS4 EADS5 EADS1 更新内容と順序を多数決 53 [1] write A 承認! [1] write A するよ! Slave Slave Master [1] write A 承認! [1] write A [1] write A [1] write A A --- A --- A ---
  • 55. © Hitachi, Ltd. 2015. All rights reserved. 多数決を勝ち取ったら「決定」したことを通知する。 EADS2 EADS3 EADS4 EADS5 EADS1 更新内容と順序を多数決 54 [1] は決定 しました Slave Slave Master A --- A --- A --- [1] write A [1] write A [1] write A
  • 56. © Hitachi, Ltd. 2015. All rights reserved. 通知を受けたら更新内容を反映する。 EADS2 EADS3 EADS4 EADS5 EADS1 更新内容と順序を多数決 55 Slave Slave Master A data A data A data [1] write A [1] write A [1] write A
  • 57. © Hitachi, Ltd. 2015. All rights reserved. もし障害が起きていたら・・・ EADS2 EADS3 EADS4 EADS5 EADS1 更新内容と順序を多数決 56 Slave Slave Master A --- A --- A --- [1] write A するよ!
  • 58. © Hitachi, Ltd. 2015. All rights reserved. 他が承認してくれるので,「決定」できる。 EADS2 EADS3 EADS4 EADS5 EADS1 更新内容と順序を多数決 57 Slave Slave Master A --- A --- A --- [1] write A 承認! [1] write A するよ! [1] write A 承認!
  • 59. © Hitachi, Ltd. 2015. All rights reserved. 承認した内容を覚えておく。 EADS2 EADS3 EADS4 EADS5 EADS1 更新内容と順序を多数決 58 [1] write A 承認! [1] write A するよ! Slave Slave Master A --- A --- A --- [1] write A 承認![1] write A [1] write A [1] write A
  • 60. © Hitachi, Ltd. 2015. All rights reserved. 多数決を勝ち取って「決定」したことを通知する。 EADS2 EADS3 EADS4 EADS5 EADS1 更新内容と順序を多数決 59 [1] は決定 しました Slave Slave Master A --- A --- A --- [1] write A [1] write A [1] write A
  • 61. © Hitachi, Ltd. 2015. All rights reserved. 更新を反映する。 EADS2 EADS3 EADS4 EADS5 EADS1 更新内容と順序を多数決 60 Slave Slave Master A data A data A --- [1] write A [1] write A [1] write A
  • 62. © Hitachi, Ltd. 2015. All rights reserved. 更新内容と順序を多数決 61 Paxosは過半数承認で決定するから, 一部障害では止まらない。
  • 63. © Hitachi, Ltd. 2015. All rights reserved. 障害から回復したら・・ EADS2 EADS3 EADS4 EADS5 EADS1 決定内容の補完 62 Slave Slave Master A data A data A --- [1] write A [1] write A [1] write A [2] change A するよ! ※末尾に 2を付ける
  • 64. © Hitachi, Ltd. 2015. All rights reserved. 新しい更新の多数決に参加する EADS2 EADS3 EADS4 EADS5 EADS1 決定内容の補完 63 Slave Slave Master A data A data A --- [1] write A [1] write A [1] write A [2] change A するよ! [2] change A 承認! [2] change A 承認!
  • 65. © Hitachi, Ltd. 2015. All rights reserved. 承認した内容を覚える EADS2 EADS3 EADS4 EADS5 EADS1 決定内容の補完 64 Slave Slave Master A data A data A --- [1] write A [1] write A [2] change A [1] write A [2] change A [2] change A するよ! [2] change A 承認! [2] change A 承認! [2] change A
  • 66. © Hitachi, Ltd. 2015. All rights reserved. 多数決を勝ち取って「決定」したことを通知する。 EADS2 EADS3 EADS4 EADS5 EADS1 決定内容の補完 65 [2] は決定 しました Slave Slave Master A data A data A --- [1] write A [1] write A [2] change A [1] write A [2] change A [2] change A
  • 67. © Hitachi, Ltd. 2015. All rights reserved. 更新を反映しようとするけど・・・ EADS2 EADS3 EADS4 EADS5 EADS1 決定内容の補完 66 Slave Slave Master A data2 A data2 A --- [1] write A [1] write A [2] change A [1] write A [2] change A [2] change A あれ? [1]は? ※末尾に 2を付ける
  • 68. © Hitachi, Ltd. 2015. All rights reserved. 抜けている更新内容は他から教えてもらう。 EADS2 EADS3 EADS4 EADS5 EADS1 決定内容の補完 67 Slave Slave Master A data2 A data2 A --- [1] write A [1] write A [2] change A [1] write A [2] change A [1] write A [2] change A [1] write A だよ! ありがとう
  • 69. © Hitachi, Ltd. 2015. All rights reserved. 更新順序が同じなので,同じ内容になる EADS2 EADS3 EADS4 EADS5 EADS1 決定内容の補完 68 Slave Slave Master A data2 A data2 A data2 [1] write A [1] write A [2] change A [1] write A [2] change A [1] write A [2] change A
  • 70. © Hitachi, Ltd. 2015. All rights reserved. 決定内容の補完 69 処理の抜けに気付けるから, 障害回復してからも一貫性を保てる。
  • 71. © Hitachi, Ltd. 2015. All rights reserved. 更新内容と順序を「提案」する EADS2 EADS3 EADS4 EADS5 EADS1 事前の進捗確認 70 [1] write A するよ! Slave Slave Master A --- A --- A ---
  • 72. © Hitachi, Ltd. 2015. All rights reserved. 決定は過半数承認(多数決)で行う EADS2 EADS3 EADS4 EADS5 EADS1 事前の進捗確認 71 [1] write A するよ! Slave Slave Master A --- A --- A --- [1] write A 承認! [1] write A 承認!
  • 73. © Hitachi, Ltd. 2015. All rights reserved. [1] write A 承認した内容は覚えておく。 EADS2 EADS3 EADS4 EADS5 EADS1 事前の進捗確認 72 [1] write A するよ! Slave Slave Master A --- A --- A --- [1] write A 承認! [1] write A 承認![1] write A [1] write A
  • 74. © Hitachi, Ltd. 2015. All rights reserved. 「決定」を通知しようとしたら,障害が・・・ EADS2 EADS3 EADS4 EADS5 EADS1 事前の進捗確認 73 Slave Slave Master A --- A --- [1] write A [1] write A
  • 75. © Hitachi, Ltd. 2015. All rights reserved. 新しいサーバが処理を引き継ぐ EADS2 EADS3 EADS4 EADS5 EADS1 事前の進捗確認 74 Slave Slave Master A --- A --- [1] write A [1] write A 通信が切れた 処理引き継ぎ Master
  • 76. © Hitachi, Ltd. 2015. All rights reserved. 自分含め過半数に進捗を確認する。 EADS2 EADS3 EADS4 EADS5 EADS1 事前の進捗確認 75 Master Slave A --- A --- [1] write A [1] write A 今どう なってるの?
  • 77. © Hitachi, Ltd. 2015. All rights reserved. 記録した内容から進捗を報告 EADS2 EADS3 EADS4 EADS5 EADS1 事前の進捗確認 76 Master Slave A --- A --- [1] write A [1] write A 今どう なってるの? [1] write A 承認したよ なにも してないよ
  • 78. © Hitachi, Ltd. 2015. All rights reserved. 承認済みの内容があれば,それを提案する。 EADS2 EADS3 EADS4 EADS5 EADS1 事前の進捗確認 77 Master Slave A --- A --- [1] write A [1] write A じゃあ [1] write A しよう
  • 79. © Hitachi, Ltd. 2015. All rights reserved. 提案途中で障害が起きても処理は継続する。 EADS2 EADS3 EADS4 EADS5 EADS1 事前の進捗確認 78 Master Slave A --- A --- [1] write A [1] write A じゃあ [1] write A しよう [1] write A 承認! [1] write A 承認!
  • 80. © Hitachi, Ltd. 2015. All rights reserved. 事前の進捗確認 79 中途半端な状態で障害が起きても 別サーバで処理を継続できる。
  • 81. © Hitachi, Ltd. 2015. All rights reserved. Paxosの挙動 80 更新内容と順序を多数決 決定内容の補完 事前の進捗確認 スプリットブレインが起きたときはどうなるのか?
  • 82. © Hitachi, Ltd. 2015. All rights reserved. 一貫性が崩れる原因 おさらい 81 Write A=bbb Write A=ccc Aの処理 は引き継 ぎます。 A bbb A ccc A aaa 他から 応答が 来ない?
  • 83. © Hitachi, Ltd. 2015. All rights reserved. 更新内容と順序を「提案」するけれど EADS2 EADS3 EADS4 EADS5 EADS1 スプリットブレインの時は・・・ 82 Slave Slave Master A --- A --- A --- [1] write A するよ!
  • 84. © Hitachi, Ltd. 2015. All rights reserved. 過半数の承認を得られない。 EADS2 EADS3 EADS4 EADS5 EADS1 スプリットブレインの時は・・・ 83 Slave Slave Master A --- A --- A --- [1] write A するよ! [1] write A 承認! [1] write A [1] write A
  • 85. © Hitachi, Ltd. 2015. All rights reserved. 処理の引き継ぎが行われると・・・ EADS2 EADS3 EADS4 EADS5 EADS1 スプリットブレインの時は・・・ 84 Slave Slave Master A --- A --- A --- [1] write A [1] write A 通信が切れた 処理引き継ぎ Master
  • 86. © Hitachi, Ltd. 2015. All rights reserved. 事前確認が行われる。 EADS2 EADS3 EADS4 EADS5 EADS1 スプリットブレインの時は・・・ 85 Master Slave Master A --- A --- A --- [1] write A [1] write A 今どんな 感じですか?
  • 87. © Hitachi, Ltd. 2015. All rights reserved. 右側には通信が来ていないので EADS2 EADS3 EADS4 EADS5 EADS1 スプリットブレインの時は・・・ 86 Master Slave Master A --- A --- A --- [1] write A [1] write A 今どんな 感じですか? なにも してません なにも してません
  • 88. © Hitachi, Ltd. 2015. All rights reserved. まったく別の更新内容を提案する EADS2 EADS3 EADS4 EADS5 EADS1 スプリットブレインの時は・・・ 87 Master Slave Master A --- A --- A --- [1] write A [1] write A [1] write A # するよ!
  • 89. © Hitachi, Ltd. 2015. All rights reserved. 承認して覚えておく。 EADS2 EADS3 EADS4 EADS5 EADS1 スプリットブレインの時は・・・ 88 Master Slave Master A --- A --- A --- [1] write A [1] write A [1] write A # するよ! [1] write A # 承認! [1] write A # [1] write A # [1] write A # [1] write A # 承認!
  • 90. © Hitachi, Ltd. 2015. All rights reserved. こんなタイミングでネットワークが回復すると・・ EADS2 EADS3 EADS4 EADS5 EADS1 スプリットブレインの時は・・・ 89 Master Slave Master A --- A ### A ### [1] write A [1] write A [1] write A # [1] write A # [1] write A # [1] write A するよ!
  • 91. © Hitachi, Ltd. 2015. All rights reserved. 残り一人の承認は得られず,逆に補完される EADS2 EADS3 EADS4 EADS5 EADS1 スプリットブレインの時は・・・ 90 Master Slave Master A --- A ### A ### [1] write A [1] write A [1] write A # [1] write A # [1] write A # [1] write A # 決定ずみ!
  • 92. © Hitachi, Ltd. 2015. All rights reserved. EADS2 EADS3 EADS4 EADS5 EADS1 スプリットブレインの時は・・・ 91 Master Slave Master A ### A ### A ### [1] write A # [1] write A [1] write A # [1] write A # [1] write A #
  • 93. © Hitachi, Ltd. 2015. All rights reserved. Paxosの挙動 92 更新内容と順序を多数決 決定内容の補完 事前の進捗確認 スプリットブレインが起きたときはどうなるのか? 一貫性は崩れない!
  • 94. © Hitachi, Ltd. 2015. All rights reserved. まとめ 93
  • 95. © Hitachi, Ltd. 2015. All rights reserved. 一貫性へのこだわりと実現方法 -まとめ- 94 一貫性へのこだわり 社会インフラのシステムでの利用を想定 システムトラブルの原因になるデータ不整合を徹底対策 一貫性の実現方法 分散合意アルゴリズムのPaxosを導入 スプリットブレインでも崩れない強一貫性を実現
  • 96. © Hitachi, Ltd. 2015. All rights reserved. 他社商品名、商標等の引用に関する表示 95 • Hitachi Elastic Application Data Storeは,(株)日立製作所の登録商標です。 • その他記載の会社名,製品名は,それぞれの会社の商標もしくは登録商標です。 • 製品の改良により予告なく記載されている仕様が変更になることがあります。
  • 97. © Hitachi, Ltd. 2015. All rights reserved. 株式会社 日立製作所 情報・通信システム社 ITプラットフォーム事業本部 ~こだわりの理由と実現方法とは~ データ一貫性にこだわる日立のインメモリ分散KVS 2015/06/12 和田 洋祐 END 96