ユースケース3: 複数リージョン表の縮小

組織は、3つのオンプレミスKVStoreをフランクフルト、ロンドンおよびダブリンにそれぞれ1つずつデプロイします。要件に従って、3つすべてのリージョンにいくつかのMR表を作成しました。users表は、この組織が作成および保守する多くのMR表の1つです。ビジネス要件の変更に応じて、ダブリン・リージョンからusers表を削除することに決めました。次のいくつかのトピックでは、MR表を縮小する方法、つまり特定のリージョンからMR表を削除する方法について学習します。

前にusers MR表を作成していない場合は、ユースケース1: 複数リージョン環境の設定で説明したステップを実行してください。

users MR表にダブリン・リージョンを追加していない場合は、ユースケース2: 複数リージョン表の拡張で説明したステップを実行してください。

リージョン削除のためのMR表の変更

複数リージョン表を縮小し、複数リージョン表に含まれるリージョンを減らす方法について学習します。

ステップ:

複数リージョンNoSQL Database設定で特定のリージョンからMR表を削除するには、参加している他のすべてのリージョンから次のステップを実行する必要があります。

  1. sqlプロンプトから次のコマンドを実行します。
    ALTER TABLE <table name> DROP REGIONS <comma separated list of regions>
  2. オプションで、kvプロンプトから次のコマンドを実行して、リージョンが正常に削除されていることを確認できます。
    SHOW TABLE -NAME <table name>

注意:

リージョンBで作成したMR表からリージョンAを削除するとします。結果:
  • リージョンBは、リージョンAからのこのMR表に対する新しい書込みを表示できません。
  • リージョンAは、リージョンBからのこのMR表に対する書込みを引き続き表示します。

リージョンAのMR表を他のリージョンから分離する場合は、リージョンAで作成したMR表からそれらのリージョンを削除する必要があります。これは単なる推奨であり、MR表を縮小する場合の必須のステップではありません。

次に例を示します。

他の2つのリージョン(フランクフルトおよびロンドン)のusers MR表からダブリン・リージョンを削除します。

# Connect to the KVStore deployed in the 'fra' region from the SQL shell
[~]$java -jar $KVHOME/lib/sql.jar \
-helper-hosts host1:5000,host2:5000,host3:5000 \
-store mrtstore

–- drop the 'dub' region from the 'users' MR table
sql-> ALTER TABLE users DROP REGIONS dub;
Statement completed successfully
# Connect to the KVStore deployed in the 'lnd' region from the SQL shell
[~]$java -jar $KVHOME/lib/sql.jar \
-helper-hosts host4:5000,host5:5000,host6:5000 \
-store mrtstore

–- drop the 'dub' region from the 'users' MR table
sql-> ALTER TABLE users DROP REGIONS dub;
Statement completed successfully