SlideShare una empresa de Scribd logo
1 de 83
Descargar para leer sin conexión
db tech showcase 東京 2013

インメモリ分散KVSの弱点。
一貫性が崩れる原因と、
それを克服する技術とは?
2013/11/13

日立製作所 情報・通信システム社
ソフトウェア開発本部 第2AP基盤ソフト設計部

梅田多一
自己紹介

© Hitachi, Ltd. 2013. All rights reserved.
2000年入社
・ミドルウェア開発
・テクニカルサポート
仕事のスタイル
・TTP
・GNN

DB Online
http://enterprisezine.jp/dbonline/detail/5010
© Hitachi, Ltd. 2013. All rights reserved.

2
インメモリ分散KVSの弱点。
一貫性が崩れる原因と、それを克服する技術とは?

Contents
インメモリデータグリッドって何だ?
インメモリデータグリッドの要素技術
強一貫性への挑戦!

© Hitachi, Ltd. 2013. All rights reserved.
インメモリ分散KVSの弱点。
一貫性が崩れる原因と、それを克服する技術とは?

インメモリデータグリッドって
何だ?

© Hitachi, Ltd. 2013. All rights reserved.
インメモリデータグリッドって何だ?

登場の背景

© Hitachi, Ltd. 2013. All rights reserved.

5
登場の背景
・発信データの爆発的増加(Big Data)
・データを扱うミドルウェアへの要件として
大量発信データの高速処理、リアルタイム分析、大量蓄積データの高速検索、、

モ ノ の発信

Bi g Data

電力メーター
運行情報

通話ログ

人 の発信
動画・画像・音声
コンテンツダウンロード

SNS
つぶやき

カーナビ
GPS

設備監視
物流トレース

メール・オフィス文書
スマートフォン

監視映像

環境・気象データ

データベース

ICカード利用

人の移動
ネット購入

診断画像・
電子カルテ
© Hitachi, Ltd. 2013. All rights reserved.

6
インメモリデータグリッドって何だ?

日立の取り組み

© Hitachi, Ltd. 2013. All rights reserved.

7
日立の取り組み
①uCosminexus Elastic Application Data store(以下EADs)(C16)
②uCosminexus Stream Data Platform(C23)
③Hitachi Advanced Data Binder プラットフォーム(C32)
③大量蓄積データの高速検索

データ

現場の状況をいち早く把握

修理指示

売り場への指示

データ

問題の解決
新たな価値の提供

①大量発信データの高速処理(インメモリデータグリッド)
②大量発信データのリアルタイム分析(CEP)
© Hitachi, Ltd. 2013. All rights reserved.

8
インメモリデータグリッドって何だ?

日立の案件

© Hitachi, Ltd. 2013. All rights reserved.

9
日立の案件(電力)
スマートメータ
収集サーバから出力される大量の検針値(30分値)を、
一定期間(40日)分DBに格納したい。

工場

検針値
1日分
オフィス

戸建

大量の検針値を
高速に受信

当日分メモリ保持、日次ジョブ実行による
一日分ファイル出力、一括DBロード
© Hitachi, Ltd. 2013. All rights reserved.

10
日立の案件(通信)
メディエーション/TMS
交換機から出力される大量のRawCDRを、
課金システムや帯域制御システム向けのCDRに編集したい。
RawCDR:
接続開始/一定時間経過/HO発生/接続終了などのタイミングで出力される、
接続ID、接続時間、通信量などの情報。
CDR:
同一の接続に対する分割情報であるRawCDRを結合(通信量の合算など)した情報。

RawCDR
CDR

大量の接続情報を
高速に受信

同一接続のデータ集合を
イベントドリブンに編集
© Hitachi, Ltd. 2013. All rights reserved.

11
インメモリデータグリッドって何だ?

インメモリデータグリッドの
3つの特徴

© Hitachi, Ltd. 2013. All rights reserved.

12
インメモリデータグリッドの3つの特徴

①インメモリKVSである

© Hitachi, Ltd. 2013. All rights reserved.

13
インメモリデータグリッドの3つの特徴
①インメモリKVS*である
・一意に識別可能な「キー」とそれに対応する「値」
で構成されるデータを保持するインメモリストア
→レスポンス性能
* KVS: Key Value Store

Key
Foo
Application Server

Value
A

インメモリKVS Bar
Baz

0
A,0

© Hitachi, Ltd. 2013. All rights reserved.

14
インメモリデータグリッドの3つの特徴

②分散している

© Hitachi, Ltd. 2013. All rights reserved.

15
インメモリデータグリッドの3つの特徴
②分散している
・複数サーバのメモリ上にデータを分散配置
→スループット性能と拡張性

Key

Value

Baz

A,0
Key
Foo

A

Bar

Application Server

Value
0

インメモリ分散KVS
© Hitachi, Ltd. 2013. All rights reserved.

16
インメモリデータグリッドの3つの特徴

③実行できる

© Hitachi, Ltd. 2013. All rights reserved.

17
インメモリデータグリッドの3つの特徴
③実行できる
・同時に使うデータを同じ場所に集約する(Grouping*)
・ユーザロジックの分散実行(Distributed Code Execution*)
→ネットワークトラフィックの削減とCPUの活用
* JSR 347: Data Grids for the
JavaTM Platform

Key

Value

G2:Foo

B

G2:Bar

1

G2:Baz

B,1

ユーザロジック

Application Server

インメモリデータグリッド

Key

Value

G1:Foo

A

G1:Bar

グループ処理

0

G1:Baz

A,0

© Hitachi, Ltd. 2013. All rights reserved.

18
インメモリデータグリッドって何だ?

まとめ

© Hitachi, Ltd. 2013. All rights reserved.

19
インメモリデータグリッドって何だ?
大量発信データの高速処理(レスポンス、スループット、スケールアウト)
を実現するために以下の特徴を持つもの
・インメモリKVSである
・分散している
・実行できる

© Hitachi, Ltd. 2013. All rights reserved.

20
インメモリ分散KVSの弱点。
一貫性が崩れる原因と、それを克服する技術とは?

インメモリデータグリッドの
要素技術
(EADs分散基盤編

)

© Hitachi, Ltd. 2013. All rights reserved.
インメモリデータグリッドの要素技術

コンシステントハッシング
~スループット性能向上~

