第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 キャッシュストア実装のデータを再作成する CLI migrate store
コマンドを提供します。
ストアマイグレーターは、以前のバージョンの Data Grid のキャッシュストアをソースとして取得し、キャッシュストアの実装をターゲットとして使用します。
ストアマイグレーターを実行すると、EmbeddedCacheManager
インターフェイスを使用して定義したキャッシュストアタイプでターゲットキャッシュが作成されます。ストアマイグレーターは、ソースストアからメモリーにエントリーをロードし、それらをターゲットキャッシュに配置します。
ストアマイグレーターを使用すると、あるタイプのキャッシュストアから別のストアにデータを移行することもできます。たとえば、JDBC 文字列ベースのキャッシュストアから、SIFS キャッシュストアに移行できます。
ストアマイグレーターは、セグメント化されたキャッシュストアから以下へはデータを移行できません。
- 非セグメント化されたキャッシュストア。
- セグメント数が異なるセグメント化されたキャッシュストア。