SlideShare una empresa de Scribd logo
1 de 34
Descargar para leer sin conexión
ULS
Copyright © 2011-2017 UL Systems, Inc. All rights reserved.
Proprietary & Confidential Powered by
Apache GEODE Meetup Tokyo #3
インメモリーデータグリッドの選択肢
2017/2/16
ウルシステムズ株式会社
http://www.ulsystems.co.jp
mailto:info@ulsystems.co.jp
Tel: 03-6220-1420 Fax: 03-6220-1402
ULS
Copyright © 2011-2017 UL Systems, Inc. All rights reserved.
Proprietary & Confidential Powered by 1
About Me
山河 征紀
Business
Private
• GEODE歴:9年(Since 2008)
• GEODEバグ報告数:nnn 件
• マラソン
• 横浜マラソン2016:4h17m
• 目標は2017年度中のサブ4
• 登山
• 目標はココ
ULS
Copyright © 2011-2017 UL Systems, Inc. All rights reserved.
Proprietary & Confidential Powered by 2
おしらせ
Apache Geodeのハンズオンやります!
3/14(火)19:00~
六本木ヒルズ森タワー20F
Pivotal Japan
• 一緒に運営していただける方
• スピーカーをお願いできる方
大募集中
ULS 3
Copyright © 2011-2013 UL Systems, Inc. All rights reserved.
Proprietary & Confidential Powered by
インメモリーデータグリッドの選択肢
ULS
Copyright © 2011-2017 UL Systems, Inc. All rights reserved.
Proprietary & Confidential Powered by 4
2007年
2017年
データグリッドの昔と今
(ex-GemFire)
(ex-GridGain)
ULS
Copyright © 2011-2017 UL Systems, Inc. All rights reserved.
Proprietary & Confidential Powered by 5
たくさんあるのはありがたい
でも・・・
どれを使えば
いいんだろう?
ULS
Copyright © 2011-2017 UL Systems, Inc. All rights reserved.
Proprietary & Confidential Powered by 6
今日、お話したいこと
In-Memory DataGrid
ULS
Copyright © 2011-2017 UL Systems, Inc. All rights reserved.
Proprietary & Confidential Powered by 7
おことわり
本日、お話する内容は、あくまで個人の見解
です
ただし、Geode Meetupだからといって
Apache Geodeに有利になるような見方はし
ておりません
ULS 8
Copyright © 2011-2013 UL Systems, Inc. All rights reserved.
Proprietary & Confidential Powered by
インメモリーデータグリッドの選択肢
ULS
Copyright © 2011-2017 UL Systems, Inc. All rights reserved.
Proprietary & Confidential Powered by 9
サーバ
サーバ
サーバ
アプリケーションのスケールアウトは容易になったが、RDB
がボトルネックに
マイクロサービス時代では、ここがスケールしないときつい
良くあるシステムの課題
JVM
JVM
JVM
アプリケーション
アプリケーション
アプリケーション
RDB
スループット
だけでなくレ
イテンシーも
重要
ULS
Copyright © 2011-2017 UL Systems, Inc. All rights reserved.
Proprietary & Confidential Powered by 10
そんなときに…
インメモリー
データグリッド
ULS
Copyright © 2011-2017 UL Systems, Inc. All rights reserved.
Proprietary & Confidential Powered by 11
インメモリーデータグリッドに必要な3大要素+1
複数ノードのメモリーに
データを分散して保持していること
メモリー中のデータと
外部データストアとの連携が
シームレスにできること
メモリー中のデータへ
トランザクション処理ができること
①
②
③
メモリー中のデータに関するイベントが
容易にハンドリングできること
ULS
Copyright © 2011-2017 UL Systems, Inc. All rights reserved.
Proprietary & Confidential Powered by 12
ということで…
3つの観点で、どれが良いのかを比較してみます!
ULS 13
Copyright © 2011-2013 UL Systems, Inc. All rights reserved.
Proprietary & Confidential Powered by
ラウンド1
データの分散
ULS
Copyright © 2011-2017 UL Systems, Inc. All rights reserved.
Proprietary & Confidential Powered by 14
データ分散?
ULS
Copyright © 2011-2017 UL Systems, Inc. All rights reserved.
Proprietary & Confidential Powered by 15
データ分散とは…
クラスター全体を論理的に1つのまとまりとして見たとき、
データをどのノードのメモリーにもつか、ということ
データの特性によって分散スタイルを選ぶ必要があるため、
この選択肢が充足していることは重要
パーティションレプリケーション
すべてのマシンで同一のデータ
を保持する
何れかのマシンにデータが存在
する
ULS
Copyright © 2011-2017 UL Systems, Inc. All rights reserved.
Proprietary & Confidential Powered by 16
データの分散:比較結果(1)
呼び方は違えど、主要な分散スタイルに差はない
レプリケーション パーティション
Geode ○ Replicated ○ Partitioned
Ignite ○ REPLICATED ○ PARTITIONED
Hazelcast ○ ReplicatedMap ○ Map
Infinispan ○ Replicated-cache ○ Distributed-cache
Coherence ○ Replicated Cache ○ Partitioned Cache
ULS
Copyright © 2011-2017 UL Systems, Inc. All rights reserved.
Proprietary & Confidential Powered by 17
データの分散:比較結果(2)
細かい部分では特色がある
ただし、これらは「あったら嬉しい」というレベルのもの
その他の分散スタイル 補足
Geode
Local
Preloaded
Distributed non-replicated
レプリケーションでは、書き込み
時のオプションが選べる
(distributed-ack,distributed-
no-ack,global)
Ignite
LOCAL
Near Cache
パーティションのバックアップを
全ノードで保持したものがレプリ
ケーション、というコンセプト
Hazelcast Near Cache
レプリケーションでの書き込みは
結果整合性
KeyValue以外のデータ構造も選択
できる
Infinispan
Local mode cache
Near Caching
機能やAPIは非常に多い
Coherence
Local Cache
Near Cache
Optimistic Cache
各種Schemeを組み合わせて
キャッシュを構成できる
ULS
Copyright © 2011-2017 UL Systems, Inc. All rights reserved.
Proprietary & Confidential Powered by 18
パーティションのデータ分散(1)
パーティションに関しては、こんな風にデータを保持したい
時もある(カスタムパーティショニング)
ノード#1
Order-1 User-A
Order-3 User-B
Order-5 User-A
Order-7 User-A
ノード#2
Order-2 User-B
Order-4 User-A
Order-6 User-A
Key Value
Key Value
ノード#1
Order-1 User-A
Order-5 User-A
Order-7 User-A
ノード#2
Order-2 User-B
Order-4 User-A
Order-6 User-A
Key Value
Key Value
Order-3 User-B
データは均等
に分散しいて
いるが…
処理内容によっては
User毎にまとまって
いた方がノード間通
信がなく、都合が良
い場合もある
ULS
Copyright © 2011-2017 UL Systems, Inc. All rights reserved.
Proprietary & Confidential Powered by 19
加えて、異なるデータの種類も同一ノードに配置したい時も
ある(コロケーション)
OrderUser
パーティションのデータ分散(2)
ノード#1
Order-1 User-A
Order-4 User-A
User-B User-B属性
Key Value
OrderUser
ノード#2
Order-2 User-B
Order-3 User-B
User-A User-A属性
Key Value
OrderUser
ノード#1
Order-1 User-A
Order-4 User-A
User-A User-A属性
Key Value
OrderUser
ノード#2
Order-2 User-B
Order-3 User-B
User-B User-B属性
Key Value
User-Aの
データがな
いのでノー
ド#2にとり
にいかない
といけない
…
ノードを跨
いでデータ
を取得しな
くて良い
ULS
Copyright © 2011-2017 UL Systems, Inc. All rights reserved.
Proprietary & Confidential Powered by 20
パーティションのデータ分散:比較結果
こちらも差はなし
カスタム
パーティショニング
コロケーション
Geode ○ Partition
Resolver ○ Co-Location
Ignite ○ Affinity
Collocation ○ Affinity
Collocation
Hazelcast ○ Partition
AwareKey ○ Partition
AwareKey
Infinispan ○ Grouping API
KeyAffinityService ○ Grouping API
KeyAffinityService
Coherence ○ KeyPartitioning
Strategy ○ Key
Association
ULS
Copyright © 2011-2017 UL Systems, Inc. All rights reserved.
Proprietary & Confidential Powered by 21
ラウンド1:データの分散対決 結果発表
過去バージョンではできないものがあったが、現時点では大
きな差なし
ULS 22
Copyright © 2011-2013 UL Systems, Inc. All rights reserved.
Proprietary & Confidential Powered by
ラウンド2
シームレスな外部データストア連携
ULS
Copyright © 2011-2017 UL Systems, Inc. All rights reserved.
Proprietary & Confidential Powered by 23
シームレスな外部データストア連携とは…
全てのデータはメモリーにのりきらない
のりきらないデータは外部データストアとの連携が必要
外部データストア
との自動連携
データ
グリッド
RDB等
APPが意識するのは
メモリー上のデータ
だけ
 メモリー中のデータを参照して、データが
