全部产品
Search
文档中心

表格存储:更新多元索引配置

更新时间:Apr 29, 2026

调用UpdateSearchIndex接口,通过Node.js SDK更新多元索引的数据生命周期(TTL)。

前提条件

  • 已初始化OTSClient实例。具体操作,请参见初始化Tablestore Client

  • 数据表上已存在多元索引。

  • 数据表的allowUpdate参数已设置为false。具体操作,请参见更新表配置

注意事项

  • 多元索引的TTL和数据表的TTL是独立的,多元索引的TTL值必须小于或等于数据表的TTL值。当需要同时调小多元索引TTL和数据表TTL时,请先调整多元索引TTL,再调整数据表TTL。

  • 多元索引每天会自动清理已过期的数据,过期数据的清理粒度为“天”,因此您仍然可以查询到某一时刻已过期但尚未及时清理的数据,多元索引会在下一次清理过期数据时自动清理这些过期数据。

  • 数据表和多元索引的TTL更新后,系统会在下一次清理过期数据时自动清理数据表和多元索引中的过期存量数据。

参数

参数

说明

tableName(必选

数据表名称。

indexName(必选

多元索引名称。

timeToLive(必选

多元索引的数据生命周期,单位为秒。设置为-1表示永久存储;设置为正整数(int32)表示固定过期时间,最大值约为68年。

示例

以下示例将多元索引的数据生命周期设置为7天(604800秒)。

let params = {
    tableName: '<TABLE_NAME>',
    indexName: '<SEARCH_INDEX_NAME>',
    timeToLive: 604800,  // 7天,换算方式:7 × 24 × 60 × 60
}
client.updateSearchIndex(params, function (err, data) {
    if (err) {
        console.log('updateSearchIndex error:', err.toString());
    } else {
        console.log('updateSearchIndex success:', data);
    }
});

timeToLive的值为秒数。如需设置其他时长,将天数乘以86400即可,例如30天对应2592000秒。

常见问题

修改数据表生命周期时报错[table ttl] must be bigger than or equal search index ttl

相关文档