検索インデックスの再読み込み

検索インデックスを再読み込みして保留中の検索インデックスをアクティブ化するための手順。

検索インデックスのスキーマ構成を変更するか、カスタム・リソース・ファイル(同義語ファイルなど)をアップロードした後に、検索インデックスを再読み込みして保留中の検索インデックスをアクティブ化します。

検索インデックス構成の変更

検索インデックス構成を作成および変更するには、以下の基本的な手順を実行します。
  1. 検索インデックスを作成します。例を次に示します。
    CREATE SEARCH INDEX ON demo.health_data;
  2. 検索インデックスを変更します。例を次に示します。
    ALTER SEARCH INDEX CONFIG ON demo.health_data SET autoCommitTime = 30000;
  3. 必要に応じて、保留中の検索インデックスのXMLを表示します。例を次に示します。
    DESCRIBE PENDING SEARCH INDEX CONFIG on demo.health_data;
  4. 保留中の変更をアクティブ化します。例を次に示します。
    RELOAD SEARCH INDEX ON demo.health_data;

CQLコマンドRELOAD SEARCH INDEXを実行すると、検索インデックスがリビルドされます。

操作に対しては、必要に応じて、dsetool reload_coreを使用して単一ノードに検索インデックス(検索コアとも呼ばれる)を再読み込みできます。

注: 分散操作で1つ以上のノードがコアの再読み込みに失敗すると、失敗したノードのリストがエラー・メッセージに示されます。distributed=falseを使用して、失敗したノードでのみ再読み込みを再び実行します。

該当する場所だけインデックスを再作成する

reindex=trueおよびdeleteAll=falseを設定すると、データのインデックスが再作成され、既存のインデックスは維持されます。アップロード処理中であると、ユーザーは不正確な結果を検索することになります。該当する場所だけインデックスを再作成するには、以下の構文を使用します。
dsetool reload_core keyspace_name.table_name reindex=true deleteAll=false

全体のインデックスを再作成する

reindex=trueおよびdeleteAll=trueを設定すると、インデックスが削除され、データセットのインデックスが再作成されます。検索コアが再度読み込まれ、データのインデックスが再作成されるため、最初は検索を実行しても何も返されないか、一部のドキュメントしか返されません。
dsetool reload_core keyspace_name.table_name reindex=true deleteAll=true
インデックスの再作成中は、一連の基準に従い、処理能力が最も高いノードにサブクエリーがルーティングされます。「分散クエリーのシャード・ルーティング」を参照してください。