© Hitachi, Ltd. 2013. All rights reserved.

22
コンシステントハッシング
・サーバは232の範囲に等分配置
・Keyのハッシュ値からマスタの保存先を決定
231-1 | -231

サーバ
マスタ

Hash(Foo)

レンジ

Put Foo A

EADs Tool
© Hitachi, Ltd. 2013. All rights reserved.

23
インメモリデータグリッドの要素技術

レプリケーション
~可用性向上~

© Hitachi, Ltd. 2013. All rights reserved.

24
レプリケーション
・多重度定義に従いデータを複製
・高速化のため非同期
231-1 | -231
スレーブ1
サーバ
マスタ

スレーブ2
Hash(Foo)

レンジ

Put Foo A

EADs Tool
© Hitachi, Ltd. 2013. All rights reserved.

25
レプリケーション
・1サーバは複数レンジのデータを保持

231-1 | -231

マスタ

スレーブ1

スレーブ2

EADs Tool
© Hitachi, Ltd. 2013. All rights reserved.

26
インメモリデータグリッドの要素技術

マスタ切替
~可用性向上~

© Hitachi, Ltd. 2013. All rights reserved.

27
マスタ切替(縮退時)
・ハートビートおよびヘルスチェックによる障害検知
・サーバを切り離しマスタを切り替える
障害
231-1 | -231

スレーブ1
→マスタ

EADs Tool
© Hitachi, Ltd. 2013. All rights reserved.

28
マスタ切替(復旧時)
・運用機能によるサーバ追加
・レンジ単位にデータ転送
復旧サーバ

復旧レンジ
転送速度

EADs Tool
© 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
インメモリデータグリッドの要素技術

整合性と一貫性

© Hitachi, Ltd. 2013. All rights reserved.

33
整合性と一貫性
整合性:マスタとスレーブの値が同じ
一貫性:すべてのクライアントから最新の値が見える

Foo=A

Foo=A
Foo=A

Get Foo
Get Foo

→A
→A

© Hitachi, Ltd. 2013. All rights reserved.

34
インメモリデータグリッドの要素技術

一貫性の3つの課題

© Hitachi, Ltd. 2013. All rights reserved.

35
一貫性の3つの課題

①複製順序不正による不整合

© Hitachi, Ltd. 2013. All rights reserved.

36
一貫性の3つの課題
①通信遅延⇒複製順序不正
⇒不整合⇒マスタ切替(永久的障害時)⇒一貫性?

①Foo=A
②Foo=B

①Foo=A
②Foo=B
①Foo=B
遅延
②Foo=A

①Put Foo A
②Put Foo B

整合性:マスタとスレーブの値が同じ
一貫性:すべてのクライアントから最新の値が見える
© Hitachi, Ltd. 2013. All rights reserved.

37
一貫性の3つの課題

②複製処理失敗による不整合

© Hitachi, Ltd. 2013. All rights reserved.

38
一貫性の3つの課題
②一時的障害(サーバ、ネットワーク)⇒複製処理失敗
⇒不整合⇒マスタ切替(永久的障害時)⇒一貫性?

Bar=0
失敗
Bar=01
Bar=01
成功

CAS Bar 0 1

CAS: Compare and Swap
整合性:マスタとスレーブの値が同じ
一貫性:すべてのクライアントから最新の値が見える
© Hitachi, Ltd. 2013. All rights reserved.

39
一貫性の3つの課題

③スプリットブレインによる不整合

© Hitachi, Ltd. 2013. All rights reserved.

40
一貫性の3つの課題
③L2スイッチの障害⇒ネットワーク分断
⇒複数マスタ⇒一貫性?
マスタはこのサーバだ!

スプリット

②Foo=B
マスタはこのサーバだ!
①Foo=A
②Foo=B

②Put Foo B
①Put Foo A

整合性:マスタとスレーブの値が同じ
一貫性:すべてのクライアントから最新の値が見える
© Hitachi, Ltd. 2013. All rights reserved.

41
インメモリデータグリッドの要素技術

参考

© 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
リードリペア
・読み込み処理時に複数のサーバからデータを取得
・古いデータは新しいデータで上書き
・マスタとスレーブの値がそのうち同じ(結果整合性)
・最新の値が見えるとは限らない(確度を調整可能(QUORUM))

整合性:マスタとスレーブの値が同じ
一貫性:すべてのクライアントから最新の値が見える
© Hitachi, Ltd. 2013. All rights reserved.

46
インメモリデータグリッドの要素技術

まとめ

© Hitachi, Ltd. 2013. All rights reserved.

47
インメモリデータグリッドの要素技術
要素技術
・コンシステントハッシング
・レプリケーション
・マスタ切替
・ゴシッププロトコル
・リードリペア
一貫性の3つの課題
①複製順序不正による不整合
②複製処理失敗による不整合
③スプリットブレインによる不整合

© Hitachi, Ltd. 2013. All rights reserved.

48
インメモリ分散KVSの弱点。
一貫性が崩れる原因と、それを克服する技術とは?

強一貫性への挑戦!

© Hitachi, Ltd. 2013. All rights reserved.
強一貫性への挑戦!

解決へのアプローチ

© Hitachi, Ltd. 2013. All rights reserved.

50
解決へのアプローチ
①複製順序不正による不整合
②複製処理失敗による不整合
③スプリットブレインによる不整合

データ更新、ステータス更新に
分散合意アルゴリズムPaxos*を採用

* The Part-Time Parliament
LESLIE LAMPORT, 1998

© Hitachi, Ltd. 2013. All rights reserved.

51
強一貫性への挑戦!

Paxosとは

© Hitachi, Ltd. 2013. All rights reserved.

52
Paxosとは
サーバの集合が同じ処理を同じ順番で実行するためのアルゴリズム

Server1

Server2

Server3

1番目の処理

put(k1,v1)

put(k1,v1)

put(k1,v1)

2番目の処理

remove(k1)

remove(k1)

remove(k1)

i番目の処理

put(k1,v2)

put(k1,v2)

put(k1,v2)

整合

キー
k1

バリュー
v2
© Hitachi, Ltd. 2013. All rights reserved.

53
Paxosとは
Proposer:
1. i番目の処理を提案
Acceptor:
2. Acceptor間で過半数承認(i番目の処理を合意)
3. i番目の処理を実行
※i-1番目までの処理を実行していなければ、
i-1番目までの処理を他のAcceptorから取得して実行(FillGaps)