存在しない場合(キャッシュミス)は自動
的にメモリー上に読み込んでほしい
 メモリー中のデータを追加・変更した場合
は、自動的にデータストアに書き込んでほ
しい
ULS
Copyright © 2011-2017 UL Systems, Inc. All rights reserved.
Proprietary & Confidential Powered by 24
キャッシュミスが発生した場合は、データストアよりデータ
を読み取りメモリーに保持する
リードスルー
RDB等
データグリッド
データグリッド
参照
(Read A)
リード
スル―
リード
スル―
A B
C D
D
D
A
A
B
B
参照
(Read B)
APP
APP
ULS
Copyright © 2011-2017 UL Systems, Inc. All rights reserved.
Proprietary & Confidential Powered by 25
メモリー上のデータを更新した場合は、自動的にデータスト
アに書き込む
ライトスルー/ライトビハインド
RDB等
データグリッド
データグリッド
追加
(Write A)
ライトスルー
ライトビハインド
(Insert)
A B
D
D
D
A
A
B
B
更新
(Write B)
ライトスルー
ライトビハインド
(Update)
APP
APP
ULS
Copyright © 2011-2017 UL Systems, Inc. All rights reserved.
Proprietary & Confidential Powered by 26
外部データストア連携:比較結果
出来ないものはなし
リードスルー ライトスルー ライトビハインド
Geode ○ Cache
Loader ○ Cache
Writer ○
Async
Event
Listener
Ignite ○ Cache
Store ○ Cache
Store ○ Cache
Store
Hazelcast ○ Cache
Loader ○ Map
Store ○ Map
Store
Infinispan ○ Cache
Loader ○ Cache
Store ○ Cache
Store
Coherence ○ Cache
Loader ○ Cache
Store ○ Cache
Store
ULS
Copyright © 2011-2017 UL Systems, Inc. All rights reserved.
Proprietary & Confidential Powered by 27
これも、過去バージョンではできないものがあったが、現時
点では大きな差なし
 あえていうなら、各種データストア用のデフォルト実装が揃っているInfinispan
が使いやすいかもしれない
ラウンド2:外部データストア連携対決 結果発表
ULS 28
Copyright © 2011-2013 UL Systems, Inc. All rights reserved.
Proprietary & Confidential Powered by
ラウンド3
トランザクション
ULS
Copyright © 2011-2017 UL Systems, Inc. All rights reserved.
Proprietary & Confidential Powered by 29
トランザクション
インメモリーデータグリッドを採用する場合、更新処理の高
速性、スケーラビリティを求めて採用するケースがある
ベースは、トランザクション不要なように設計すべきである
が、少なからずトランザクション処理が必要となるケースが
ある
ULS
Copyright © 2011-2017 UL Systems, Inc. All rights reserved.
Proprietary & Confidential Powered by 30
トランザクション:比較結果
Ignite、Infinispanが出来ることは多い
トランザクション対象
分離レベル
ロック
方式レプリケー
ション
パーティ
ション
MIX
Geode ○ △ △ READ_COMMITED 楽観
Ignite ○ ○ ○
READ_COMMITED
REPEATABLE_READ
SERIALIZABLE
楽観
悲観
Hazelcast ○ ○ ○ READ_COMMITED 楽観
Infinispan ○ ○ ○ READ_COMMITTED
REPEATABLE_READ
楽観
悲観
Coherence ○ ○ ○ READ_COMMITED 楽観
ULS
Copyright © 2011-2017 UL Systems, Inc. All rights reserved.
Proprietary & Confidential Powered by 31
トランザクション機能で選ぶなら、Ignite、Infinispanが出
来ることは多い
高速性を目指すときに必要かどうかは微妙なとこではあるが
ラウンド3:トランザクション対決 結果発表
ULS
Copyright © 2011-2017 UL Systems, Inc. All rights reserved.
Proprietary & Confidential Powered by 32
まとめ
インメモリーデータグリッド機能対決 結果
–RDBと同じようなトランザクション機能が必要ならIgnite
やInfinispanを選んだ方が良い
–GeodeとCoherenceは10年前から出来ないことがわかって
いるが対応していないので、おそらく今後も対応されない
–それ以外は以前は差があったが、現時点では大差なし
ラウンド 結果
1. データ分散 DRAW(差なし)
2. 外部データストア連携 DRAW(差なし)
3. トランザクション
1. Apache Ignite
2. Infinispan
ULS
Copyright © 2011-2017 UL Systems, Inc. All rights reserved.
Proprietary & Confidential Powered by 33
最後に
今回は、残念ながらGeodeだけ「出来ない」
がでちゃいました!
それでも、今後もGeodeを使い続けます!
別の観点の比較はまた別の機会にでも…

Más contenido relacionado

La actualidad más candente

超実践 Cloud Spanner 設計講座
超実践 Cloud Spanner 設計講座超実践 Cloud Spanner 設計講座
超実践 Cloud Spanner 設計講座Samir Hammoudi
 
マイクロにしすぎた結果がこれだよ!
マイクロにしすぎた結果がこれだよ!マイクロにしすぎた結果がこれだよ!
マイクロにしすぎた結果がこれだよ!mosa siru
 
Azure Network Security Group(NSG) はじめてのDeep Dive
Azure Network Security Group(NSG) はじめてのDeep DiveAzure Network Security Group(NSG) はじめてのDeep Dive
Azure Network Security Group(NSG) はじめてのDeep DiveYoshimasa Katakura
 
Apache Airflow 概要(Airflowの基礎を学ぶハンズオンワークショップ 発表資料)
Apache Airflow 概要(Airflowの基礎を学ぶハンズオンワークショップ 発表資料)Apache Airflow 概要(Airflowの基礎を学ぶハンズオンワークショップ 発表資料)
Apache Airflow 概要(Airflowの基礎を学ぶハンズオンワークショップ 発表資料)NTT DATA Technology & Innovation
 
RDB技術者のためのNoSQLガイド NoSQLの必要性と位置づけ
RDB技術者のためのNoSQLガイド NoSQLの必要性と位置づけRDB技術者のためのNoSQLガイド NoSQLの必要性と位置づけ
RDB技術者のためのNoSQLガイド NoSQLの必要性と位置づけRecruit Technologies
 
マイクロサービス 4つの分割アプローチ
マイクロサービス 4つの分割アプローチマイクロサービス 4つの分割アプローチ
マイクロサービス 4つの分割アプローチ増田 亨
 
モノリスからマイクロサービスへの移行 ~ストラングラーパターンの検証~(Spring Fest 2020講演資料)
モノリスからマイクロサービスへの移行 ~ストラングラーパターンの検証~(Spring Fest 2020講演資料)モノリスからマイクロサービスへの移行 ~ストラングラーパターンの検証~(Spring Fest 2020講演資料)
モノリスからマイクロサービスへの移行 ~ストラングラーパターンの検証~(Spring Fest 2020講演資料)NTT DATA Technology & Innovation
 
