第6章 Protobuf メタデータを使用したキャッシュのクエリー
Data Grid は、Protocol Buffer (Protobuf) を使用してキャッシュ内のデータを構造化し、クエリーを実行できるようにすることをサポートしています。
前提条件
- Data Grid CLI を起動している。
- 実行中の Data Grid クラスターに接続している。
6.1. メディアタイプの設定
さまざまなメディアタイプのキャッシュエントリーをエンコードして、要件に最適な形式でデータを保存します。
たとえば、次の手順は、application/x-protostream
メディアタイプを設定する方法を示しています。
手順
qcache
という名前の分散キャッシュを追加し、メディアタイプを設定する Data Grid 設定ファイルを作成します。次に例を示します。<infinispan> <cache-container> <distributed-cache name="qcache"> <encoding> <key media-type="application/x-protostream"/> <value media-type="application/x-protostream"/> </encoding> </distributed-cache> </cache-container> </infinispan>
--file=
オプションを使用して、pcache.xml
からqcache
を作成します。[//containers/default]> create cache --file=pcache.xml pcache
pcache
を確認します。[//containers/default]> ls caches pcache ___protobuf_metadata [//containers/default]> describe caches/pcache { "distributed-cache" : { "mode" : "SYNC", "encoding" : { "key" : { "media-type" : "application/x-protostream" }, "value" : { "media-type" : "application/x-protostream" } }, "transaction" : { "mode" : "NONE" } } }
pcache
にエントリーを追加し、エンコードを確認します。[//containers/default]> put --cache=pcache good morning [//containers/default]> cd caches/pcache [//containers/default/caches/pcache]> get good { "_type" : "string", "_value" : "morning" }