企業向けデータグリッド:Red Hat JBoss Data Gridの特徴

2013年7月31日(水)
三木 雄平

はじめに

連載2回目の今回はRed Hat JBoss Data Grid(以降、JDG)を利用する上で理解しておく必要がある“JDGの使用モード”、“キャッシュモード”、および“アクセスプロトコル”の3点に絞って解説を行いたいと思います。また、各項目のメリット・デメリットについても出来る限り解説していきます。今回の記事をお読み頂くことでJDGの特徴や、JDGの構成についてご理解頂けると思います。

JBoss Data Gridの使用モードについて

はじめにJDGの使用モードに関してですが、現在、JDGではリモートクライアントサーバモード、ライブラリモードと呼ばれる2つの使用モードから選択して、環境を構成することが出来ます。

リモートクライアントサーバモードは読んで字のごとく、リモート環境からクライアント(アプリケーション層)がJDGサーバ(データ層)を利用するモデルです。各アプリケーションはクラスタ化したJDGに用意されたアクセスプロトコル(後述)を利用し、アクセスしデータを操作します。

図1:リモートクライアントサーバモード(クリックで拡大)

リモートクライアントサーバモードは、アプリケーションからデータ層を独立して構成できるため、データ量が多く、多数のJDGインスタンスを起動しなければならない場合(例:アプリケーション層とデータ層のサーバ数が大きく異なる)等には非常に有効なモードです。また、複数アプリケーションからデータ層を共有化できるのもこのモードです。

このモードのデメリットとしては、アプリケーションとJDG間でトランザクションが切れてしまうことが上げられます。もし、JDGをグローバルトランザクションに含めたい等の要望がある場合は、次に紹介するライブラリモードのご利用を検討してください。

次に、ライブラリモードについてですが、こちらはアプリケーションと同一のJava VMにJDGを配置するモードです。

図2:ライブラリモード(クリックで拡大)

リモートクライアントサーバモードと比べると機能が豊富であり、利用可能なAPIも多いためアプリケーションからきめ細かい制御がしたい場合等にはこちらのモードをおすすめします。また、ネットワーク負荷を最小に抑えられるため、リモートクライアントサーバモードよりもパフォーマンスが高くなる場合があります。

デメリットを上げるとすれば、Javaアプリケーション以外からはアクセスできない点や、アプリケーション層とデータ層を分けることが出来ないことによる、管理・運用面での弊害等が考えられます。また、データとアプリケーションが同様のJavaヒープを利用することになるため、GC戦略をたてる上で、チューニングが複雑になる傾向があります。

これらのモードに関しては、JDGを利用するシステムおよびアプリケーションの特性や要望によって自ずと決まってくると思います。それぞれのメリット・デメリットを考慮して最適な使用モードを選択することになります。

レッドハット株式会社

JBossグループ ソリューション・アーキテクト
株式会社SRAを経て、2002年に日本BEAシステムズ入社。カスタマーサポートチームにて、アプリケーションサーバおよびJava VM(JRockit)のサポートを担当。その後、プリセールスチームにてSIP Servlet関連の製品に携わる。2007年よりレッドハット JBossグループにてプリセールスを担当。
音楽(聴く&演奏)大好き。最近はJazzyなベースとリズムに魅了されてます。

連載バックナンバー

Think ITメルマガ会員登録受付中

Think ITでは、技術情報が詰まったメールマガジン「Think IT Weekly」の配信サービスを提供しています。メルマガ会員登録を済ませれば、メルマガだけでなく、さまざまな限定特典を入手できるようになります。

Think ITメルマガ会員のサービス内容を見る

他にもこの記事が読まれています