© Hitachi, Ltd. 2013. All rights reserved.

54
強一貫性への挑戦!

一貫性保証のための3つの実装

© Hitachi, Ltd. 2013. All rights reserved.

55
一貫性保証のための3つの実装

①複製順序不正による不整合
の回避

© Hitachi, Ltd. 2013. All rights reserved.

56
①複製順序不正による不整合の回避
Proposer:マスタを持つサーバ
Acceptor:マスタ、スレーブ1、スレーブ2を持つサーバ+スペア*×2
* スペア:過半数承認用(2多重障害対応)。ストア操作なし。
サーバ1
put(k,v)

レンジ用
Paxos

実行
キュー

実行
スレッド

ストア
マスタ
スレーブ1
スレーブ2

サーバ2
マスタ
スレーブ1
スレーブ2

サーバ3
マスタ
スレーブ1
スレーブ2

サーバ4
マスタ
スレーブ1
スレーブ2

サーバ5
マスタ
スレーブ1
スレーブ2
© Hitachi, Ltd. 2013. All rights reserved.

57
①複製順序不正による不整合の回避
Proposer:i番目の処理を提案
Acceptor:Acceptor間で過半数承認(i番目の処理を合意)
サーバ1

レンジ用
Paxos

put(k,v)

実行
キュー

実行
スレッド

ストア

ok

マスタ
スレーブ1
スレーブ2

ok

マスタ
スレーブ1
スレーブ2

ok

マスタ
スレーブ1
スレーブ2

ok

マスタ
スレーブ1
スレーブ2

ok

マスタ
スレーブ1
スレーブ2

i

サーバ2

サーバ3

サーバ4

サーバ5

© Hitachi, Ltd. 2013. All rights reserved.

58
①複製順序不正による不整合の回避
Acceptor:i番目の処理を実行
”①複製順序不正による不整合”は発生しない!
サーバ1

レンジ用
Paxos

実行
キュー

put(k,v)

実行
スレッド

ストア

i

マスタ
スレーブ1
スレーブ2

i

マスタ
スレーブ1
スレーブ2

i

マスタ
スレーブ1
スレーブ2

サーバ2

サーバ3

サーバ4
マスタ
スレーブ1
スレーブ2

サーバ5
マスタ
スレーブ1
スレーブ2
© Hitachi, Ltd. 2013. All rights reserved.

59
①複製順序不正による不整合の回避
サーバの集合が同じ処理を同じ順番で実行する
同じ処理ができなければ縮退(一貫性>可用性)
サーバ1

レンジ用
Paxos

実行
キュー

実行
スレッド

ストア

put(k,v)

マスタ
スレーブ1
スレーブ2

i

サーバ2
i

失敗

マスタ
スレーブ1
スレーブ2

サーバ3
i

マスタ
スレーブ1
スレーブ2

サーバ4
マスタ
スレーブ1
スレーブ2

サーバ5
マスタ
スレーブ1
スレーブ2
© Hitachi, Ltd. 2013. All rights reserved.

60
一貫性保証のための3つの実装

②複製処理失敗による不整合
の対処

© Hitachi, Ltd. 2013. All rights reserved.

61
②複製処理失敗による不整合の対処
一時的障害(サーバ、ネットワーク)

サーバ1
cas(k,v1,v2)

レンジ用
Paxos

実行
キュー

実行
スレッド

ストア
マスタ
スレーブ1
スレーブ2

サーバ2

一時的障害

マスタ
スレーブ1
スレーブ2

サーバ3
マスタ
スレーブ1
スレーブ2

サーバ4
マスタ
スレーブ1
スレーブ2

サーバ5
マスタ
スレーブ1
スレーブ2
© Hitachi, Ltd. 2013. All rights reserved.

62
②複製処理失敗による不整合の対処
Proposer:i番目の処理を提案
Acceptor:Acceptor間で過半数承認(i番目の処理を合意)
サーバ1

レンジ用
Paxos

cas(k,v1,v2)
i

ok

実行
キュー

実行
スレッド

ストア
マスタ
スレーブ1
スレーブ2

サーバ2
マスタ
スレーブ1
スレーブ2

一時的障害

サーバ3

ok

マスタ
スレーブ1
スレーブ2

ok

マスタ
スレーブ1
スレーブ2

ok

マスタ
スレーブ1
スレーブ2

サーバ4

サーバ5

© Hitachi, Ltd. 2013. All rights reserved.

63
②複製処理失敗による不整合の対処
Acceptor:i番目の処理を実行

サーバ1

レンジ用
Paxos

実行
キュー

cas(k,v1,v2)
i

実行
スレッド

ストア
マスタ
スレーブ1
スレーブ2

サーバ2
マスタ
スレーブ1
スレーブ2

一時的障害

サーバ3
i

マスタ
スレーブ1
スレーブ2

サーバ4
マスタ
スレーブ1
スレーブ2

サーバ5
マスタ
スレーブ1
スレーブ2
© Hitachi, Ltd. 2013. All rights reserved.

64
②複製処理失敗による不整合の対処
不整合

サーバ1

レンジ用
Paxos

実行
キュー

実行
スレッド

ストア

cas(k,v2,v3)
i

サーバ2

マスタ
スレーブ1
スレーブ2

不整合
マスタ
スレーブ1
スレーブ2

サーバ3
i

マスタ
スレーブ1
スレーブ2

サーバ4
マスタ
スレーブ1
スレーブ2

サーバ5
マスタ
スレーブ1
スレーブ2
© Hitachi, Ltd. 2013. All rights reserved.

65
②複製処理失敗による不整合の対処
Proposer:i+1番目の処理を提案
Acceptor:Acceptor間で過半数承認(i+1番目の処理を合意)
サーバ1

レンジ用
Paxos

実行
キュー

実行
スレッド

ストア

cas(k,v2,v3)
i

i+1

ok
サーバ2

マスタ
スレーブ1
スレーブ2

不整合
マスタ
スレーブ1
スレーブ2

ok
サーバ3

ok

マスタ
スレーブ1
スレーブ2

ok

マスタ
スレーブ1
スレーブ2

ok

マスタ
スレーブ1
スレーブ2

i

