15.2. JdbcStringBasedStores
JdbcStringBasedStore
は複数のエントリーを各行にグループ化せずに、各エントリーをテーブルの独自の行に格納するため、同時負荷の下でスループットが増加します。また、各キーを String
オブジェクトへマッピングする (プラグ可能な) バイジェクション (bijection) も使用します。Key2StringMapper
インターフェースはバイジェクションを定義します。
Red Hat JBoss Data Grid には、プリミティブタイプを処理する
DefaultTwoWayKey2StringMapper
と呼ばれるデフォルトの実装が含まれています。
15.2.1. JdbcStringBasedStore の設定 (リモートクライアントサーバーモード)
以下は、Red Hat JBoss Data Grid のリモートクライアントサーバーモードを使用し、パッシベーションを有効にした
JdbcStringBasedStore
のサンプル設定です。
手順15.4 リモートクライアントサーバーモードでの JdbcStringBasedStore の設定
string-keyed-jdbc-store 要素
string-keyed-jdbc-store
要素は、文字列ベースのキーボードから情報が入力されたキャッシュの JDBC ストアに対する設定を指定します。datasource
パラメーターはデータソースの JNDI 名を定義します。passivation
パラメーターは、キャッシュのエントリーがパッシベートされるか (true
) またはキャッシュストアが内容のコピーをメモリーに保持するか (false
) を決定します。preload
パラメーターは、起動中にエントリーをキャッシュにロードするかどうかを指定します。このパラメーターで有効な値はtrue
とfalse
です。purge
パラメーターは、起動時にキャッスストアがパージされるかどうかを指定します。 このパラメーターで有効な値はtrue
とfalse
です。shared
パラメーターは、複数のキャッシュストアインスタンスがキャッシュストアを共有する場合に使用されます。複数のキャッシュインスタンスが同じ変更内容を複数回書き込まないようにするため、このパラメーターを設定することができます。このパラメーターに有効な値はtrue
とfalse
です。singleton
パラメーターは、シングルトンストアのキャッシュストアを有効にします。SingletonStore は、クラスター内の唯一のインスタンスが基礎となるストアと通信する場合にのみ使用される委任中のキャッシュストアです。
<local-cache> ... <string-keyed-jdbc-store datasource="java:jboss/datasources/JdbcDS" passivation="true" preload="false" purge="false" shared="false" singleton="true">
string-keyed-table 要素
string-keyed-table
要素は、文字別ベースのキャッシュエントリーを格納するために使用されるデータベーステーブルに関する情報を指定します。prefix
パラメーターはデータベーステーブル名のプレフィックスの文字列を指定します。
<local-cache> ... <string-keyed-jdbc-store datasource="java:jboss/datasources/JdbcDS" passivation="true" preload="false" purge="false" shared="false" singleton="true"> <string-keyed-table prefix="JDG">
id-column 要素
id-column
要素は、キャッシュエントリーの ID を保持するデータベース列に関する情報を指定します。name
パラメーターは ID 列の名前を指定します。type
パラメーターは ID 列のタイプを指定します。
<local-cache> ... <string-keyed-jdbc-store datasource="java:jboss/datasources/JdbcDS" passivation="true" preload="false" purge="false" shared="false" singleton="true"> <string-keyed-table prefix="JDG"> <id-column name="id" type="${id.column.type}"/>
data-column 要素
data-column
要素には、キャッシュエントリーデータを保持するデータベース列に関する情報が含まれます。name
パラメーターはデータベース列の名前を指定します。type
パラメーターはデータベース列のタイプを指定します。
<local-cache> ... <string-keyed-jdbc-store datasource="java:jboss/datasources/JdbcDS" passivation="true" preload="false" purge="false" shared="false" singleton="true"> <string-keyed-table prefix="JDG"> <id-column name="id" type="${id.column.type}"/> <data-column name="datum" type="${data.column.type}"/>
timestamp-column 要素
timestamp-column
要素は、キャッシュエントリーのタイムスタンプを保持するデータベース列に関する情報を指定します。name
パラメーターはデータベース列の名前を指定します。type
パラメーターはデータベース列のタイプを指定します。
<local-cache> ... <string-keyed-jdbc-store datasource="java:jboss/datasources/JdbcDS" passivation="true" preload="false" purge="false" shared="false" singleton="true"> <string-keyed-table prefix="JDG"> <id-column name="id" type="${id.column.type}"/> <data-column name="datum" type="${data.column.type}"/> <timestamp-column name="version" type="${timestamp.column.type}"/> </string-keyed-table> </string-keyed-jdbc-store> </local-cache>