操作シナリオ
DTSのデータ移行リンクでは、ソースデータベースのマルチKeyコマンドに対してプレフィックスフィルタリングルールを設定でき、ユーザーがデータベース内のキー値を管理しやすくなります。
Keyプレフィックスフィルタリングルール
単一または複数のkeyプレフィックスマッチングルールの設定をサポートします。複数のプレフィックスはEnterキーで区切ってください。
移行ルールとフィルタリングルールを併用する場合、フィルタリングルールの優先順位は移行ルールよりも高くなります。
旧バージョンはリテラルプレフィックスフィルタリングのみをサポートします(例えば、\\xae\\xac)。新バージョンではhex: プレフィックスが追加され、後続の文字列は16進数として解析されます。これら2種類のプレフィックスのkeyを同時に移行する必要がある場合は、コンソールで以下の形式で入力してください:
\\xae\\xac:移行リテラルを表します。
hex:aeac:16進数エンコードデータの移行を表します(つまり"\\xae\\xac")。
Keyプレフィックスフィルタリングルールの例
1. MSET/DEL/UNLINKコマンドは、完全一致マッチルールを採用します。
移行ルール:ソース側の複数のkeyコマンドが1つのkeyにマッチした場合、そのkeyのみがターゲット側に移行され、他のkeyは移行されません。
フィルタリングルール:ソース側の複数のkeyコマンドが1つのkeyにマッチした場合、そのkeyのみがフィルタリングされ、ターゲット側に移行されません。他のkeyは移行されます。
|
キー値プレフィックスの移行 | MSET dtsnew "111" abcd "222" | dts | MSET dtsnew "111" |
key値プレフィックスのフィルタリング | MSET redisnew "111" efgh "222" | redis | MSET efgh "222" |
2. MSET/DEL/UNLINK以外のその他のコマンド。
移行ルール:ソース側の複数のkeyコマンドが1つの移行プレフィックスにマッチした場合、そのコマンドはすべてターゲット側に移行されます。
フィルタリングルール:ソース側の複数のkeyコマンドのすべてのkeyがマッチした場合のみ、そのコマンドはフィルタリングされます。1つのkeyのみがマッチした場合、そのコマンドはフィルタリングされず、ターゲット側に移行されます。
|
キー値プレフィックスの移行 | SUNION dtsnew abcd | dts | SUNION dtsnew abcd |
key値プレフィックスのフィルタリング | SUNION redisnew efgh | redis | SUNION redisnew efgh |
key値プレフィックスのフィルタリング | SUNION redisnew efgh | redis efgh | 同期されません。 |
操作手順
マイグレーションタスクを設定し、移行オプションの設定と移行対象の選択ページで、keyフィルタリングを有効にするにチェックを入れ、フィルタリングルールを設定してから、後続の設定フローに進みます。