インデックスからカラムを削除する
CQLカラムをインデックスから削除します。
手順
-
CQLカラムをインデックスから削除します。
- 標準カラムを削除します。
ALTER SEARCH INDEX SCHEMA ON wiki.solr DROP field intfield; ALTER TABLE wiki.solr DROP intfield int;
- フィールド名を引用符で囲み、アスタリスクなどの特殊文字を含むフィールドを削除します。次の例では、フィールド名を二重引用符で囲む短い形式のコマンドを示します。
ALTER SEARCH INDEX SCHEMA ON wiki.solr DROP field "fieldname*";
ALTER SEARCH INDEX SCHEMA ON wiki.solr DROP fields.field[@name='fieldname*'];
- フィールドにアスタリスクが含まれているため、長い形式のコマンドが使用されている動的フィールドを削除します。
ALTER SEARCH INDEX SCHEMA ON wiki.solr DROP fields.dynamicField[@name='dyna_*'];
- コピー元とコピー先のフィールドを指定する必要があるため、長い形式のコマンドが使用されているコピー・フィールドを削除します。
ALTER SEARCH INDEX SCHEMA ON wiki.solr DROP copyField[@source='name', @dest='allfields'];
- タプル・カラムをインデックスから削除します。ベース・フィールド名を削除する場合は、TupleFieldとすべての子フィールドを削除します。
ALTER SEARCH INDEX SCHEMA ON wiki.solr DROP field fieldname;
個々の子フィールドを削除するには、以下のように入力します。ALTER SEARCH INDEX SCHEMA ON wiki.solr DROP field "fieldname.field1";
- 標準カラムを削除します。
-
保留中の変更内容を確認します。
DESCRIBE PENDING SEARCH INDEX SCHEMA ON [keyspace_name.]table_name;
-
変更内容をアクティブ化します。
RELOAD SEARCH INDEX ON [keyspace_name.]table_name;
保留中のスキーマをアクティブなスキーマにコピーします。テーブルへのデータの挿入などの新しいトランザクションは、アクティブなスキーマを使用して処理されます。既存のデータにはスキーマの変更の影響はありません。 -
インデックスをリビルドします。
REBUILD SEARCH INDEX ON [keyspace_name.]table_name;
REBUILD SEARCH INDEXにより、既存のデータを使用してインデックスが再作成されます。フィールド型を変更した場合や、フィールドをインデックスに追加した場合など、データのインデックス作成方法を変更した場合にはリビルドする必要があります。