第3章 キャッシュストア間のデータの移行
Data Grid は、キャッシュストア間で永続化されたデータを移行するための Java ユーティリティーを提供します。
Data Grid をアップグレードする場合、メジャーバージョン間の機能相違点は、キャッシュストア間の後方互換性を許可しません。StoreMigrator
を使用してデータを変換し、ターゲットバージョンとの互換性を持つことができます。
たとえば、Data Grid 8.0 にアップグレードすると、デフォルトのマーシャラーが Protostream に変更になります。以前の Data Grid バージョンでは、キャッシュストアはバイナリー形式を使用し、マーシャリングする変更との互換性がありません。つまり、Data Grid 8.0 は、以前の Data Grid バージョンでキャッシュストアから読み込むことができません。
他の場合は、Data Grid のバージョンが、JDBC Mixed および Binary ストアなどのキャッシュストア実装を非推奨または削除します。このような場合は、StoreMigrator
を使用して異なるキャッシュストア実装に変換できます。
3.1. キャッシュストアマイグレーター
Data Grid は、最新の Data Grid キャッシュストア実装のデータを再作成する StoreMigrator.java
ユーティリティーを提供します。
StoreMigrator
は以前のバージョンの Data Grid のキャッシュストアを取得し、キャッシュストア実装をターゲットとして使用します。
StoreMigrator
を実行すると、EmbeddedCacheManager
インターフェイスを使用して定義したキャッシュストアタイプでターゲットキャッシュが作成されます。StoreMigrator
は、ソースストアからメモリーにエントリーを読み込み、それらをターゲットキャッシュに配置します。
StoreMigrator
を使用すると、あるタイプのキャッシュストアから別のストアにデータを移行することもできます。たとえば、JDBC String ベースのキャッシュストアから RocksDB キャッシュストアに移行することができます。
StoreMigrator
は、セグメント化されたキャッシュストアから以下にデータを移行できません。
- 非セグメント化されたキャッシュストア。
- セグメント数が異なるセグメント化されたキャッシュストア。