サーバ4

サーバ5

© Hitachi, Ltd. 2013. All rights reserved.

66
②複製処理失敗による不整合の対処
Acceptor:FillGapsをおこなってからi+1番目の処理を実行

サーバ1

レンジ用
Paxos

実行
キュー

実行
スレッド

ストア

cas(k,v2,v3)
i

i+1

サーバ2

マスタ
スレーブ1
スレーブ2

不整合
FillGaps

マスタ
スレーブ1
スレーブ2

i+1 i

サーバ3
i+1

i

マスタ
スレーブ1
スレーブ2

サーバ4
マスタ
スレーブ1
スレーブ2

サーバ5
マスタ
スレーブ1
スレーブ2
© Hitachi, Ltd. 2013. All rights reserved.

67
②複製処理失敗による不整合の対処
不整合
永久的障害によるマスタ切替
サーバ1

レンジ用
Paxos

実行
キュー

実行
スレッド

永久的障害

サーバ2
get(k)

ストア
i

マスタ
スレーブ1
スレーブ2

不整合
マスタ
マスタ
スレーブ2

マスタ切替

サーバ3
i

マスタ
スレーブ1
スレーブ2

サーバ4
マスタ
スレーブ1
スレーブ2

サーバ5
マスタ
スレーブ1
スレーブ2
© Hitachi, Ltd. 2013. All rights reserved.

68
②複製処理失敗による不整合の対処
Acceptor:マスタ切替後はFillGapsをおこなってからgetを受付
”②複製処理失敗による不整合”が発生しても一貫性を保証する!
サーバ1

レンジ用
Paxos

実行
キュー

実行
スレッド

永久的障害

ストア
i

サーバ2

マスタ
スレーブ1
スレーブ2

不整合

get(k)

マスタ
マスタ
スレーブ2

FillGaps i

マスタ切替

サーバ3
i

マスタ
スレーブ1
スレーブ2

サーバ4
マスタ
スレーブ1
スレーブ2

サーバ5
マスタ
スレーブ1
スレーブ2
© Hitachi, Ltd. 2013. All rights reserved.

69
②複製処理失敗による不整合の対処
サーバの集合が同じ処理を同じ順番で実行する
同じ順番でできなければ縮退(一貫性>可用性)
サーバ1

レンジ用
Paxos

実行
キュー

実行
スレッド

永久的障害

ストア
i

サーバ2
get(k)

失敗

マスタ
スレーブ1
スレーブ2

不整合
マスタ
マスタ
スレーブ2

FillGaps

マスタ切替

サーバ3
i

マスタ
スレーブ1
スレーブ2

サーバ4
マスタ
スレーブ1
スレーブ2

サーバ5
マスタ
スレーブ1
スレーブ2
© Hitachi, Ltd. 2013. All rights reserved.

70
一貫性保証のための3つの実装

③スプリットブレインによる不整合
の対処

© Hitachi, Ltd. 2013. All rights reserved.

71
③スプリットブレインによる不整合の対処
L2スイッチの障害

サーバ1
3×
4×
5×

クラスタ用
Paxos

実行
キュー

実行
スレッド

ストア
マスタ
スレーブ1
スレーブ2

サーバ2
3×
4×
5×

マスタ
スレーブ1
スレーブ2

スプリット

サーバ3
1×
2×

マスタ
スレーブ1
スレーブ2

サーバ4
1×
2×

マスタ
スレーブ1
スレーブ2

サーバ5
1×
2×

マスタ
スレーブ1
スレーブ2
© Hitachi, Ltd. 2013. All rights reserved.

72
③スプリットブレインによる不整合の対処
Proposer:障害を検知したサーバ
Acceptor:すべてのサーバ
サーバ1
3×
4×
5×

クラスタ用
Paxos

実行
キュー

実行
スレッド

ストア
マスタ
スレーブ1
スレーブ2

サーバ2
3×
4×
5×

マスタ
スレーブ1
スレーブ2

スプリット

サーバ3
1×
2×

マスタ
スレーブ1
スレーブ2

サーバ4
1×
2×

マスタ
スレーブ1
スレーブ2

サーバ5
1×
2×

マスタ
スレーブ1
スレーブ2
© Hitachi, Ltd. 2013. All rights reserved.

73
③スプリットブレインによる不整合の対処
Proposer:i番目の処理を提案
Acceptor:Acceptor間で過半数承認(i番目の処理を合意)
サーバ1
3×
4×
5×

クラスタ用
Paxos
i+2 i+1

i

ok ok ok

実行
キュー

実行
スレッド

ストア
マスタ
スレーブ1
スレーブ2

サーバ2
3×
4×
5×

i+2 i+1

i

ok ok ok

マスタ
スレーブ1
スレーブ2

スプリット

サーバ3
1×
2×

合意
i+1

i

ok ok

マスタ
スレーブ1
スレーブ2

サーバ4
1×
2×

i+1

i

ok ok

マスタ
スレーブ1
スレーブ2

サーバ5
1×
2×

i+1

i

ok ok

マスタ
スレーブ1
スレーブ2
© Hitachi, Ltd. 2013. All rights reserved.

74
③スプリットブレインによる不整合の対処
Acceptor:i番目の処理を実行

サーバ1
3×
4×
5×

クラスタ用
Paxos
i+2 i+1

実行
キュー

実行
スレッド

ストア
マスタ
スレーブ1
スレーブ2

i

ok ok ok

サーバ2
3×
4×
5×

i+2 i+1

マスタ
スレーブ1
スレーブ2

i

ok ok ok

スプリット

サーバ3
1×
2×

i+1 i

マスタ
スレーブ1
スレーブ2

i+1 i

マスタ
スレーブ1
スレーブ2

i+1 i

マスタ
スレーブ1
スレーブ2

サーバ4
1×
2×
サーバ5
1×
2×

© Hitachi, Ltd. 2013. All rights reserved.

75
③スプリットブレインによる不整合の対処
不整合
複数マスタ
サーバ1
get(k)

3×
4×
5×

クラスタ用
Paxos
i+2 i+1

実行
キュー

実行
スレッド
不整合

i

ok ok ok

ストア
マスタ
スレーブ1
スレーブ2

サーバ2
3×
4×
5×
get(k)

不整合
i+2 i+1

i

ok ok ok