Kubernetes 疲れに Azure Container Apps はいかがでしょうか?(江東区合同ライトニングトーク 発表資料)
Kubernetes 疲れに Azure Container Apps はいかがでしょうか?(江東区合同ライトニングトーク 発表資料)Kubernetes 疲れに Azure Container Apps はいかがでしょうか?(江東区合同ライトニングトーク 発表資料)
Kubernetes 疲れに Azure Container Apps はいかがでしょうか?(江東区合同ライトニングトーク 発表資料)NTT DATA Technology & Innovation
 
Apache Kafkaって本当に大丈夫?~故障検証のオーバービューと興味深い挙動の紹介~
Apache Kafkaって本当に大丈夫?~故障検証のオーバービューと興味深い挙動の紹介~Apache Kafkaって本当に大丈夫?~故障検証のオーバービューと興味深い挙動の紹介~
Apache Kafkaって本当に大丈夫?~故障検証のオーバービューと興味深い挙動の紹介~NTT DATA OSS Professional Services
 
初心者向けMongoDBのキホン!
初心者向けMongoDBのキホン!初心者向けMongoDBのキホン!
初心者向けMongoDBのキホン!Tetsutaro Watanabe
 
Java ORマッパー選定のポイント #jsug
Java ORマッパー選定のポイント #jsugJava ORマッパー選定のポイント #jsug
Java ORマッパー選定のポイント #jsugMasatoshi Tada
 
Azure AD とアプリケーションを SAML 連携する際に陥る事例と対処方法について
Azure AD とアプリケーションを SAML 連携する際に陥る事例と対処方法についてAzure AD とアプリケーションを SAML 連携する際に陥る事例と対処方法について
Azure AD とアプリケーションを SAML 連携する際に陥る事例と対処方法についてShinya Yamaguchi
 
[Aurora事例祭り]Amazon Aurora を使いこなすためのベストプラクティス
[Aurora事例祭り]Amazon Aurora を使いこなすためのベストプラクティス[Aurora事例祭り]Amazon Aurora を使いこなすためのベストプラクティス
[Aurora事例祭り]Amazon Aurora を使いこなすためのベストプラクティスAmazon Web Services Japan
 
Kinesis + Elasticsearchでつくるさいきょうのログ分析基盤
Kinesis + Elasticsearchでつくるさいきょうのログ分析基盤Kinesis + Elasticsearchでつくるさいきょうのログ分析基盤
Kinesis + Elasticsearchでつくるさいきょうのログ分析基盤Amazon Web Services Japan
 
イミュータブルデータモデルの極意
イミュータブルデータモデルの極意イミュータブルデータモデルの極意
イミュータブルデータモデルの極意Yoshitaka Kawashima
 
インフラCICDの勘所
インフラCICDの勘所インフラCICDの勘所
インフラCICDの勘所Toru Makabe
 
DDD x CQRS 更新系と参照系で異なるORMを併用して上手くいった話
DDD x CQRS   更新系と参照系で異なるORMを併用して上手くいった話DDD x CQRS   更新系と参照系で異なるORMを併用して上手くいった話
DDD x CQRS 更新系と参照系で異なるORMを併用して上手くいった話Koichiro Matsuoka
 
