1.12. Data Grid 8.4.0 の新機能


Data Grid 8.4 では、ユーザービリティーとパフォーマンスが向上し、セキュリティーが強化されています。新機能を確認してください。

Jakarta EE API

Data Grid 8.4 は、Jakarta EE 9+ ベースの jar を配布します。アプリケーションで Jakarta 固有の依存関係が必要な場合は、アーティファクトに -jakarta を追加します。次に例を示します。

pom.xml

<dependency>
   <groupId>org.infinispan</groupId>
   <artifactId>infinispan-client-hotrod-jakarta</artifactId>
</dependency>

Jakarta EE の詳細は、About Jakarta EE を参照してください。

MemcachedDecoder のパフォーマンスの向上

MemcachedDecoder は Netty スレッドをブロックしなくなりました。スレッドプールが使い果たされたときのデッドロックを防ぎます。

1.12.1. Hot Rod クライアント

Hot Rod は、カスタムバイナリー TCP プロトコルで、異なるプログラミング言語で、クライアントアプリケーションに高パフォーマンスでデータアクセスできるようにします。

application/x-protostream を使用したクエリーのサポート

Data Grid 8.4 の Hot Rod Node.js クライアントは、application/x-protostream メディアタイプを使用したクエリーのサポートを追加します。Hot Rod JS クライアントを設定して、キャッシュ内の値に application/x-protostream メディアタイプを指定し、それらに対してクエリーを実行できるようにします。

JS クライアントでサポートされているすべての Hot Rod 操作に application/x-protostream メディアタイプを使用できるようになりました。詳細は、Hot Rod Node.JS クライアントガイド を参照してください。

クラスターごとのクライアントインテリジェンス設定

複数の Data Grid クラスターを使用するように Hot Rod クライアントを設定すると、クラスターごとに異なるクライアントインテリジェンスを使用できます。

詳細は、Hot Rod Java クライアントガイド を参照してください。

1.12.2. Data Grid Server

Data Grid Server は専用の Java 仮想マシン (JVM) で実行され、リモートキャッシュ用にスケーラブルでフォールトトレラントなクラスターを提供します。

マイクロメーターのメトリクス

Data Grid 8.4 は、メトリクスを収集するために Micrometer ライブラリーを使用します。Data Grid Server は、metrics エンドポイント経由で統計を公開します。Prometheus などの任意の監視ツールを使用して統計を収集できます。Micrometer メトリクスは、MicroProfile メトリクスの SmallRye Metrics 実装を置き換えます。

状態遷移操作中のメトリックの改善

クラスタートポロジーが変更されると、Data Grid はセグメント数とトランザクションセグメント数のメトリックを公開します。Data Grid は、REST API および JMX API と互換性のある時間メトリクスを生成します。

RESP プロトコルエンドポイント

Data Grid サーバーには、RESP3 プロトコルを実装する実験的なモジュールが含まれています。RESP エンドポイントを使用すると、Redis クライアントは、Data Grid でサポートされている 1 つ以上の RESP サーバーに接続し、キャッシュ操作を実行できます。

Data Grid 8.4 は、キャッシュ操作に通常使用される Redis コマンドのサブセットをサポートします。サポートされているコマンドのリストについては、Data Grid での RESP プロトコルエンドポイントの使用 に関するドキュメントを参照してください。Data Grid チームは、後続のリリースで追加のコマンドを実装する予定です。

重要

RESP プロトコルエンドポイントは、テクノロジープレビュー機能として利用できます。

動的なロールベースのアクセス制御 (RBAC)

ロールベースアクセス制御 (RBAC) 機能では、さまざまなパーミッションレベルを使用して、Data Grid とのユーザーの対話を制限します。プログラムによって、または Data Grid CLI および Data Grid Console を使用して、ユーザーのロールを変更し、異なる権限を割り当てることができます。

詳細は ロールベースのアクセス制御によるセキュリティー承認 を参照してください。

マスクされた外部認証情報のサポート

Data Grid Server では、マスクされたパスワードと外部コマンドを使用して、パスワードを Data Grid Server 設定に追加できます。

JVM ヒープダンプを生成するオプション

JVM ヒープ上にあるすべてのライブオブジェクトのダンプを生成できます。Data Grid は、サーバーのデータディレクトリーに HPROF 形式のヒープダンプファイルを生成し、JSON 形式のファイルのフルパスで応答します。

1.12.3. Data Grid コンソール

Data Grid Console は、リモートキャッシュを監視および管理するためのグラフィカルユーザーインターフェイスであり、8.4 では以下の機能と拡張機能が含まれています。

キャッシュ作成ウィザード

キャッシュ設定 タブを開き、Data Grid Console ウィザードに従って、キャッシュの作成と設定のプロセスをガイドします。ウィザードには、キャッシュを作成し、Data Grid の機能と機能 (インデックス作成、セキュリティー、永続性など) を有効にするのに役立つ手順とツールヒントが含まれています。すべての手順を完了すると、設定を JSON、YAML、または XML 形式でダウンロードして、ファイルを再利用できます。

キャッシュ分散統計

Data Grid コンソールでは、Cache details ページに Metrics タブが導入されています。ノードごとのエントリー数やメモリー使用量など、ノードのデータを表示およびフィルタリングできます。

1.12.4. クエリー API