マスタ
スレーブ1
スレーブ2

スプリット

サーバ3
1×
2×

i+1 i

マスタ
マスタ
マスタ

マスタ切替
FillGaps

サーバ4
1×
2×

i+1 i

マスタ
スレーブ1
スレーブ2

サーバ5
1×
2×

i+1 i

マスタ
スレーブ1
スレーブ2
© Hitachi, Ltd. 2013. All rights reserved.

76
③スプリットブレインによる不整合の対処
Acceptor:過半数サーバ縮退の提案が通らなければgetを拒否
”③スプリットブレインによる不整合”が発生しても一貫性を保証する!
サーバ1
get(k)

失敗

3×
4×
5×

クラスタ用
Paxos
i+2 i+1

実行
キュー

実行
スレッド
不整合

i

ok ok ok

ストア
マスタ
スレーブ1
スレーブ2

サーバ2
3×
4×
5×
get(k)

不整合
i+2 i+1

i

ok ok ok

マスタ
スレーブ1
スレーブ2

スプリット

サーバ3
1×
2×

i+1 i

成功

マスタ
マスタ
マスタ

マスタ切替
FillGaps

サーバ4
1×
2×

i+1 i

マスタ
スレーブ1
スレーブ2

サーバ5
1×
2×

i+1 i

マスタ
スレーブ1
スレーブ2
© Hitachi, Ltd. 2013. All rights reserved.

77
強一貫性への挑戦!

まとめ

© Hitachi, Ltd. 2013. All rights reserved.

78
強一貫性への挑戦!
Paxos
・サーバの集合が同じ処理を同じ順番で実行するためのアルゴリズム
一貫性保証のための3つの実装
①複製順序不正による不整合の回避
②複製処理失敗による不整合の対処
③スプリットブレインによる不整合の対処

© Hitachi, Ltd. 2013. All rights reserved.

79
他社商品名、商標等の引用に関する表示

•
•
•

Javaは、Oracle Corporation 及びその子会社、関連会社の米国及びその他の国における登録商標です。
その他、記載の会社名、製品名は、それぞれの会社の商標または登録商標です。
製品の改良により予告なく記載されている仕様が変更になることがあります。

© Hitachi, Ltd. 2013. All rights reserved.

80
db tech showcase 東京 2013

END
インメモリ分散KVSの弱点。一貫性が崩れる原因と、それを克服する技術とは?

2013/11/13
日立製作所 情報・通信システム社
ソフトウェア開発本部 第2AP基盤ソフト設計部

梅田多一
[C16] インメモリ分散KVSの弱点。一貫性が崩れる原因と、それを克服する技術とは? by Taichi Umeda

Más contenido relacionado

La actualidad más candente

