検索インデックスを作成した後、UpdateSearchIndex オペレーションを呼び出して、検索インデックスの構成を更新できます。このトピックでは、Node.js 用 Tablestore SDK を使用して検索インデックスの Time To Live (TTL) を更新する方法について説明します。
前提条件
OTSClient インスタンスが初期化されていること。詳細については、OTSClient インスタンスを初期化するを参照してください。
データテーブルに対して検索インデックスが作成されていること。
データテーブルの
allowUpdate
パラメーターがfalse
に設定されていること。詳細については、テーブルの構成を更新するを参照してください。
使用上の注意
検索インデックスの TTL は、検索インデックスが作成されたデータテーブルの TTL とは独立しており、データテーブルの TTL 以下である必要があります。検索インデックスと、検索インデックスが作成されたデータテーブルの TTL を短縮する場合、データテーブルの TTL を変更する前に、検索インデックスの TTL を変更する必要があります。
Tablestore は、毎日、検索インデックスから期限切れのデータを自動的に削除します。期限切れのデータが削除されるまでは、検索インデックスで期限切れのデータをクエリできます。Tablestore は、次のサイクルで期限切れのデータを自動的に削除します。
データテーブルと検索インデックスの TTL を変更した後、Tablestore は次のサイクルで、データテーブルと検索インデックスから履歴の期限切れデータを自動的に削除します。
パラメーター
パラメーター | 説明 |
tableName (必須) | データテーブルの名前。 |
indexName (必須) | 検索インデックスの名前。 |
timeToLive (必須) | 検索インデックスの TTL。 検索インデックスの TTL は、-1 または秒単位の正の int32 値である必要があります。値 -1 は、検索インデックス内のデータが期限切れにならないことを指定し、int32 の最大値は約 68 年に相当します。 |
例
次のサンプルコードは、検索インデックスの TTL を 7 日間に変更する方法の例を示しています。
let params = {
tableName: '<TABLE_NAME>',
indexName: '<SEARCH_INDEX_NAME>',
timeToLive: 604800,
}
client.updateSearchIndex(params, function (err, data) {
if (err) {
console.log('updateSearchIndex error:', err.toString());
} else {
console.log('updateSearchIndex success:', data);
}
});
FAQ
参照
検索インデックスの TTL については、検索インデックスの TTL を指定するを参照してください。
検索インデックスのフィールドやスキーマなど、検索インデックスに関する詳細情報をクエリできます。詳細については、検索インデックスの説明をクエリするを参照してください。
検索インデックスのスキーマを動的に変更して、検索インデックスにインデックス列を追加、更新、または削除したり、検索インデックスのルーティングキーと事前ソート方法を変更したりできます。詳細については、検索インデックスのスキーマを動的に変更するを参照してください。