JBoss Data Gridによるスケーラブルな アーキテクチャ活 用ソリューションと 日本

JBoss Data Gridによるスケーラブルな
アーキテクチャ活⽤用ソリューションと
⽇日本HP様による検証結果のご紹介
⽇日本ヒューレット・パッカード株式会社 ⼩小⻄西 克博
レッドハット株式会社 ⾼高橋 丈
現在のITを取り巻く環境
l トランザクション/データが⾶飛躍的に増加傾向に
l  リテール業界では、顧客ごとに平均50GB/年年のデータが貯まる
l  FBでは⽇日に25億件のコンテンツ、500TB 以上のデータを処理理、
「いいね」は毎⽇日27億回
l  運輸/ロジスティクスでは、天候/渋滞/拠点の混雑状況を保持
l  製造、電器、保険...などデータの蓄積領領域は多岐にわたる
l ⼀一⽅方で情報システムは処理理の増加に対応できてい
ない
l  ピークタイムに安定したサービスを提供できない
l  リアルタイムな性能と情報を提供できない
2
Copyright © 2012 Red Hat, Inc. データグリッドへの期待
2014年年までに
40%以上の⼤大企業が
1つ以上のインメモリデータグリッド
環境を持つだろう
出典:Predicts 2012
アプリケーション基盤におけるクラウドとインメモリ革新
Gartner Inc. 2012
3
Copyright © 2012 Red Hat, Inc. 何故データグリッドが必要なのか?
l  仮想環境/クラウド環境では⽔水平⽅方向のスケーラビリティが必須
l  EAP6はAPサーバを軽量量/⾼高速化する事で、これまで以上のスケーラビリティを確保
l  APサーバのスケールアウト = DBサーバがボトルネックに
l  DBサーバのスケールアウトには⾼高性能/⾼高価な製品が必要
l  データ構造への強い依存がスケールアウトの⾜足枷にも
l  データグリッド = DB以外でデータレイヤのスケールアウトを検討するアプローチ
l 
l 
l 
l 
複数ハードウェアにまたがったメモリ空間を利利⽤用しデータを蓄積
Key/Value Store(よりルーズなデータモデル)によるスキーマ依存からの開放
データのオンメモリ化により結果的に⾼高速性も獲得
⾼高価なDB多重化路路線から脱却
AP
AP
AP
AP
AP
サーバ サーバ サーバ サーバ サーバ
データグリッド
APサーバのスケールに追随できない
4
Copyright © 2012 Red Hat, Inc. AP
AP
サーバ サーバ
JBoss Data Grid とは?
Project Site: http://www.jboss.org/infinispan
l  Pure Java 分散インメモリ Key/Value Store
l  ⼈人気/実績のあるOSS、JBoss.org の Infinispan がベース
l  java.util.MapをベースとしたAPI
l  特徴
l  多彩なクライアントから利利⽤用可能
l  Javaだけでなく、⾮非Javaアプリからも利利⽤用可能
l  耐障害性を備える
l  データの⼆二重化&分散保持が可能、ファイルやDBに永続化も可能
l  拡張性が⾼高い
l  負荷状況やデータ量量にあわせた、動的なノードの追加・削除が可能
l  管理理が簡単
l  JBoss Operations Network for JDG が付属、GUIによる効果的な管
理理が可能
l  サポート
l  サブスクリプション(サーバのCPUコア数ベース)で利利⽤用可能
l  クライアント側の課⾦金金はなし
5
Copyright © 2012 Red Hat, Inc. JBoss Data Grid の構成
l ライブラリモード
l  アプリケーションと同⼀一VM上で動作
l  Javaのみに対応
l  豊富な機能、APIを提供
l  よりハイパフォーマンス
l クライアント/サーバモード
l  クラスタ化したDataGridにアクセス
l  他⾔言語間での連携
l  様々な連携プロトコルを利利⽤用可能
l  Hot Rod、Memcached、REST
l  複数アプリケーションからデータ層を共
有可能
6
Copyright © 2012 Red Hat, Inc. データの分散モデル
Mode
概要
拡 Read
張 /
性 Write
Local
•  1台でキャッシュを構成
×
速/速
Replic
ation •  クラスタで構成
•  同⼀一データを全ノードで保持
×
速/遅
○ 中/中
Invali
date ×
7
APP
APP
Distrib •  クラスタで構成
ution •  1つのデータを2ノード以上で重
複して保持(レプリカ数は指定
可能)
•  データ更更新時は全レプリカを更更
新
•  クラスタで構成
•  各ノードはそれぞれがLocal
キャッシュとして動作(格納時
に他ノードにレプリケーション
したりしない)
•  データ更更新時は別サーバの同⼀一
キーをデータを無効に 構成図(例例)
k1, v1
k2, v2
k3, v3
JDG
k1, v1
k2, v2
k3, v3
JDG1
k1, v1
k2, v2
k3, v3
JDG2
k1, v1
k2, v2
k3, v3
JDG3
k3, v3
JDG1
k3, v3
JDG2
k1, v1
APP
遅/速
Copyright © 2012 Red Hat, Inc. APP
k2, v2
k1, v1
k2, v2
JDG3
k1, v1
k2, v2
JDG1
APP
k2, v2
k3, v3
JDG2
APP
k2, v2
k3, v3
JDG3
接続プロトコルの⽐比較
プロトコル
概要
特徴
Mem
cached
•  Memcached互
換プロトコル
• テキストベース
• Memcached対応アプリケーションを変更更せず移⾏行行可能
• サーバリストは⼿手動で更更新する必要がある
• データはJBoss Data Gridクラスタ内の任意のノードから取
得可能
APP
1.get(k1)
4.return
k1, v1
k1, v1
JDG1
2.get(k1)
JDG2
3.return
JDG3
REST
• RESTfulサービス
• テキストベース
• 任意のRESTクライアントからアクセスが可能
HotRod
• JBoss Data Grid
独⾃自プロトコル
• バイナリ
• より⾼高速
• クライアントがデータを保持するノードを選択して処理理を
⾏行行う
1.get(k1)
JDG1
k1, v1
8
APP
2.retrun
JDG2
k1, v1
JDG3
• ノードの追加・削除時にクライアントのサーバリストが⾃自
動更更新される
Copyright © 2012 Red Hat, Inc. OOMEを回避する保全の機能
Eviction, expiration, and passivation
Distribution Cache
l  Expiration -‐‑‒ ⼀一定時間の後にキャッシュを消す
l  Eviction -‐‑‒ 任意のエントリ数を超えた場合に
データを消す、FIFO, LRU, unordered, LIRS, none
l  Passivation – 消すのではなく
CacheStore(File, DB etc.)に書き出す
Persistance
Step
処理理
メモリ中のデータ
ディスク中のデータ
1
Insert K1
K1
n/a
2
Insert K2
K1, K2
n/a
3
Eviction thread – K1
K2
K1
4
Read K1
K1, K2
n/a
5
Eviction thread K2
K1
K2
6
Remove K2
K1
n/a
9
Copyright © 2012 Red Hat, Inc. JBoss Operations Network for JDG
サブスクリプションに含まれる監視機能
l 
l 
l 
l 
10
パフォーマンス情報や利利⽤用状況の履履歴参照
⾃自動的なノード配備
セキュリティ/監査の設定、アラート機能
JMXでの取得も可能
Copyright © 2012 Red Hat, Inc. JBoss Data Grid のユースケース1
l  スケールアウト可能なインメモリデータストア
l  DBの前にグリッドを置きデータをキャッシュ
l  ⾼高価で複雑なDBクラスタではなく、DB以外のレイヤでデータの可
⽤用性を担保
l  インスタンス追加時にデータが⾃自動的に再配置されるのでシャー
ディングの⽅方式を考える必要が無い
l  オンラインのI/Oをディスクからメモリ+ネットワークに変え、性
能を加速
Web Web Web l  キャッシュ領領域の拡張性Up
アプリ アプリ アプリ Web アプリ Web アプリ 動的に追加可能
Web アプリ JBoss Data Grid 事後のDBクラスタ導⼊入は⼤大変
11
Copyright © 2012 Red Hat, Inc. JBoss Data Grid のユースケース2
l バッチ処理理の⾼高速化
l  集計⽤用データをDBから分散環境のData Gridへロード
l  複数ハードウェアで並列列処理理を⾏行行い、集計処理理の時間を短縮
l  Map/Reduce, Distributed Executor
l  集計結果を元のDBに書き戻す事で、後続の業務処理理をこれまで
通り利利⽤用
JBoss Data Grid 結果の書き戻し
スケールアップでしか
バッチ処理理時間の短縮が出来ない
12
データのロード
Copyright © 2012 Red Hat, Inc. Demonstration
Red Hat × HP
レッドハット株式会社
JBoss サービス事業部
ソリューションアーキテクト
⾼高橋 丈
⽇日本ヒューレット・パッカード株式会社
テクノロジーコンサルティング統括本部
テクノロジーソリューション本部
インフラストラクチャソリューション部
⼩小⻄西 克博
© Copyright 2012 Hewlett-Packard Development Company, L.P. The information contained herein is subject to change without notice.
14
Copyright © 2012 Red Hat, Inc. HPとRed Hat 両社パートナシップの価値
12年年以上にわたる戦略略的パートナシップ
Red Hat社創⽴立立初期から、ワールドワイドで培われた様々なノウハウ
共にOSSの市場啓蒙に会社レベルで貢献 (OVA ガバニングメンバ)
圧倒的なお客様導⼊入実績
( *1 : IDC August 2011, *2 : IDC April 2011)
Linuxサーバ市場シェア#1ベンダー(* 1)
Linuxを搭載しているHP x86サーバのうち、60%以上がRed Hatを選択(*2)
豊富な導⼊入実績を持つが故の他を凌凌駕するサポート品質
HP内解決率率率 :WW 98%以上
⽇日本案件の国内解決率率率 :99.4% (2011年年実績)
OSから仮想化、セキュリティ、アプリケーションまで、
多岐にわたるコンサルティングサービスを提供
WWのRed Hat関連技術者数 :4,000⼈人以上
⽇日本に於けるHP Open Serviceの多くの実績 (JBossもいち早く開始)
パートナシップの証として、2010年年、2011年年連続で HPのパートナシップ オブ ザイヤー を受賞
AllianceONE Partner of the Year 2011 “ HP Cloud Computing ISV 部⾨門” 技術、ビジネス⾯面での貢献を評価され
2012年年Red Hat様のJBoss パートナーオブ
ザイヤーを受賞
© Copyright 2012 Hewlett-Packard Development Company, L.P. The information contained herein is subject to change without notice.
15
Copyright © 2012 Red Hat, Inc. インメモリ製品の絶⼤大なる効果!
HPのコアなテクノロジーメンバーにて検証を実施!
まずは、効果をご確認下さい
データグリッド内で更更新を含めた処理理をさせた場合 (DBへの問い合わせゼロ)
350,000 40倍のスループット量量 (Ops/sec) !!!!
300,000 250,000 200,000 DB JDG2ノード 150,000 JDG4ノード 100,000 50,000 0 GET/PUT=100/0 GET/PUT=95/5 GET/PUT=50/50 © Copyright 2012 Hewlett-Packard Development Company, L.P. The information contained herein is subject to change without notice.
16
Copyright © 2012 Red Hat, Inc. 基礎性能検証概要および試験環境
l  基礎性能検証概要(1)
基礎性能検証の⽬目的
JBoss Data Gridをキャッシュサーバとして利利⽤用する、典型的な3つ
のシナリオを想定し、基礎性能を測定しました。
検証⽅方法
想定した3つのシナリオでのデータのGET/PUTを⽤用いた基礎性能を測
定しました。
検証は、DBで構成した場合と、JBoss Data Gridの2ノード構成およ
び4ノード構成の3パターンについて検証しました。
JBoss Data GridとクライアントはHotRodプロトコルを利利⽤用して接
続しました。
検証の前提
各シナリオで扱うデータは、永続化対象ではないデータとしました。
耐障害性は、JBoss Data Gridでデータを⼆二重化して保持しました。
© Copyright 2012 Hewlett-Packard Development Company, L.P. The information contained herein is subject to change without notice.
17
Copyright © 2012 Red Hat, Inc. 基礎性能検証概要および試験環境
l  JBoss Data Grid試験環境 IPoIB InfiniBand QDR 40Gbps
Data Gridサーバー
4台
Data Gridサーバー
2台
クライアント
4台
データベースサーバー
1台
© Copyright 2012 Hewlett-Packard Development Company, L.P. The information contained herein is subject to change without notice.
18
Copyright © 2012 Red Hat, Inc. 基礎性能検証概要および試験環境
l  JBoss Data Gridとデータベースの試験条件 データ構造
データ
データ型
データ内容
Key
String
userXXXXXXXX (XXXXXXXXは8桁の数値)
Value
HashMap<String, String>
Key
fieldX (Xは1〜~10)
Value
⻑⾧長さ100の⽂文字列列
データベーステーブル
データ
データ型
データ内容
ycsb_̲key
VARCHAR
userXXXXXXXX (XXXXXXXXは8桁の数値)
Primary Key
field1
VARCHAR
⻑⾧長さ100の⽂文字列列
field2
VARCHAR
⻑⾧長さ100の⽂文字列列
VARCHAR
⻑⾧長さ100の⽂文字列列
…
field10
DataGridとデータベースで持つデータ構造をほぼ同⼀一の形に。
© Copyright 2012 Hewlett-Packard Development Company, L.P. The information contained herein is subject to change without notice.
19
Copyright © 2012 Red Hat, Inc. 基礎性能検証概要および試験環境
l  負荷のかけ⽅方 ●●●●● ●…
パターン1. 10GB
DBサーバーのメモリに乗り切切るデータ量量
●●●
●●●●● ●…
溢れたデータは
ディスクアクセス必須
●●●●●●…
パターン2. 60GB
DBサーバーのメモリから溢れるデータ量量
●●●●● ●…
●●●
© Copyright 2012 Hewlett-Packard Development Company, L.P. The information contained herein is subject to change without notice.
20
Copyright © 2012 Red Hat, Inc. データ永続化検証
•  概要
・JBoss Data Gridでは登録されたデータをファイルやDBに永続化することが可能。
・JDGからDBへの永続化における性能について検証。 •  JBoss Data Gridのデータの永続化の仕組み
・同期での永続化
-データが書き込まれたときに同期してDBへ永続化
①データPUT
APP
k1, v1
k2, v2
k3, v3
②永続化
k1, v1
JDG
k2, v2
k3, v3
③PUT完了了
・⾮非同期での永続化
-永続化処理理はキューイングされ、別スレッドがDBへ永続化
①データPUT
APP
③PUT完了了
k1, v1
k2, v2
k3, v3
JDG
②キューイング
キュー
© Copyright 2012 Hewlett-Packard Development Company, L.P. The information contained herein is subject to change without notice.
21
Copyright © 2012 Red Hat, Inc. k1, v1
k2, v2
k3, v3
永続化は別スレッド
検証結果まとめ ~∼パフォーマンス~∼
パターン1. 10GB
パターン2. 60GB
DBサーバーのメモリに乗り切切るデータ量量
DBサーバーのメモリから溢れるデータ量量
300,000 ■DB
■JDG2ノード
■JDG4ノード
250,000 200,000 150,000 250,000 200,000 100,000 50,000 50,000 GET/PUT=
GET/PUT=100/0 100/0
GET/PUT=
GET/PUT=95/5 95/5
GET/PUT=
GET/PUT=50/50 50/50
Data Gridサーバーがなくても、
DBサーバーのメモリに乗り切切れば⾼高速
(Read処理理のみ)
GET/PUT= GET/PUT=95/5 GET/PUT= GET/PUT=50/50 GET/PUT=
GET/PUT=100/0 100/0
95/5
50/50
Data Gridを⽤用いれば40倍以上の
性能向上(更更新処理理も含む)
© Copyright 2012 Hewlett-Packard Development Company, L.P. The information contained herein is subject to change without notice.
22
300,000 150,000 100,000 0 350,000 Copyright © 2012 Red Hat, Inc. 0 検証結果まとめ ~∼データ永続化~∼
250,000 ■永続化なし
■⾮非同期永続
■同期永続
■DB
200,000 150,000 ⾮非同期の永続化の場合、 永続化なし
の場合の86%のスループット性能
100,000 50,000 0 GET/PUT=95/5 GET/PUT=
95/5
GET/PUT=50/50 GET/PUT=
50/50
同期の永続化の場合、 更更新処理理が多
いとDBの2倍のスループットが出るが、
⾮非同期の永続化に⽐比べると7分の1の
スループットとなる。
JBoss Data Gridの利利⽤用⽬目的や格納データの性質を考慮して、
データの永続化の実施を検討する必要あり。
© Copyright 2012 Hewlett-Packard Development Company, L.P. The information contained herein is subject to change without notice.
23
Copyright © 2012 Red Hat, Inc. アプリケーションサーバー⾼高速化ソリューション発表!
Storage
HP製品群
Storage
APG
APG
APG
APG
APG
APG
APG
APG
DB
DB
Mgmt
Mgmt
Red Hat JBoss Data Gridを活⽤用したAll in oneパッケージ
コンサルティング
サービス
×
×
OSS
サブスクリプション
SAN
⾼高集約・省省電⼒力力なHP Blade Systemを中核とした
ProLiant サーバーで構成。
© Copyright 2012 Hewlett-Packard Development Company, L.P. The information contained herein is subject to change without notice.
24
Copyright © 2012 Red Hat, Inc. 3つの早さの秘密
l  Why Red Hat JBoss Data Grid ? , Why HP !
Point1. APサーバー層というこだわり
+
OSS
Point2. キャッシュのグリッド化
Point3. HWベンダーならでは
© Copyright 2012 Hewlett-Packard Development Company, L.P. The information contained herein is subject to change without notice.
25
Copyright © 2012 Red Hat, Inc. 次世代のシステムを⽬目指して
l  AS IS
クライアント
24 x 365 保守
Active-‐‑‒Active構成
Web
サーバー
AP
サーバー
データベース
サーバー
Top Level
サービスレ
ベル
ストレージ
・・
・
・・
・
・・
・
・・
・
増加し続けるデータをストレージに格納し、どんどん⽌止められないシステムに。
データベースサーバーのサービスレベルが上昇。
可⽤用性を上げるために、EditionのGrade UP
© Copyright 2012 Hewlett-Packard Development Company, L.P. The information contained herein is subject to change without notice.
26
Copyright © 2012 Red Hat, Inc. 次世代のシステムを⽬目指して
l  TO BE
クライアント
標準時間保守
データベースを健全な状態に Active-‐‑‒Standby構成
AP
サーバー
Web
サーバー
データベース
サーバー
ストレージ
・・
・
・・
・
・・
・
・・
・
グリッドサーバーで
処理理するデータ量量
DBサーバーで
処理理するデータ量量
>>> 少
多
グリッド サーバー
© Copyright 2012 Hewlett-Packard Development Company, L.P. The information contained herein is subject to change without notice.
27
Copyright © 2012 Red Hat, Inc. Normal
サービス
レベル
アプリケーションサーバー⾼高速化ソリューション
l  ⽇日本HPがご提供する設計・導⼊入・構築までを含めたAll in oneソリューション
ソリューション概要
⽇日本HPでは、Red Hat JBoss Data Gridを活⽤用し、企業の取り扱うデータ量量の
増⼤大や、デバイスの多様化によるデータアクセス頻度度の増加に伴うレスポンス
遅延の問題に、⾼高速化とコスト削減を⽬目指したソリューションをご提供します。
2012/8/29
リリース
Why HP ?
お問い合わせ先
・全レイヤーに渡るラインナップ豊かな製品⼒力力
・OSSと商⽤用製品を適材適所で使い分けるコンサルティング⼒力力
・⼗十分な検証に基づいた最適な構成をご提供
・World Wide Red Hat、⽇日本 Red Hatとも強固に連携したシームレスな体制
© Copyright 2012 Hewlett-Packard Development Company, L.P. The information contained herein is subject to change without notice.
28
Copyright © 2012 Red Hat, Inc. TC Solution Desk
MAIL : jpn_̲tc_̲solution_̲[email protected]
TEL : 03-‐‑‒5628-‐‑‒1140 ⽉月〜~⾦金金 9:00〜~17:30
(時間外のご依頼につきましては
翌営業⽇日の対応となります)
HP+OSSトータルソリューション
キャッシュサーバー導⼊入
仮想データベース導⼊入
JBoss Data Grid、PPAS Infinite Cacheの設計・構築、ア
プリケーション移⾏行行⽀支援を実施
Web
クライアント
サーバー
・・
・
JBoss Enterprise Data Services
を使⽤用した仮想データ統合基盤の
設計・構築を実施
AP
サーバー
・・
・
キャッ
シュ
サーバー
キャッシュ
サーバー導⼊入
・・
・
仮想
データ統合
サーバー
仮想
データベース
・・
・
導⼊入
JBoss EAPへの移⾏行行に伴い、環境⾯面の
懸念念点がないか事前に簡易易チェック
データベー
ス
サーバー
EDB PPAS
導⼊入・移⾏行行
ストレージ
データベース
・・
・ ⾼高速化対策
クイック診断
インフラの問題点の調査分析を⾏行行
うコンサルティングサービス
オープンソース監視構築サービス
© Copyright 2012 Hewlett-Packard Development Company, L.P. The information contained herein is subject to change without notice.
29
EDB Postgres Plusの設計・構築、
アプリケーション移⾏行行⽀支援、データ
移⾏行行までを実施
クイック診断
・・
・
JBoss移⾏行行簡易易アセスメント
EDB Postgres Plus導⼊入・移⾏行行
Zabbixを使⽤用した監視環境の構築
Copyright © 2012 Red Hat, Inc. データベース⾼高速化対策
IOアクセラレータ、Violin Memoryを活
⽤用したインフラ基盤の設計・構築から
データ移⾏行行までを実施
まとめ
企業向け Data Grid として必要な機能を提供
リニアなスケーラビリティ、インメモリでの⾼高速性、分散による⾼高信頼性、
マルチプロトコル、マルチクライアント対応 etc.
単なるOSSプロジェクトではなく、
レッドハット製品としてきちんと検証&サポート
HP様とのタッグにより、
貴社ビジネスへの適⽤用を強⼒力力に⽀支援
30
Copyright © 2012 Red Hat, Inc. Try JBoss Data Grid
l 
Check out our informational landing page:
l 
l 
l 
l 
l 
31
http://www.redhat.com/
promo/infspn2jdg/
Infinispan-‐‑‒based library
Runtime environment
JBoss Operations Network
All the benefits of subscription, including Red Hat world class support and services
Copyright © 2012 Red Hat, Inc. ご清聴ありがとうございました