Data Grid を使用すると、キャッシュをインデックス化し、Ickle クエリー言語で関連付けまたはフルテキストクエリーを実行できます。

Hibernate ORM 6 のサポート

Data Grid の Hibernate ORM 2 次キャッシュ (2LC) 実装は、Hibernate 6 で動作するようにアップグレードされました。

次の依存関係を追加します。

pom.xml

<dependency>
  <groupId>org.infinispan</groupId>
  <artifactId>infinispan-hibernate-cache-v60</artifactId>
  <version>${version.infinispan}</version>
</dependency>

注記

Jakarta EE 移行のため、Data Grid 8.4 は Hibernate 5 をサポートしていません。

1.12.5. Data Grid のネイティブインデックス化のアノテーション

このリリースでは、新しい索引付けアノテーション @Basic@Keyword@Text、および Embedded が導入されています。これらの新しいアノテーションは Hibernate Search アノテーションに取って代わりました。つまり、Java クラスにリモートキャッシュ用の @ProtoDoc アノテーションを付ける必要がなくなりました。

新しいネイティブインデックスアノテーションを使用すると、エンティティーに直接アノテーションを付けることができます。さらに、これらのアノテーションは、埋め込みクエリーとリモートクエリーの両方で同じ方法で使用できます。

新しい注釈のそれぞれは、エンティティーがどのようにインデックス付けされるかをさらに説明する一連の属性をサポートしています。

Data Grid のインデックス化のアノテーション

@Basic
このアノテーションは、テキストの変換や処理を必要としない数値と短い Strings に使用します。sortablesearchable、および projectable 属性をサポートします。
@Keyword
このアノテーションを Strings に使用します。searchableprojectablesortable、および normalizer の属性をサポートしています。
@Text
サイズの大きい String にはこのアノテーションを使用します。searchableprojectable、および Analyzer 属性をサポートします。
@Embedded
このアノテーションを埋め込みインデックスに使用して、エンティティー構造を指定します。NESTED 構造は元のオブジェクト関係構造を保持しますが、FLATTENED 構造 は親エンティティーのリーフフィールドを複数値にします。

Poem.java

@Indexed
public class Poem {

private Author author;
private String description;
private Integer year;

@Embedded(includeDepth = 2, structure = Structure.NESTED)
public Author getAuthor() {
return author;
}

@Text(projectable = true, analyzer = "whitespace", termVector = TermVector.WITH_OFFSETS)
public String getDescription() {
return description;
}

@Basic(projectable = true, sortable = true, indexNullAs = "1800")
public Integer getYear() {
return year;
}
}

インデックス起動モード

インデックスがキャッシュ内のデータと一致していることを確認する操作を自動的に実行するように Data Grid を設定できます。

起動モード

none
デフォルトでは、インデックス作成操作は行われません。
purge
キャッシュの開始時にインデックスをクリアします。この操作中はキャッシュを使用できません。
reindex
キャッシュの開始時にインデックスを再構築します。
auto
キャッシュを自動的にクリアまたは再インデックス化します。データが揮発性で、インデックスが永続的である場合、キャッシュは開始時にクリアされます。データが永続的で、インデックスが揮発性の場合、キャッシュは開始時に再インデックス化されます。

Purge モードの設定

<distributed-cache>
  <indexing storage="filesystem" startup-mode="purge">
    <!-- Additional indexing configuration goes here. -->
  </indexing>
</distributed-cache>

動的インデックススキーマの更新

変更が以前のスキーマと互換性がある限り、インデックスの再作成やダウンタイムなしでスキーマを更新できます。Data Grid は既存のインデックスを保持し、スキーマのみを更新します。

次のいずれかの方法でスキーマを更新できます。

  • プログラムで updateIndexSchema() メソッドを呼び出して、Hot Rod Java クライアントからスキーマを更新します。

    remoteCacheManager.administration().updateIndexSchema("MyCache");
    ヒント

    リモートキャッシュの場合、update-schema コマンドを使用して Data Grid コンソールからスキーマを更新することもできます。

  • POST リクエストでスキーマを更新します。
POST .../v2/caches/{myCache}/search/indexes?action=updateSchema

クエリーによって返される結果の制限

Data Grid は、クエリーによって返される結果の数を制限する default-max-results プロパティーを追加します。default-max-results プロパティーのデフォルト値は 100 です。クエリーによって返される結果の数を制限すると、明示的な制限が設定されていないクエリーのパフォーマンスが大幅に向上します。

1.12.6. Data Grid コマンドラインインターフェイス (CLI)

Data Grid CLI を使用すると、リモートキャッシュの管理操作をスクリプト化および自動化できます。

セキュリティー認証の改善

Data Grid CLI で、クライアント証明書認証を使用して Data Grid サーバーに接続できます。

すべてのキャッシュへのコマンド適用

Data Grid CLI では、--all-caches または -a オプションを使用して、コマンドをすべてのキャッシュに適用できます。たとえば、次のコマンドを実行すると、Data Grid はすべてのキャッシュのバックアップロケーションのステータスを表示します。

[//containers/default]> site status --all-caches --site=NYC

詳細は 、Data Grid コマンドラインインターフェイスの使用 を参照してください。

Red Hat logoGithubredditYoutubeTwitter

詳細情報

試用、購入および販売

コミュニティー

会社概要

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

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

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

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

Legal Notice

Theme

© 2026 Red Hat
トップに戻る