第5章 データコンテナーの設定


Data Grid がエントリーを保存するデータコンテナーを設定します。キャッシュエントリーのエンコーディングを指定し、データをオフヒープメモリーに保存し、エビクションまたは有効期限ポリシーを使用してアクティブなエントリーのみをメモリーに維持します。

5.1. Configuring Encoding for Data Grid Caches

キャッシュとの間で書き込みおよび読み取りを行うときに Data Grid がデータをエンコードするために使用する MediaType を定義します。

ヒント

MediaType を定義するときに、Data Grid にデータの形式を指定します。

Data Grid Console、Hot Rod クライアント、および REST クライアントを同じように使用する場合は、application/x-protostream を指定して、DataGrid がデータを Protobuf 形式でエンコードするようにします。

手順

  • Data Grid キャッシュ設定で、キーと値の MediaType を指定します。

    • 宣言的に行う場合: encoding 属性を設定します。
    • プログラム的に行う場合: encoding() メソッドを使用します。

宣言的に行う場合の例

  • キーと値に同じエンコーディングを使用します。
<local-cache>
  <encoding media-type="application/x-protostream"/>
</local-cache>
  • キーと値に異なるエンコーディングを使用します。
<cache>
   <encoding>
      <key media-type="application/x-java-object"/>
      <value media-type="application/xml; charset=UTF-8"/>
   </encoding>
</cache>

プログラムで行う場合の例

  • キーと値に同じエンコーディングを使用します。
ConfigurationBuilder cfg = new ConfigurationBuilder();

cfg
  .encoding()
    .mediaType("application/x-protostream")
  .build());
  • キーと値に異なるエンコーディングを使用します。
ConfigurationBuilder cfg = new ConfigurationBuilder();

cfg.encoding().key().mediaType("text/plain");
cfg.encoding().value().mediaType("application/json");

5.1.1. Protobuf 形式でのデータの保存

Protobuf でエンコードされたエントリーとしてデータをキャッシュに保存すると、プラットフォームに依存しない設定が提供され、任意のクライアントからキャッシュ操作を実行できます。

注記

Data Grid Search のインデックスを設定すると、Data Grid は application/x-protostream メディアタイプでキーと値を自動的に保存します。

手順

  1. application/x-protostream を、以下のようにキーと値の MediaType として指定します。

    <distributed-cache name="mycache">
       <encoding>
          <key media-type="application/x-protostream"/>
          <value media-type="application/x-protostream"/>
       </encoding>
    </distributed-cache>
  2. クライアントを設定します。

Hot Rod クライアントは、エンティティーおよびクライアントマーシャラーを記述する Protocol Buffers スキーマ定義を登録する必要があります。

Data Grid は application/x-protostreamapplication/json の間で変換されるため、REST クライアントは次のヘッダーを送信するだけで JSON 形式のデータを読み書きできます。

  • Accept: application/json(読み取り操作の場合)
  • Content-Type: application/json(書き込み操作の場合)
Red Hat logoGithubRedditYoutubeTwitter

詳細情報

試用、購入および販売

コミュニティー

Red Hat ドキュメントについて

Red Hat をお使いのお客様が、信頼できるコンテンツが含まれている製品やサービスを活用することで、イノベーションを行い、目標を達成できるようにします。

多様性を受け入れるオープンソースの強化

Red Hat では、コード、ドキュメント、Web プロパティーにおける配慮に欠ける用語の置き換えに取り組んでいます。このような変更は、段階的に実施される予定です。詳細情報: Red Hat ブログ.

会社概要

Red Hat は、企業がコアとなるデータセンターからネットワークエッジに至るまで、各種プラットフォームや環境全体で作業を簡素化できるように、強化されたソリューションを提供しています。

© 2024 Red Hat, Inc.