PostgreSQLをKubernetes上で活用するためのOperator紹介!(Cloud Native Database Meetup #3 発表資料)
PostgreSQLをKubernetes上で活用するためのOperator紹介!(Cloud Native Database Meetup #3 発表資料)PostgreSQLをKubernetes上で活用するためのOperator紹介!(Cloud Native Database Meetup #3 発表資料)
PostgreSQLをKubernetes上で活用するためのOperator紹介!(Cloud Native Database Meetup #3 発表資料)NTT DATA Technology & Innovation
 

La actualidad más candente (20)

超実践 Cloud Spanner 設計講座
超実践 Cloud Spanner 設計講座超実践 Cloud Spanner 設計講座
超実践 Cloud Spanner 設計講座
 
マイクロにしすぎた結果がこれだよ!
マイクロにしすぎた結果がこれだよ!マイクロにしすぎた結果がこれだよ!
マイクロにしすぎた結果がこれだよ!
 
Azure Network Security Group(NSG) はじめてのDeep Dive
Azure Network Security Group(NSG) はじめてのDeep DiveAzure Network Security Group(NSG) はじめてのDeep Dive
Azure Network Security Group(NSG) はじめてのDeep Dive
 
Apache Airflow 概要(Airflowの基礎を学ぶハンズオンワークショップ 発表資料)
Apache Airflow 概要(Airflowの基礎を学ぶハンズオンワークショップ 発表資料)Apache Airflow 概要(Airflowの基礎を学ぶハンズオンワークショップ 発表資料)
Apache Airflow 概要(Airflowの基礎を学ぶハンズオンワークショップ 発表資料)
 
RDB技術者のためのNoSQLガイド NoSQLの必要性と位置づけ
RDB技術者のためのNoSQLガイド NoSQLの必要性と位置づけRDB技術者のためのNoSQLガイド NoSQLの必要性と位置づけ
RDB技術者のためのNoSQLガイド NoSQLの必要性と位置づけ
 
マイクロサービス 4つの分割アプローチ
マイクロサービス 4つの分割アプローチマイクロサービス 4つの分割アプローチ
マイクロサービス 4つの分割アプローチ
 
モノリスからマイクロサービスへの移行 ~ストラングラーパターンの検証~(Spring Fest 2020講演資料)
モノリスからマイクロサービスへの移行 ~ストラングラーパターンの検証~(Spring Fest 2020講演資料)モノリスからマイクロサービスへの移行 ~ストラングラーパターンの検証~(Spring Fest 2020講演資料)
モノリスからマイクロサービスへの移行 ~ストラングラーパターンの検証~(Spring Fest 2020講演資料)
 
Kubernetes 疲れに Azure Container Apps はいかがでしょうか?(江東区合同ライトニングトーク 発表資料)
Kubernetes 疲れに Azure Container Apps はいかがでしょうか?(江東区合同ライトニングトーク 発表資料)Kubernetes 疲れに Azure Container Apps はいかがでしょうか?(江東区合同ライトニングトーク 発表資料)
Kubernetes 疲れに Azure Container Apps はいかがでしょうか?(江東区合同ライトニングトーク 発表資料)
 
Apache Kafkaって本当に大丈夫?~故障検証のオーバービューと興味深い挙動の紹介~
Apache Kafkaって本当に大丈夫?~故障検証のオーバービューと興味深い挙動の紹介~Apache Kafkaって本当に大丈夫?~故障検証のオーバービューと興味深い挙動の紹介~
Apache Kafkaって本当に大丈夫?~故障検証のオーバービューと興味深い挙動の紹介~
 
初心者向けMongoDBのキホン!
初心者向けMongoDBのキホン!初心者向けMongoDBのキホン!
初心者向けMongoDBのキホン!
 
Java ORマッパー選定のポイント #jsug
Java ORマッパー選定のポイント #jsugJava ORマッパー選定のポイント #jsug
Java ORマッパー選定のポイント #jsug
 
Azure AD とアプリケーションを SAML 連携する際に陥る事例と対処方法について
Azure AD とアプリケーションを SAML 連携する際に陥る事例と対処方法についてAzure AD とアプリケーションを SAML 連携する際に陥る事例と対処方法について
Azure AD とアプリケーションを SAML 連携する際に陥る事例と対処方法について
 
[Aurora事例祭り]Amazon Aurora を使いこなすためのベストプラクティス
[Aurora事例祭り]Amazon Aurora を使いこなすためのベストプラクティス[Aurora事例祭り]Amazon Aurora を使いこなすためのベストプラクティス
[Aurora事例祭り]Amazon Aurora を使いこなすためのベストプラクティス
 
Kinesis + Elasticsearchでつくるさいきょうのログ分析基盤
Kinesis + Elasticsearchでつくるさいきょうのログ分析基盤Kinesis + Elasticsearchでつくるさいきょうのログ分析基盤
Kinesis + Elasticsearchでつくるさいきょうのログ分析基盤
 
Infrastructure as Code (IaC) 談義 2022
Infrastructure as Code (IaC) 談義 2022Infrastructure as Code (IaC) 談義 2022
Infrastructure as Code (IaC) 談義 2022
 
イミュータブルデータモデルの極意
イミュータブルデータモデルの極意イミュータブルデータモデルの極意
イミュータブルデータモデルの極意
 
インフラCICDの勘所
インフラCICDの勘所インフラCICDの勘所
インフラCICDの勘所
 
Oracle Data Guard による高可用性
Oracle Data Guard による高可用性Oracle Data Guard による高可用性
Oracle Data Guard による高可用性
 
DDD x CQRS 更新系と参照系で異なるORMを併用して上手くいった話
DDD x CQRS   更新系と参照系で異なるORMを併用して上手くいった話DDD x CQRS   更新系と参照系で異なるORMを併用して上手くいった話
DDD x CQRS 更新系と参照系で異なるORMを併用して上手くいった話
 
PostgreSQLをKubernetes上で活用するためのOperator紹介!(Cloud Native Database Meetup #3 発表資料)
PostgreSQLをKubernetes上で活用するためのOperator紹介!(Cloud Native Database Meetup #3 発表資料)PostgreSQLをKubernetes上で活用するためのOperator紹介!(Cloud Native Database Meetup #3 発表資料)
PostgreSQLをKubernetes上で活用するためのOperator紹介!(Cloud Native Database Meetup #3 発表資料)
 

Destacado

インメモリーで超高速処理を実現する場合のカギ
インメモリーで超高速処理を実現する場合のカギインメモリーで超高速処理を実現する場合のカギ
インメモリーで超高速処理を実現する場合のカギMasaki Yamakawa
 
超高速処理とスケーラビリティを両立するApache GEODE
超高速処理とスケーラビリティを両立するApache GEODE超高速処理とスケーラビリティを両立するApache GEODE
超高速処理とスケーラビリティを両立するApache GEODEMasaki Yamakawa
 
Apache Geode で始める Spring Data Gemfire
Apache Geode で始めるSpring Data GemfireApache Geode で始めるSpring Data Gemfire
Apache Geode で始める Spring Data GemfireAkihiro Kitada
 
Coherenceを利用するときに気をつけること #OracleCoherence
Coherenceを利用するときに気をつけること #OracleCoherenceCoherenceを利用するときに気をつけること #OracleCoherence
Coherenceを利用するときに気をつけること #OracleCoherenceToshiaki Maki
 
単なるキャッシュじゃないよ!?infinispanの紹介
単なるキャッシュじゃないよ!?infinispanの紹介単なるキャッシュじゃないよ!?infinispanの紹介
単なるキャッシュじゃないよ!?infinispanの紹介AdvancedTechNight
 
Infinispan - Open Source Data Grid
Infinispan - Open Source Data GridInfinispan - Open Source Data Grid
Infinispan - Open Source Data Gridnekop
 
SnappyData Overview Slidedeck for Big Data Bellevue
SnappyData Overview Slidedeck for Big Data Bellevue SnappyData Overview Slidedeck for Big Data Bellevue
SnappyData Overview Slidedeck for Big Data Bellevue SnappyData
 
GemFire In Memory Data Grid
GemFire In Memory Data GridGemFire In Memory Data Grid
GemFire In Memory Data GridDmitry Buzdin
 
秒間5万リクエストを処理する リアルタイム広告システム / BS3-3 新しい潮流:ビッグデータのリアルタイム応用:ユーザ事例 #QConTokyo
秒間5万リクエストを処理する リアルタイム広告システム  / BS3-3 新しい潮流:ビッグデータのリアルタイム応用:ユーザ事例 #QConTokyo秒間5万リクエストを処理する リアルタイム広告システム  / BS3-3 新しい潮流:ビッグデータのリアルタイム応用:ユーザ事例 #QConTokyo
秒間5万リクエストを処理する リアルタイム広告システム / BS3-3 新しい潮流:ビッグデータのリアルタイム応用:ユーザ事例 #QConTokyoTakahiro Yasuda
 
Infinispan, Data Grids, NoSQL, Cloud Storage and JSR 347
Infinispan, Data Grids, NoSQL, Cloud Storage and JSR 347Infinispan, Data Grids, NoSQL, Cloud Storage and JSR 347
Infinispan, Data Grids, NoSQL, Cloud Storage and JSR 347Manik Surtani
 
JBoss Community Introduction
JBoss Community IntroductionJBoss Community Introduction
JBoss Community Introductionjbugkorea
 
Apache conbigdata2015 christiantzolov-federated sql on hadoop and beyond- lev...
Apache conbigdata2015 christiantzolov-federated sql on hadoop and beyond- lev...Apache conbigdata2015 christiantzolov-federated sql on hadoop and beyond- lev...
Apache conbigdata2015 christiantzolov-federated sql on hadoop and beyond- lev...Christian Tzolov
 
Архитектура Apache Ignite .NET
Архитектура Apache Ignite .NETАрхитектура Apache Ignite .NET
Архитектура Apache Ignite .NETMikhail Shcherbakov
 
Building Wall St Risk Systems with Apache Geode
Building Wall St Risk Systems with Apache GeodeBuilding Wall St Risk Systems with Apache Geode
Building Wall St Risk Systems with Apache GeodeAndre Langevin
 
Infinispan Servers: Beyond peer-to-peer data grids
Infinispan Servers: Beyond peer-to-peer data gridsInfinispan Servers: Beyond peer-to-peer data grids
Infinispan Servers: Beyond peer-to-peer data gridsGalder Zamarreño
 
Infinspan: In-memory data grid meets NoSQL
Infinspan: In-memory data grid meets NoSQLInfinspan: In-memory data grid meets NoSQL
Infinspan: In-memory data grid meets NoSQLManik Surtani
 
Infinispan from POC to Production
Infinispan from POC to ProductionInfinispan from POC to Production
Infinispan from POC to ProductionC2B2 Consulting
 

Destacado (20)

インメモリーで超高速処理を実現する場合のカギ
インメモリーで超高速処理を実現する場合のカギインメモリーで超高速処理を実現する場合のカギ
インメモリーで超高速処理を実現する場合のカギ
 
超高速処理とスケーラビリティを両立するApache GEODE
超高速処理とスケーラビリティを両立するApache GEODE超高速処理とスケーラビリティを両立するApache GEODE
超高速処理とスケーラビリティを両立するApache GEODE
 
Apache Geode で始める Spring Data Gemfire
Apache Geode で始めるSpring Data GemfireApache Geode で始めるSpring Data Gemfire
Apache Geode で始める Spring Data Gemfire
 
Geode hands-on
Geode hands-onGeode hands-on
Geode hands-on
 
Coherenceを利用するときに気をつけること #OracleCoherence
Coherenceを利用するときに気をつけること #OracleCoherenceCoherenceを利用するときに気をつけること #OracleCoherence
Coherenceを利用するときに気をつけること #OracleCoherence
 
単なるキャッシュじゃないよ!?infinispanの紹介
単なるキャッシュじゃないよ!?infinispanの紹介単なるキャッシュじゃないよ!?infinispanの紹介
単なるキャッシュじゃないよ!?infinispanの紹介
 
これがCassandra
これがCassandraこれがCassandra
これがCassandra
 
Infinispan - Open Source Data Grid
Infinispan - Open Source Data GridInfinispan - Open Source Data Grid
Infinispan - Open Source Data Grid
 
SnappyData Overview Slidedeck for Big Data Bellevue
SnappyData Overview Slidedeck for Big Data Bellevue SnappyData Overview Slidedeck for Big Data Bellevue
SnappyData Overview Slidedeck for Big Data Bellevue
 
GemFire In Memory Data Grid
GemFire In Memory Data GridGemFire In Memory Data Grid
GemFire In Memory Data Grid
 
No-Ops で大量データ処理基盤
No-Ops で大量データ処理基盤No-Ops で大量データ処理基盤
No-Ops で大量データ処理基盤
 
秒間5万リクエストを処理する リアルタイム広告システム / BS3-3 新しい潮流:ビッグデータのリアルタイム応用:ユーザ事例 #QConTokyo
秒間5万リクエストを処理する リアルタイム広告システム  / BS3-3 新しい潮流:ビッグデータのリアルタイム応用:ユーザ事例 #QConTokyo秒間5万リクエストを処理する リアルタイム広告システム  / BS3-3 新しい潮流:ビッグデータのリアルタイム応用:ユーザ事例 #QConTokyo
秒間5万リクエストを処理する リアルタイム広告システム / BS3-3 新しい潮流:ビッグデータのリアルタイム応用:ユーザ事例 #QConTokyo
 
Infinispan, Data Grids, NoSQL, Cloud Storage and JSR 347
Infinispan, Data Grids, NoSQL, Cloud Storage and JSR 347Infinispan, Data Grids, NoSQL, Cloud Storage and JSR 347
Infinispan, Data Grids, NoSQL, Cloud Storage and JSR 347
 
JBoss Community Introduction
JBoss Community IntroductionJBoss Community Introduction
JBoss Community Introduction
 
Apache conbigdata2015 christiantzolov-federated sql on hadoop and beyond- lev...
Apache conbigdata2015 christiantzolov-federated sql on hadoop and beyond- lev...Apache conbigdata2015 christiantzolov-federated sql on hadoop and beyond- lev...
Apache conbigdata2015 christiantzolov-federated sql on hadoop and beyond- lev...
 
Архитектура Apache Ignite .NET
Архитектура Apache Ignite .NETАрхитектура Apache Ignite .NET
Архитектура Apache Ignite .NET
 
Building Wall St Risk Systems with Apache Geode
Building Wall St Risk Systems with Apache GeodeBuilding Wall St Risk Systems with Apache Geode
Building Wall St Risk Systems with Apache Geode
 
Infinispan Servers: Beyond peer-to-peer data grids
Infinispan Servers: Beyond peer-to-peer data gridsInfinispan Servers: Beyond peer-to-peer data grids
Infinispan Servers: Beyond peer-to-peer data grids
 
Infinspan: In-memory data grid meets NoSQL
Infinspan: In-memory data grid meets NoSQLInfinspan: In-memory data grid meets NoSQL
Infinspan: In-memory data grid meets NoSQL
 
Infinispan from POC to Production
Infinispan from POC to ProductionInfinispan from POC to Production
Infinispan from POC to Production
 

Similar a インメモリーデータグリッドの選択肢

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.
 
[AWSマイスターシリーズ] Amazon Redshift
[AWSマイスターシリーズ] Amazon Redshift[AWSマイスターシリーズ] Amazon Redshift
[AWSマイスターシリーズ] Amazon RedshiftAmazon Web Services Japan
 
2016年2月4日 空間OSの設計コンセプトと先端IT
2016年2月4日 空間OSの設計コンセプトと先端IT2016年2月4日 空間OSの設計コンセプトと先端IT
2016年2月4日 空間OSの設計コンセプトと先端ITaitc_jp
 
[D24] あなたのビジネスを変えるInfiniDBケーススタディ by Toshihide Hanatani
[D24] あなたのビジネスを変えるInfiniDBケーススタディ by Toshihide Hanatani[D24] あなたのビジネスを変えるInfiniDBケーススタディ by Toshihide Hanatani
[D24] あなたのビジネスを変えるInfiniDBケーススタディ by Toshihide HanataniInsight Technology, Inc.
 
Prestoで実現するインタラクティブクエリ - dbtech showcase 2014 Tokyo
Prestoで実現するインタラクティブクエリ - dbtech showcase 2014 TokyoPrestoで実現するインタラクティブクエリ - dbtech showcase 2014 Tokyo
Prestoで実現するインタラクティブクエリ - dbtech showcase 2014 TokyoTreasure Data, Inc.
 
[db tech showcase Tokyo 2014] D33: Prestoで実現するインタラクティブクエリ by トレジャーデータ株式会社 斉藤太郎
[db tech showcase Tokyo 2014] D33: Prestoで実現するインタラクティブクエリ  by トレジャーデータ株式会社 斉藤太郎[db tech showcase Tokyo 2014] D33: Prestoで実現するインタラクティブクエリ  by トレジャーデータ株式会社 斉藤太郎
[db tech showcase Tokyo 2014] D33: Prestoで実現するインタラクティブクエリ by トレジャーデータ株式会社 斉藤太郎Insight Technology, Inc.
 
dstn交流会_DataSpider のソーシャルとの融合、手組との融合
dstn交流会_DataSpider のソーシャルとの融合、手組との融合dstn交流会_DataSpider のソーシャルとの融合、手組との融合
dstn交流会_DataSpider のソーシャルとの融合、手組との融合dstn
 
[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を構築できるのか、 データの整合...Insight Technology, Inc.
 
[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 日本アイ・ビー・エ...Insight Technology, Inc.
 
Impala + Kudu を用いたデータウェアハウス構築の勘所 (仮)
Impala + Kudu を用いたデータウェアハウス構築の勘所 (仮)Impala + Kudu を用いたデータウェアハウス構築の勘所 (仮)
Impala + Kudu を用いたデータウェアハウス構築の勘所 (仮)Cloudera Japan
 
スマートフォン×Cassandraによるハイパフォーマンス基盤の構築事例
スマートフォン×Cassandraによるハイパフォーマンス基盤の構築事例スマートフォン×Cassandraによるハイパフォーマンス基盤の構築事例
スマートフォン×Cassandraによるハイパフォーマンス基盤の構築事例terurou
 
ビッグデータ&データマネジメント展
ビッグデータ&データマネジメント展ビッグデータ&データマネジメント展
ビッグデータ&データマネジメント展Recruit Technologies
 
[db tech showcase OSS 2017] A14: IoT時代のデータストア--躍進するNoSQL、拡張するRDB by OSSコンソーシア...
[db tech showcase OSS 2017] A14: IoT時代のデータストア--躍進するNoSQL、拡張するRDB by OSSコンソーシア...[db tech showcase OSS 2017] A14: IoT時代のデータストア--躍進するNoSQL、拡張するRDB by OSSコンソーシア...
[db tech showcase OSS 2017] A14: IoT時代のデータストア--躍進するNoSQL、拡張するRDB by OSSコンソーシア...Insight Technology, Inc.
 
[de:code 2017] 並列分散処理の考え方とオープンソース分散処理系の動向
[de:code 2017] 並列分散処理の考え方とオープンソース分散処理系の動向[de:code 2017] 並列分散処理の考え方とオープンソース分散処理系の動向
[de:code 2017] 並列分散処理の考え方とオープンソース分散処理系の動向Naoki (Neo) SATO
 
[DI06] 並列分散処理の考え方とオープンソース分散処理系の動向
[DI06] 並列分散処理の考え方とオープンソース分散処理系の動向[DI06] 並列分散処理の考え方とオープンソース分散処理系の動向
[DI06] 並列分散処理の考え方とオープンソース分散処理系の動向de:code 2017
 
3-1)『空気を読む家』とメタバース駆動開発構想 空間OS モノと社会をつなげる
3-1)『空気を読む家』とメタバース駆動開発構想   空間OS モノと社会をつなげる3-1)『空気を読む家』とメタバース駆動開発構想   空間OS モノと社会をつなげる
3-1)『空気を読む家』とメタバース駆動開発構想 空間OS モノと社会をつなげるaitc_jp
 
分散処理基盤ApacheHadoop入門とHadoopエコシステムの最新技術動向(OSC2015 Kansai発表資料)
分散処理基盤ApacheHadoop入門とHadoopエコシステムの最新技術動向(OSC2015 Kansai発表資料)分散処理基盤ApacheHadoop入門とHadoopエコシステムの最新技術動向(OSC2015 Kansai発表資料)
分散処理基盤ApacheHadoop入門とHadoopエコシステムの最新技術動向(OSC2015 Kansai発表資料)NTT DATA OSS Professional Services
 
Cloudianを利用したソリューション (Cloudian Summit 2012)
Cloudianを利用したソリューション (Cloudian Summit 2012)Cloudianを利用したソリューション (Cloudian Summit 2012)
Cloudianを利用したソリューション (Cloudian Summit 2012)CLOUDIAN KK
 

Similar a インメモリーデータグリッドの選択肢 (20)

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
 
[AWSマイスターシリーズ] Amazon Redshift
[AWSマイスターシリーズ] Amazon Redshift[AWSマイスターシリーズ] Amazon Redshift
[AWSマイスターシリーズ] Amazon Redshift
 
2016年2月4日 空間OSの設計コンセプトと先端IT
2016年2月4日 空間OSの設計コンセプトと先端IT2016年2月4日 空間OSの設計コンセプトと先端IT
2016年2月4日 空間OSの設計コンセプトと先端IT
 
[D24] あなたのビジネスを変えるInfiniDBケーススタディ by Toshihide Hanatani
[D24] あなたのビジネスを変えるInfiniDBケーススタディ by Toshihide Hanatani[D24] あなたのビジネスを変えるInfiniDBケーススタディ by Toshihide Hanatani
[D24] あなたのビジネスを変えるInfiniDBケーススタディ by Toshihide Hanatani
 
Prestoで実現するインタラクティブクエリ - dbtech showcase 2014 Tokyo
Prestoで実現するインタラクティブクエリ - dbtech showcase 2014 TokyoPrestoで実現するインタラクティブクエリ - dbtech showcase 2014 Tokyo
Prestoで実現するインタラクティブクエリ - dbtech showcase 2014 Tokyo
 
[db tech showcase Tokyo 2014] D33: Prestoで実現するインタラクティブクエリ by トレジャーデータ株式会社 斉藤太郎
[db tech showcase Tokyo 2014] D33: Prestoで実現するインタラクティブクエリ  by トレジャーデータ株式会社 斉藤太郎[db tech showcase Tokyo 2014] D33: Prestoで実現するインタラクティブクエリ  by トレジャーデータ株式会社 斉藤太郎
[db tech showcase Tokyo 2014] D33: Prestoで実現するインタラクティブクエリ by トレジャーデータ株式会社 斉藤太郎
 
dstn交流会_DataSpider のソーシャルとの融合、手組との融合
dstn交流会_DataSpider のソーシャルとの融合、手組との融合dstn交流会_DataSpider のソーシャルとの融合、手組との融合
dstn交流会_DataSpider のソーシャルとの融合、手組との融合
 
[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を構築できるのか、 データの整合...
 
Iot_demo_challenger
Iot_demo_challengerIot_demo_challenger
Iot_demo_challenger
 
[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 日本アイ・ビー・エ...
 
Impala + Kudu を用いたデータウェアハウス構築の勘所 (仮)
Impala + Kudu を用いたデータウェアハウス構築の勘所 (仮)Impala + Kudu を用いたデータウェアハウス構築の勘所 (仮)
Impala + Kudu を用いたデータウェアハウス構築の勘所 (仮)
 
スマートフォン×Cassandraによるハイパフォーマンス基盤の構築事例
スマートフォン×Cassandraによるハイパフォーマンス基盤の構築事例スマートフォン×Cassandraによるハイパフォーマンス基盤の構築事例
スマートフォン×Cassandraによるハイパフォーマンス基盤の構築事例
 
ビッグデータ&データマネジメント展
ビッグデータ&データマネジメント展ビッグデータ&データマネジメント展
ビッグデータ&データマネジメント展
 
[db tech showcase OSS 2017] A14: IoT時代のデータストア--躍進するNoSQL、拡張するRDB by OSSコンソーシア...
[db tech showcase OSS 2017] A14: IoT時代のデータストア--躍進するNoSQL、拡張するRDB by OSSコンソーシア...[db tech showcase OSS 2017] A14: IoT時代のデータストア--躍進するNoSQL、拡張するRDB by OSSコンソーシア...
[db tech showcase OSS 2017] A14: IoT時代のデータストア--躍進するNoSQL、拡張するRDB by OSSコンソーシア...
 
[de:code 2017] 並列分散処理の考え方とオープンソース分散処理系の動向
[de:code 2017] 並列分散処理の考え方とオープンソース分散処理系の動向[de:code 2017] 並列分散処理の考え方とオープンソース分散処理系の動向
[de:code 2017] 並列分散処理の考え方とオープンソース分散処理系の動向
 
[DI06] 並列分散処理の考え方とオープンソース分散処理系の動向
[DI06] 並列分散処理の考え方とオープンソース分散処理系の動向[DI06] 並列分散処理の考え方とオープンソース分散処理系の動向
[DI06] 並列分散処理の考え方とオープンソース分散処理系の動向
 
3-1)『空気を読む家』とメタバース駆動開発構想 空間OS モノと社会をつなげる
3-1)『空気を読む家』とメタバース駆動開発構想   空間OS モノと社会をつなげる3-1)『空気を読む家』とメタバース駆動開発構想   空間OS モノと社会をつなげる
3-1)『空気を読む家』とメタバース駆動開発構想 空間OS モノと社会をつなげる
 
ストリームデータ分散処理基盤Storm
ストリームデータ分散処理基盤Stormストリームデータ分散処理基盤Storm
ストリームデータ分散処理基盤Storm
 
分散処理基盤ApacheHadoop入門とHadoopエコシステムの最新技術動向(OSC2015 Kansai発表資料)
分散処理基盤ApacheHadoop入門とHadoopエコシステムの最新技術動向(OSC2015 Kansai発表資料)分散処理基盤ApacheHadoop入門とHadoopエコシステムの最新技術動向(OSC2015 Kansai発表資料)
分散処理基盤ApacheHadoop入門とHadoopエコシステムの最新技術動向(OSC2015 Kansai発表資料)
 
Cloudianを利用したソリューション (Cloudian Summit 2012)
Cloudianを利用したソリューション (Cloudian Summit 2012)Cloudianを利用したソリューション (Cloudian Summit 2012)
Cloudianを利用したソリューション (Cloudian Summit 2012)
 

Más de Masaki Yamakawa

20231111_YugabyteDB-on-k8s.pdf
20231111_YugabyteDB-on-k8s.pdf20231111_YugabyteDB-on-k8s.pdf
20231111_YugabyteDB-on-k8s.pdfMasaki Yamakawa
 
20221117_クラウドネイティブ向けYugabyteDB活用シナリオ
20221117_クラウドネイティブ向けYugabyteDB活用シナリオ20221117_クラウドネイティブ向けYugabyteDB活用シナリオ
20221117_クラウドネイティブ向けYugabyteDB活用シナリオMasaki Yamakawa
 
20220331_DSSA_MigrationToYugabyteDB
20220331_DSSA_MigrationToYugabyteDB20220331_DSSA_MigrationToYugabyteDB
20220331_DSSA_MigrationToYugabyteDBMasaki Yamakawa
 
20211118 dbts2021 マイクロサービスにおけるApache Geodeの効果的な使い方
20211118 dbts2021 マイクロサービスにおけるApache Geodeの効果的な使い方20211118 dbts2021 マイクロサービスにおけるApache Geodeの効果的な使い方
20211118 dbts2021 マイクロサービスにおけるApache Geodeの効果的な使い方Masaki Yamakawa
 
20190523 IMC meetup-IMDG&DS
20190523 IMC meetup-IMDG&DS20190523 IMC meetup-IMDG&DS
20190523 IMC meetup-IMDG&DSMasaki Yamakawa
 
20181031 springfest spring data geode
20181031 springfest spring data geode20181031 springfest spring data geode
20181031 springfest spring data geodeMasaki Yamakawa
 
20180217 hackertackle geode
20180217 hackertackle geode20180217 hackertackle geode
20180217 hackertackle geodeMasaki Yamakawa
 
20171125 springfest snappydata
20171125 springfest snappydata20171125 springfest snappydata
20171125 springfest snappydataMasaki Yamakawa
 
20171118 jjug snappydata
20171118 jjug snappydata20171118 jjug snappydata
20171118 jjug snappydataMasaki Yamakawa
 

Más de Masaki Yamakawa (10)

20231111_YugabyteDB-on-k8s.pdf
20231111_YugabyteDB-on-k8s.pdf20231111_YugabyteDB-on-k8s.pdf
20231111_YugabyteDB-on-k8s.pdf
 
20221117_クラウドネイティブ向けYugabyteDB活用シナリオ
20221117_クラウドネイティブ向けYugabyteDB活用シナリオ20221117_クラウドネイティブ向けYugabyteDB活用シナリオ
20221117_クラウドネイティブ向けYugabyteDB活用シナリオ
 
20220331_DSSA_MigrationToYugabyteDB
20220331_DSSA_MigrationToYugabyteDB20220331_DSSA_MigrationToYugabyteDB
20220331_DSSA_MigrationToYugabyteDB
 
20211118 dbts2021 マイクロサービスにおけるApache Geodeの効果的な使い方
20211118 dbts2021 マイクロサービスにおけるApache Geodeの効果的な使い方20211118 dbts2021 マイクロサービスにおけるApache Geodeの効果的な使い方
20211118 dbts2021 マイクロサービスにおけるApache Geodeの効果的な使い方
 
20190523 IMC meetup-IMDG&DS
20190523 IMC meetup-IMDG&DS20190523 IMC meetup-IMDG&DS
20190523 IMC meetup-IMDG&DS
 
20181031 springfest spring data geode
20181031 springfest spring data geode20181031 springfest spring data geode
20181031 springfest spring data geode
 
Apache geode at-s1p
Apache geode at-s1pApache geode at-s1p
Apache geode at-s1p
 
20180217 hackertackle geode
20180217 hackertackle geode20180217 hackertackle geode
20180217 hackertackle geode
 
20171125 springfest snappydata
20171125 springfest snappydata20171125 springfest snappydata
20171125 springfest snappydata
 
20171118 jjug snappydata
20171118 jjug snappydata20171118 jjug snappydata
20171118 jjug snappydata
 

インメモリーデータグリッドの選択肢

  • 1. ULS Copyright © 2011-2017 UL Systems, Inc. All rights reserved. Proprietary & Confidential Powered by Apache GEODE Meetup Tokyo #3 インメモリーデータグリッドの選択肢 2017/2/16 ウルシステムズ株式会社 http://www.ulsystems.co.jp mailto:info@ulsystems.co.jp Tel: 03-6220-1420 Fax: 03-6220-1402
  • 2. ULS Copyright © 2011-2017 UL Systems, Inc. All rights reserved. Proprietary & Confidential Powered by 1 About Me 山河 征紀 Business Private • GEODE歴:9年(Since 2008) • GEODEバグ報告数:nnn 件 • マラソン • 横浜マラソン2016:4h17m • 目標は2017年度中のサブ4 • 登山 • 目標はココ
  • 3. ULS Copyright © 2011-2017 UL Systems, Inc. All rights reserved. Proprietary & Confidential Powered by 2 おしらせ Apache Geodeのハンズオンやります! 3/14(火)19:00~ 六本木ヒルズ森タワー20F Pivotal Japan • 一緒に運営していただける方 • スピーカーをお願いできる方 大募集中
  • 4. ULS 3 Copyright © 2011-2013 UL Systems, Inc. All rights reserved. Proprietary & Confidential Powered by インメモリーデータグリッドの選択肢
  • 5. ULS Copyright © 2011-2017 UL Systems, Inc. All rights reserved. Proprietary & Confidential Powered by 4 2007年 2017年 データグリッドの昔と今 (ex-GemFire) (ex-GridGain)
  • 6. ULS Copyright © 2011-2017 UL Systems, Inc. All rights reserved. Proprietary & Confidential Powered by 5 たくさんあるのはありがたい でも・・・ どれを使えば いいんだろう?
  • 7. ULS Copyright © 2011-2017 UL Systems, Inc. All rights reserved. Proprietary & Confidential Powered by 6 今日、お話したいこと In-Memory DataGrid
  • 8. ULS Copyright © 2011-2017 UL Systems, Inc. All rights reserved. Proprietary & Confidential Powered by 7 おことわり 本日、お話する内容は、あくまで個人の見解 です ただし、Geode Meetupだからといって Apache Geodeに有利になるような見方はし ておりません
  • 9. ULS 8 Copyright © 2011-2013 UL Systems, Inc. All rights reserved. Proprietary & Confidential Powered by インメモリーデータグリッドの選択肢
  • 10. ULS Copyright © 2011-2017 UL Systems, Inc. All rights reserved. Proprietary & Confidential Powered by 9 サーバ サーバ サーバ アプリケーションのスケールアウトは容易になったが、RDB がボトルネックに マイクロサービス時代では、ここがスケールしないときつい 良くあるシステムの課題 JVM JVM JVM アプリケーション アプリケーション アプリケーション RDB スループット だけでなくレ イテンシーも 重要
  • 11. ULS Copyright © 2011-2017 UL Systems, Inc. All rights reserved. Proprietary & Confidential Powered by 10 そんなときに… インメモリー データグリッド
  • 12. ULS Copyright © 2011-2017 UL Systems, Inc. All rights reserved. Proprietary & Confidential Powered by 11 インメモリーデータグリッドに必要な3大要素+1 複数ノードのメモリーに データを分散して保持していること メモリー中のデータと 外部データストアとの連携が シームレスにできること メモリー中のデータへ トランザクション処理ができること ① ② ③ メモリー中のデータに関するイベントが 容易にハンドリングできること
  • 13. ULS Copyright © 2011-2017 UL Systems, Inc. All rights reserved. Proprietary & Confidential Powered by 12 ということで… 3つの観点で、どれが良いのかを比較してみます!
  • 14. ULS 13 Copyright © 2011-2013 UL Systems, Inc. All rights reserved. Proprietary & Confidential Powered by ラウンド1 データの分散
  • 15. ULS Copyright © 2011-2017 UL Systems, Inc. All rights reserved. Proprietary & Confidential Powered by 14 データ分散?
  • 16. ULS Copyright © 2011-2017 UL Systems, Inc. All rights reserved. Proprietary & Confidential Powered by 15 データ分散とは… クラスター全体を論理的に1つのまとまりとして見たとき、 データをどのノードのメモリーにもつか、ということ データの特性によって分散スタイルを選ぶ必要があるため、 この選択肢が充足していることは重要 パーティションレプリケーション すべてのマシンで同一のデータ を保持する 何れかのマシンにデータが存在 する
  • 17. ULS Copyright © 2011-2017 UL Systems, Inc. All rights reserved. Proprietary & Confidential Powered by 16 データの分散:比較結果(1) 呼び方は違えど、主要な分散スタイルに差はない レプリケーション パーティション Geode ○ Replicated ○ Partitioned Ignite ○ REPLICATED ○ PARTITIONED Hazelcast ○ ReplicatedMap ○ Map Infinispan ○ Replicated-cache ○ Distributed-cache Coherence ○ Replicated Cache ○ Partitioned Cache
  • 18. ULS Copyright © 2011-2017 UL Systems, Inc. All rights reserved. Proprietary & Confidential Powered by 17 データの分散:比較結果(2) 細かい部分では特色がある ただし、これらは「あったら嬉しい」というレベルのもの その他の分散スタイル 補足 Geode Local Preloaded Distributed non-replicated レプリケーションでは、書き込み 時のオプションが選べる (distributed-ack,distributed- no-ack,global) Ignite LOCAL Near Cache パーティションのバックアップを 全ノードで保持したものがレプリ ケーション、というコンセプト Hazelcast Near Cache レプリケーションでの書き込みは 結果整合性 KeyValue以外のデータ構造も選択 できる Infinispan Local mode cache Near Caching 機能やAPIは非常に多い Coherence Local Cache Near Cache Optimistic Cache 各種Schemeを組み合わせて キャッシュを構成できる
  • 19. ULS Copyright © 2011-2017 UL Systems, Inc. All rights reserved. Proprietary & Confidential Powered by 18 パーティションのデータ分散(1) パーティションに関しては、こんな風にデータを保持したい 時もある(カスタムパーティショニング) ノード#1 Order-1 User-A Order-3 User-B Order-5 User-A Order-7 User-A ノード#2 Order-2 User-B Order-4 User-A Order-6 User-A Key Value Key Value ノード#1 Order-1 User-A Order-5 User-A Order-7 User-A ノード#2 Order-2 User-B Order-4 User-A Order-6 User-A Key Value Key Value Order-3 User-B データは均等 に分散しいて いるが… 処理内容によっては User毎にまとまって いた方がノード間通 信がなく、都合が良 い場合もある
  • 20. ULS Copyright © 2011-2017 UL Systems, Inc. All rights reserved. Proprietary & Confidential Powered by 19 加えて、異なるデータの種類も同一ノードに配置したい時も ある(コロケーション) OrderUser パーティションのデータ分散(2) ノード#1 Order-1 User-A Order-4 User-A User-B User-B属性 Key Value OrderUser ノード#2 Order-2 User-B Order-3 User-B User-A User-A属性 Key Value OrderUser ノード#1 Order-1 User-A Order-4 User-A User-A User-A属性 Key Value OrderUser ノード#2 Order-2 User-B Order-3 User-B User-B User-B属性 Key Value User-Aの データがな いのでノー ド#2にとり にいかない といけない … ノードを跨 いでデータ を取得しな くて良い
  • 21. ULS Copyright © 2011-2017 UL Systems, Inc. All rights reserved. Proprietary & Confidential Powered by 20 パーティションのデータ分散:比較結果 こちらも差はなし カスタム パーティショニング コロケーション Geode ○ Partition Resolver ○ Co-Location Ignite ○ Affinity Collocation ○ Affinity Collocation Hazelcast ○ Partition AwareKey ○ Partition AwareKey Infinispan ○ Grouping API KeyAffinityService ○ Grouping API KeyAffinityService Coherence ○ KeyPartitioning Strategy ○ Key Association
  • 22. ULS Copyright © 2011-2017 UL Systems, Inc. All rights reserved. Proprietary & Confidential Powered by 21 ラウンド1:データの分散対決 結果発表 過去バージョンではできないものがあったが、現時点では大 きな差なし
  • 23. ULS 22 Copyright © 2011-2013 UL Systems, Inc. All rights reserved. Proprietary & Confidential Powered by ラウンド2 シームレスな外部データストア連携
  • 24. ULS Copyright © 2011-2017 UL Systems, Inc. All rights reserved. Proprietary & Confidential Powered by 23 シームレスな外部データストア連携とは… 全てのデータはメモリーにのりきらない のりきらないデータは外部データストアとの連携が必要 外部データストア との自動連携 データ グリッド RDB等 APPが意識するのは メモリー上のデータ だけ  メモリー中のデータを参照して、データが 存在しない場合(キャッシュミス)は自動 的にメモリー上に読み込んでほしい  メモリー中のデータを追加・変更した場合 は、自動的にデータストアに書き込んでほ しい
  • 25. ULS Copyright © 2011-2017 UL Systems, Inc. All rights reserved. Proprietary & Confidential Powered by 24 キャッシュミスが発生した場合は、データストアよりデータ を読み取りメモリーに保持する リードスルー RDB等 データグリッド データグリッド 参照 (Read A) リード スル― リード スル― A B C D D D A A B B 参照 (Read B) APP APP
  • 26. ULS Copyright © 2011-2017 UL Systems, Inc. All rights reserved. Proprietary & Confidential Powered by 25 メモリー上のデータを更新した場合は、自動的にデータスト アに書き込む ライトスルー/ライトビハインド RDB等 データグリッド データグリッド 追加 (Write A) ライトスルー ライトビハインド (Insert) A B D D D A A B B 更新 (Write B) ライトスルー ライトビハインド (Update) APP APP
  • 27. ULS Copyright © 2011-2017 UL Systems, Inc. All rights reserved. Proprietary & Confidential Powered by 26 外部データストア連携:比較結果 出来ないものはなし リードスルー ライトスルー ライトビハインド Geode ○ Cache Loader ○ Cache Writer ○ Async Event Listener Ignite ○ Cache Store ○ Cache Store ○ Cache Store Hazelcast ○ Cache Loader ○ Map Store ○ Map Store Infinispan ○ Cache Loader ○ Cache Store ○ Cache Store Coherence ○ Cache Loader ○ Cache Store ○ Cache Store
  • 28. ULS Copyright © 2011-2017 UL Systems, Inc. All rights reserved. Proprietary & Confidential Powered by 27 これも、過去バージョンではできないものがあったが、現時 点では大きな差なし  あえていうなら、各種データストア用のデフォルト実装が揃っているInfinispan が使いやすいかもしれない ラウンド2:外部データストア連携対決 結果発表
  • 29. ULS 28 Copyright © 2011-2013 UL Systems, Inc. All rights reserved. Proprietary & Confidential Powered by ラウンド3 トランザクション
  • 30. ULS Copyright © 2011-2017 UL Systems, Inc. All rights reserved. Proprietary & Confidential Powered by 29 トランザクション インメモリーデータグリッドを採用する場合、更新処理の高 速性、スケーラビリティを求めて採用するケースがある ベースは、トランザクション不要なように設計すべきである が、少なからずトランザクション処理が必要となるケースが ある
  • 31. ULS Copyright © 2011-2017 UL Systems, Inc. All rights reserved. Proprietary & Confidential Powered by 30 トランザクション:比較結果 Ignite、Infinispanが出来ることは多い トランザクション対象 分離レベル ロック 方式レプリケー ション パーティ ション MIX Geode ○ △ △ READ_COMMITED 楽観 Ignite ○ ○ ○ READ_COMMITED REPEATABLE_READ SERIALIZABLE 楽観 悲観 Hazelcast ○ ○ ○ READ_COMMITED 楽観 Infinispan ○ ○ ○ READ_COMMITTED REPEATABLE_READ 楽観 悲観 Coherence ○ ○ ○ READ_COMMITED 楽観
  • 32. ULS Copyright © 2011-2017 UL Systems, Inc. All rights reserved. Proprietary & Confidential Powered by 31 トランザクション機能で選ぶなら、Ignite、Infinispanが出 来ることは多い 高速性を目指すときに必要かどうかは微妙なとこではあるが ラウンド3:トランザクション対決 結果発表
  • 33. ULS Copyright © 2011-2017 UL Systems, Inc. All rights reserved. Proprietary & Confidential Powered by 32 まとめ インメモリーデータグリッド機能対決 結果 –RDBと同じようなトランザクション機能が必要ならIgnite やInfinispanを選んだ方が良い –GeodeとCoherenceは10年前から出来ないことがわかって いるが対応していないので、おそらく今後も対応されない –それ以外は以前は差があったが、現時点では大差なし ラウンド 結果 1. データ分散 DRAW(差なし) 2. 外部データストア連携 DRAW(差なし) 3. トランザクション 1. Apache Ignite 2. Infinispan
  • 34. ULS Copyright © 2011-2017 UL Systems, Inc. All rights reserved. Proprietary & Confidential Powered by 33 最後に 今回は、残念ながらGeodeだけ「出来ない」 がでちゃいました! それでも、今後もGeodeを使い続けます! 別の観点の比較はまた別の機会にでも…