第4章 キャッシュエンコーディングの設定


Data Grid は、キャッシュとの間で読み取りおよび書き込みを行うときにオンザフライで変換できる特定の形式でデータを保存します。キーと値の MediaType を指定して、ストレージ形式を設定します。これはデータの形式を記述します。

Data Grid は、異なるストレージ形式間でデータを変換して、異なるクライアントプロトコル間の相互運用性を処理したり、カスタムコードを使用してデータを処理したりすることもできます。

4.1. キャッシュエンコーディングとクライアントの相互運用性

データに使用するエンコーディングは、クライアントの相互運用性と Data Grid Search などの機能に影響します。

表4.1 Protobuf 形式
Protobuf 形式でデータを保存して、以下と使用します。

Data Grid コンソール

はい

REST クライアント

はい

Java Hot Rod クライアント

はい

Java 以外の Hot Rod クライアント

はい

Data Grid Search

はい

カスタム Java オブジェクト

はい

表4.2 テキストベースの形式
テキストベースの形式でデータを保存して、以下と使用します。

Data Grid コンソール

はい

REST クライアント

はい

Java Hot Rod クライアント

はい

Java 以外の Hot Rod クライアント

はい

Data Grid Search

いいえ

カスタム Java オブジェクト

いいえ

表4.3 マーシャリングされた Java オブジェクト
マーシャリングされた Java オブジェクトは以下と互換性があります。

Data Grid コンソール

いいえ

REST クライアント

はい

Java Hot Rod クライアント

はい

Java 以外の Hot Rod クライアント

いいえ

Data Grid Search

いいえ

表4.4 アンマーシャリングされた Java オブジェクト
POJO (Plain Old Java Object) は推奨されませんが、以下と互換性があります。

Data Grid コンソール

いいえ

REST クライアント

はい

Java Hot Rod クライアント

はい

Java 以外の Hot Rod クライアント

いいえ

Data Grid Search

必要。ただし、POJO で検索し、クラスを Data Grid Server で使用できるようにするには、エンティティーにアノテーションを付ける必要があります。

カスタム Java オブジェクト

はい

4.1.1. Memcached クライアントのキャッシュエンコーディングの設定

Data Grid Server は、デフォルトで Memcached エンドポイントを無効にします。Memcached エンドポイントを有効にする場合は、Memcached クライアントに適したエンコーディングでキャッシュを設定する必要があります。

重要

Memcached エンドポイントは認証をサポートしません。セキュリティー上の理由から、Memcached クライアント専用のキャッシュを使用する必要があります。Memcached クライアントと同じデータセットで対話するために REST または Hot Rod クライアントを使用しないでください。

手順

  1. キーに text/plain を使用するようにキャッシュエンコーディングを設定します。
  2. application/x-java- object 以外の適切な MediaType を値に指定します。

    Memcached クライアントは、鍵を text/plain としてのみ処理できます。値は、Data Grid が byte[] として保存する MediaType にすることができます。これは Protobuf、マーシャリングされた Java オブジェクト、またはテキストベースの形式になります。

    <encoding>
      <key media-type="text/plain"/>
      <value media-type="application/x-protostream"/>
    </encoding>
ヒント

Memcached エンドポイントには、値のエンコーディングを変換する client-encoding 属性が含まれます。

たとえば、前述の設定の例にあるように、Protobuf としてエンコードされた値を保存します。Memcached クライアントで値を JSON として読み書きできるようにする場合は、次の設定を使用できます。

<memcached-connector cache="memcachedCache" client-encoding="application/json">
Red Hat logoGithubRedditYoutubeTwitter

詳細情報

試用、購入および販売

コミュニティー

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

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

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

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

会社概要

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

© 2024 Red Hat, Inc.