kubernetes初心者がKnative Lambda Runtime触ってみた(Kubernetes Novice Tokyo #13 発表資料)
kubernetes初心者がKnative Lambda Runtime触ってみた(Kubernetes Novice Tokyo #13 発表資料)kubernetes初心者がKnative Lambda Runtime触ってみた(Kubernetes Novice Tokyo #13 発表資料)
kubernetes初心者がKnative Lambda Runtime触ってみた(Kubernetes Novice Tokyo #13 発表資料)NTT DATA Technology & Innovation
 
Mercari JPのモノリスサービスをKubernetesに移行した話 PHP Conference 2022 9/24
Mercari JPのモノリスサービスをKubernetesに移行した話 PHP Conference 2022 9/24Mercari JPのモノリスサービスをKubernetesに移行した話 PHP Conference 2022 9/24
Mercari JPのモノリスサービスをKubernetesに移行した話 PHP Conference 2022 9/24Shin Ohno
 
アーキテクチャから理解するPostgreSQLのレプリケーション
アーキテクチャから理解するPostgreSQLのレプリケーションアーキテクチャから理解するPostgreSQLのレプリケーション
アーキテクチャから理解するPostgreSQLのレプリケーションMasahiko Sawada
 
DockerとPodmanの比較
DockerとPodmanの比較DockerとPodmanの比較
DockerとPodmanの比較Akihiro Suda
 
超実践 Cloud Spanner 設計講座
超実践 Cloud Spanner 設計講座超実践 Cloud Spanner 設計講座
超実践 Cloud Spanner 設計講座Samir Hammoudi
 
AlloyDBを触ってみた!(第33回PostgreSQLアンカンファレンス@オンライン 発表資料)
AlloyDBを触ってみた!(第33回PostgreSQLアンカンファレンス@オンライン 発表資料)AlloyDBを触ってみた!(第33回PostgreSQLアンカンファレンス@オンライン 発表資料)
AlloyDBを触ってみた!(第33回PostgreSQLアンカンファレンス@オンライン 発表資料)NTT DATA Technology & Innovation
 
[GKE & Spanner 勉強会] Cloud Spanner の技術概要
[GKE & Spanner 勉強会] Cloud Spanner の技術概要[GKE & Spanner 勉強会] Cloud Spanner の技術概要
[GKE & Spanner 勉強会] Cloud Spanner の技術概要Google Cloud Platform - Japan
 
地理分散DBについて
地理分散DBについて地理分散DBについて
地理分散DBについてKumazaki Hiroki
 
え、まって。その並列分散処理、Kafkaのしくみでもできるの? Apache Kafkaの機能を利用した大規模ストリームデータの並列分散処理
え、まって。その並列分散処理、Kafkaのしくみでもできるの? Apache Kafkaの機能を利用した大規模ストリームデータの並列分散処理え、まって。その並列分散処理、Kafkaのしくみでもできるの? Apache Kafkaの機能を利用した大規模ストリームデータの並列分散処理
え、まって。その並列分散処理、Kafkaのしくみでもできるの? Apache Kafkaの機能を利用した大規模ストリームデータの並列分散処理NTT DATA Technology & Innovation
 
例外設計における大罪
例外設計における大罪例外設計における大罪
例外設計における大罪Takuto Wada
 
単なるキャッシュじゃないよ!?infinispanの紹介
単なるキャッシュじゃないよ!?infinispanの紹介単なるキャッシュじゃないよ!?infinispanの紹介
単なるキャッシュじゃないよ!?infinispanの紹介AdvancedTechNight
 
トランザクションの設計と進化
トランザクションの設計と進化トランザクションの設計と進化
トランザクションの設計と進化Kumazaki Hiroki
 
ストリーム処理を支えるキューイングシステムの選び方
ストリーム処理を支えるキューイングシステムの選び方ストリーム処理を支えるキューイングシステムの選び方
ストリーム処理を支えるキューイングシステムの選び方Yoshiyasu SAEKI
 
Kubernetes Service Account As Multi-Cloud Identity / Cloud Native Security Co...
Kubernetes Service Account As Multi-Cloud Identity / Cloud Native Security Co...Kubernetes Service Account As Multi-Cloud Identity / Cloud Native Security Co...
Kubernetes Service Account As Multi-Cloud Identity / Cloud Native Security Co...Preferred Networks
 
GraalVMのJavaネイティブビルド機能でどの程度起動が速くなるのか?~サーバレス基盤上での評価~ / How fast does GraalVM's...
GraalVMのJavaネイティブビルド機能でどの程度起動が速くなるのか?~サーバレス基盤上での評価~ / How fast does GraalVM's...GraalVMのJavaネイティブビルド機能でどの程度起動が速くなるのか?~サーバレス基盤上での評価~ / How fast does GraalVM's...
GraalVMのJavaネイティブビルド機能でどの程度起動が速くなるのか?~サーバレス基盤上での評価~ / How fast does GraalVM's...Shinji Takao
 
PostgreSQLのロール管理とその注意点(Open Source Conference 2022 Online/Osaka 発表資料)
PostgreSQLのロール管理とその注意点(Open Source Conference 2022 Online/Osaka 発表資料)PostgreSQLのロール管理とその注意点(Open Source Conference 2022 Online/Osaka 発表資料)
PostgreSQLのロール管理とその注意点(Open Source Conference 2022 Online/Osaka 発表資料)NTT DATA Technology & Innovation
 
分散システムの限界について知ろう
分散システムの限界について知ろう分散システムの限界について知ろう
分散システムの限界について知ろうShingo Omura
 

La actualidad más candente (20)

kubernetes初心者がKnative Lambda Runtime触ってみた(Kubernetes Novice Tokyo #13 発表資料)
kubernetes初心者がKnative Lambda Runtime触ってみた(Kubernetes Novice Tokyo #13 発表資料)kubernetes初心者がKnative Lambda Runtime触ってみた(Kubernetes Novice Tokyo #13 発表資料)
kubernetes初心者がKnative Lambda Runtime触ってみた(Kubernetes Novice Tokyo #13 発表資料)
 
TLS, HTTP/2演習
TLS, HTTP/2演習TLS, HTTP/2演習
TLS, HTTP/2演習
 
Mercari JPのモノリスサービスをKubernetesに移行した話 PHP Conference 2022 9/24
Mercari JPのモノリスサービスをKubernetesに移行した話 PHP Conference 2022 9/24Mercari JPのモノリスサービスをKubernetesに移行した話 PHP Conference 2022 9/24
Mercari JPのモノリスサービスをKubernetesに移行した話 PHP Conference 2022 9/24
 
アーキテクチャから理解するPostgreSQLのレプリケーション
アーキテクチャから理解するPostgreSQLのレプリケーションアーキテクチャから理解するPostgreSQLのレプリケーション
アーキテクチャから理解するPostgreSQLのレプリケーション
 
DockerとPodmanの比較
DockerとPodmanの比較DockerとPodmanの比較
DockerとPodmanの比較
 
超実践 Cloud Spanner 設計講座
超実践 Cloud Spanner 設計講座超実践 Cloud Spanner 設計講座
超実践 Cloud Spanner 設計講座
 
AlloyDBを触ってみた!(第33回PostgreSQLアンカンファレンス@オンライン 発表資料)
AlloyDBを触ってみた!(第33回PostgreSQLアンカンファレンス@オンライン 発表資料)AlloyDBを触ってみた!(第33回PostgreSQLアンカンファレンス@オンライン 発表資料)
AlloyDBを触ってみた!(第33回PostgreSQLアンカンファレンス@オンライン 発表資料)
 
[GKE & Spanner 勉強会] Cloud Spanner の技術概要
[GKE & Spanner 勉強会] Cloud Spanner の技術概要[GKE & Spanner 勉強会] Cloud Spanner の技術概要
[GKE & Spanner 勉強会] Cloud Spanner の技術概要
 
地理分散DBについて
地理分散DBについて地理分散DBについて
地理分散DBについて
 
え、まって。その並列分散処理、Kafkaのしくみでもできるの? Apache Kafkaの機能を利用した大規模ストリームデータの並列分散処理
え、まって。その並列分散処理、Kafkaのしくみでもできるの? Apache Kafkaの機能を利用した大規模ストリームデータの並列分散処理え、まって。その並列分散処理、Kafkaのしくみでもできるの? Apache Kafkaの機能を利用した大規模ストリームデータの並列分散処理
え、まって。その並列分散処理、Kafkaのしくみでもできるの? Apache Kafkaの機能を利用した大規模ストリームデータの並列分散処理
 
例外設計における大罪
例外設計における大罪例外設計における大罪
例外設計における大罪
 
単なるキャッシュじゃないよ!?infinispanの紹介
単なるキャッシュじゃないよ!?infinispanの紹介単なるキャッシュじゃないよ!?infinispanの紹介
単なるキャッシュじゃないよ!?infinispanの紹介
 
At least onceってぶっちゃけ問題の先送りだったよね #kafkajp
At least onceってぶっちゃけ問題の先送りだったよね #kafkajpAt least onceってぶっちゃけ問題の先送りだったよね #kafkajp
At least onceってぶっちゃけ問題の先送りだったよね #kafkajp
 
トランザクションの設計と進化
トランザクションの設計と進化トランザクションの設計と進化
トランザクションの設計と進化
 
ストリーム処理を支えるキューイングシステムの選び方
ストリーム処理を支えるキューイングシステムの選び方ストリーム処理を支えるキューイングシステムの選び方
ストリーム処理を支えるキューイングシステムの選び方
 
Kubernetes Service Account As Multi-Cloud Identity / Cloud Native Security Co...
Kubernetes Service Account As Multi-Cloud Identity / Cloud Native Security Co...Kubernetes Service Account As Multi-Cloud Identity / Cloud Native Security Co...
Kubernetes Service Account As Multi-Cloud Identity / Cloud Native Security Co...
 
GraalVMのJavaネイティブビルド機能でどの程度起動が速くなるのか?~サーバレス基盤上での評価~ / How fast does GraalVM's...
GraalVMのJavaネイティブビルド機能でどの程度起動が速くなるのか?~サーバレス基盤上での評価~ / How fast does GraalVM's...GraalVMのJavaネイティブビルド機能でどの程度起動が速くなるのか?~サーバレス基盤上での評価~ / How fast does GraalVM's...
GraalVMのJavaネイティブビルド機能でどの程度起動が速くなるのか?~サーバレス基盤上での評価~ / How fast does GraalVM's...
 
PostgreSQLのロール管理とその注意点(Open Source Conference 2022 Online/Osaka 発表資料)
PostgreSQLのロール管理とその注意点(Open Source Conference 2022 Online/Osaka 発表資料)PostgreSQLのロール管理とその注意点(Open Source Conference 2022 Online/Osaka 発表資料)
PostgreSQLのロール管理とその注意点(Open Source Conference 2022 Online/Osaka 発表資料)
 
Docker Compose 徹底解説
Docker Compose 徹底解説Docker Compose 徹底解説
Docker Compose 徹底解説
 
分散システムの限界について知ろう
分散システムの限界について知ろう分散システムの限界について知ろう
分散システムの限界について知ろう
 

Similar a [C16] インメモリ分散KVSの弱点。一貫性が崩れる原因と、それを克服する技術とは? by Taichi Umeda

C22 スプリットブレインになっても一貫性を保証するインメモリデータグリッド製品 by Taichi Umeda
C22 スプリットブレインになっても一貫性を保証するインメモリデータグリッド製品 by  Taichi UmedaC22 スプリットブレインになっても一貫性を保証するインメモリデータグリッド製品 by  Taichi Umeda
C22 スプリットブレインになっても一貫性を保証するインメモリデータグリッド製品 by Taichi UmedaInsight Technology, Inc.
 
実践!DBベンチマークツールの使い方
実践!DBベンチマークツールの使い方実践!DBベンチマークツールの使い方
実践!DBベンチマークツールの使い方Fujishiro Takuya
 
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.
 
DBTS2015 Tokyo DBAが知っておくべき最新テクノロジー
DBTS2015 Tokyo DBAが知っておくべき最新テクノロジーDBTS2015 Tokyo DBAが知っておくべき最新テクノロジー
DBTS2015 Tokyo DBAが知っておくべき最新テクノロジーMasaya Ishikawa
 
D24 ビックデータへの苦難と、国産データベースの挑戦 自社従来比100倍の性能に挑む、超高速データベースエンジンHitachi Advanced Dat...
D24 ビックデータへの苦難と、国産データベースの挑戦 自社従来比100倍の性能に挑む、超高速データベースエンジンHitachi Advanced Dat...D24 ビックデータへの苦難と、国産データベースの挑戦 自社従来比100倍の性能に挑む、超高速データベースエンジンHitachi Advanced Dat...
D24 ビックデータへの苦難と、国産データベースの挑戦 自社従来比100倍の性能に挑む、超高速データベースエンジンHitachi Advanced Dat...Insight Technology, Inc.
 
Reckonerサービス紹介資料.pdf
Reckonerサービス紹介資料.pdfReckonerサービス紹介資料.pdf
Reckonerサービス紹介資料.pdfYoshihiroKitamura4
 
【GridDB入門】 IoT、そしてサイバー・フィジカル・システムを支える オープンソースデータベース GridDB ~ こだわりの理由と実現方法のポイント
【GridDB入門】 IoT、そしてサイバー・フィジカル・システムを支える オープンソースデータベース GridDB ~ こだわりの理由と実現方法のポイント【GridDB入門】 IoT、そしてサイバー・フィジカル・システムを支える オープンソースデータベース GridDB ~ こだわりの理由と実現方法のポイント
【GridDB入門】 IoT、そしてサイバー・フィジカル・システムを支える オープンソースデータベース GridDB ~ こだわりの理由と実現方法のポイントgriddb
 
de:code2018 登壇資料
de:code2018 登壇資料de:code2018 登壇資料
de:code2018 登壇資料Hiroshi Senga
 
Aws summits2014 nttデータaws上のシステムはこう作る!
Aws summits2014 nttデータaws上のシステムはこう作る!Aws summits2014 nttデータaws上のシステムはこう作る!
Aws summits2014 nttデータaws上のシステムはこう作る!Boss4434
 
【たぶん日本初導入!】Azure Stack Hub with GPUの性能と機能紹介
【たぶん日本初導入!】Azure Stack Hub with GPUの性能と機能紹介【たぶん日本初導入!】Azure Stack Hub with GPUの性能と機能紹介
【たぶん日本初導入!】Azure Stack Hub with GPUの性能と機能紹介NTT Communications Technology Development
 
TEE (Trusted Execution Environment)は第二の仮想化技術になるか?
TEE (Trusted Execution Environment)は第二の仮想化技術になるか?TEE (Trusted Execution Environment)は第二の仮想化技術になるか?
TEE (Trusted Execution Environment)は第二の仮想化技術になるか?Kuniyasu Suzaki
 
20141203 tiberoセミナー講演資料
20141203 tiberoセミナー講演資料20141203 tiberoセミナー講演資料
20141203 tiberoセミナー講演資料tmaxsoftjpn
 
AI/MLシステムにおけるビッグデータとの付き合い方
AI/MLシステムにおけるビッグデータとの付き合い方AI/MLシステムにおけるビッグデータとの付き合い方
AI/MLシステムにおけるビッグデータとの付き合い方Shota Suzuki
 
Hyper-V エンタープライズ設計の現実解:2015 年版
Hyper-V エンタープライズ設計の現実解:2015 年版Hyper-V エンタープライズ設計の現実解:2015 年版
Hyper-V エンタープライズ設計の現実解:2015 年版Daichi Ogawa
 
ヒーロー島 Visual Studio 2012
ヒーロー島 Visual Studio 2012ヒーロー島 Visual Studio 2012
ヒーロー島 Visual Studio 2012智治 長沢
 
オールアバウトにおける技術への取り組み
オールアバウトにおける技術への取り組みオールアバウトにおける技術への取り組み
オールアバウトにおける技術への取り組みKazuto Ohara
 
Share pointを支えるsql server2014最新情報 tokyo_公開用
Share pointを支えるsql server2014最新情報 tokyo_公開用Share pointを支えるsql server2014最新情報 tokyo_公開用
Share pointを支えるsql server2014最新情報 tokyo_公開用Yukio Kumazawa
 

Similar a [C16] インメモリ分散KVSの弱点。一貫性が崩れる原因と、それを克服する技術とは? by Taichi Umeda (20)

C22 スプリットブレインになっても一貫性を保証するインメモリデータグリッド製品 by Taichi Umeda
C22 スプリットブレインになっても一貫性を保証するインメモリデータグリッド製品 by  Taichi UmedaC22 スプリットブレインになっても一貫性を保証するインメモリデータグリッド製品 by  Taichi Umeda
C22 スプリットブレインになっても一貫性を保証するインメモリデータグリッド製品 by Taichi Umeda
 
実践!DBベンチマークツールの使い方
実践!DBベンチマークツールの使い方実践!DBベンチマークツールの使い方
実践!DBベンチマークツールの使い方
 
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
 
DBTS2015 Tokyo DBAが知っておくべき最新テクノロジー
DBTS2015 Tokyo DBAが知っておくべき最新テクノロジーDBTS2015 Tokyo DBAが知っておくべき最新テクノロジー
DBTS2015 Tokyo DBAが知っておくべき最新テクノロジー
 
D24 ビックデータへの苦難と、国産データベースの挑戦 自社従来比100倍の性能に挑む、超高速データベースエンジンHitachi Advanced Dat...
D24 ビックデータへの苦難と、国産データベースの挑戦 自社従来比100倍の性能に挑む、超高速データベースエンジンHitachi Advanced Dat...D24 ビックデータへの苦難と、国産データベースの挑戦 自社従来比100倍の性能に挑む、超高速データベースエンジンHitachi Advanced Dat...
D24 ビックデータへの苦難と、国産データベースの挑戦 自社従来比100倍の性能に挑む、超高速データベースエンジンHitachi Advanced Dat...
 
Reckonerサービス紹介資料.pdf
Reckonerサービス紹介資料.pdfReckonerサービス紹介資料.pdf
Reckonerサービス紹介資料.pdf
 
【GridDB入門】 IoT、そしてサイバー・フィジカル・システムを支える オープンソースデータベース GridDB ~ こだわりの理由と実現方法のポイント
【GridDB入門】 IoT、そしてサイバー・フィジカル・システムを支える オープンソースデータベース GridDB ~ こだわりの理由と実現方法のポイント【GridDB入門】 IoT、そしてサイバー・フィジカル・システムを支える オープンソースデータベース GridDB ~ こだわりの理由と実現方法のポイント
【GridDB入門】 IoT、そしてサイバー・フィジカル・システムを支える オープンソースデータベース GridDB ~ こだわりの理由と実現方法のポイント
 
de:code2018 登壇資料
de:code2018 登壇資料de:code2018 登壇資料
de:code2018 登壇資料
 
Aws summits2014 nttデータaws上のシステムはこう作る!
Aws summits2014 nttデータaws上のシステムはこう作る!Aws summits2014 nttデータaws上のシステムはこう作る!
Aws summits2014 nttデータaws上のシステムはこう作る!
 
【たぶん日本初導入!】Azure Stack Hub with GPUの性能と機能紹介
【たぶん日本初導入!】Azure Stack Hub with GPUの性能と機能紹介【たぶん日本初導入!】Azure Stack Hub with GPUの性能と機能紹介
【たぶん日本初導入!】Azure Stack Hub with GPUの性能と機能紹介
 
NTT DATA と PostgreSQL が挑んだ総力戦
NTT DATA と PostgreSQL が挑んだ総力戦NTT DATA と PostgreSQL が挑んだ総力戦
NTT DATA と PostgreSQL が挑んだ総力戦
 
Atomsystem
AtomsystemAtomsystem
Atomsystem
 
TEE (Trusted Execution Environment)は第二の仮想化技術になるか?
TEE (Trusted Execution Environment)は第二の仮想化技術になるか?TEE (Trusted Execution Environment)は第二の仮想化技術になるか?
TEE (Trusted Execution Environment)は第二の仮想化技術になるか?
 
20141203 tiberoセミナー講演資料
20141203 tiberoセミナー講演資料20141203 tiberoセミナー講演資料
20141203 tiberoセミナー講演資料
 
IoT のシナリオを変える Azure SQL Edge
IoT のシナリオを変える Azure SQL EdgeIoT のシナリオを変える Azure SQL Edge
IoT のシナリオを変える Azure SQL Edge
 
AI/MLシステムにおけるビッグデータとの付き合い方
AI/MLシステムにおけるビッグデータとの付き合い方AI/MLシステムにおけるビッグデータとの付き合い方
AI/MLシステムにおけるビッグデータとの付き合い方
 
Hyper-V エンタープライズ設計の現実解:2015 年版
Hyper-V エンタープライズ設計の現実解:2015 年版Hyper-V エンタープライズ設計の現実解:2015 年版
Hyper-V エンタープライズ設計の現実解:2015 年版
 
ヒーロー島 Visual Studio 2012
ヒーロー島 Visual Studio 2012ヒーロー島 Visual Studio 2012
ヒーロー島 Visual Studio 2012
 
オールアバウトにおける技術への取り組み
オールアバウトにおける技術への取り組みオールアバウトにおける技術への取り組み
オールアバウトにおける技術への取り組み
 
Share pointを支えるsql server2014最新情報 tokyo_公開用
Share pointを支えるsql server2014最新情報 tokyo_公開用Share pointを支えるsql server2014最新情報 tokyo_公開用
Share pointを支えるsql server2014最新情報 tokyo_公開用
 

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

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のソリューションと異種データベース・クラウド移行事例のご紹介
 
そのデータベース、クラウドで使ってみませんか?
そのデータベース、クラウドで使ってみませんか?そのデータベース、クラウドで使ってみませんか?
そのデータベース、クラウドで使ってみませんか?
 
コモディティサーバー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]
 

[C16] インメモリ分散KVSの弱点。一貫性が崩れる原因と、それを克服する技術とは? by Taichi Umeda