當需要清理分析儲存中的歷史資料或者希望延長資料儲存時間時,您可以使用UpdateTimeseriesAnalyticalStore介面更新時序分析儲存的資料生命週期TTL配置。更新分析儲存的TTL後,Table Store會自動非同步清理分析儲存中超過TTL的資料。
前提條件
注意事項
分析儲存的同步選項不支援更新。
分析儲存的生命週期最短為30天(即2592000秒)。
建立分析儲存時,如果設定的TTL不為-1,則Table Store會自動非同步刪除超過TTL的資料。您也可以通過UpdateTimeseriesAnalyticalStore介面修改分析儲存的TTL。
超過TTL的到期資料為無效資料,即使系統還未刪除資料,使用者已無法讀取對應資料。
當調小TTL時,資料表中可能會有資料到期,系統會非同步刪除對應到期資料。
當調大TTL時,如果系統還未刪除在舊的TTL之外以前版本的資料,且對應版本資料在新設的TTL中,則對應版本的資料可以重新讀取。
參數說明
UpdateTimeseriesAnalyticalStoreRequest 包含以下參數。
名稱 | 類型 | 說明 |
timeseriesTableName(必選) |
| 時序表名稱。 |
analyticStore(必選) |
| 待更新的分析儲存配置。 |
分析儲存配置
analyticStore 的類型為 TimeseriesAnalyticalStore,包含以下參數。
名稱 | 類型 | 說明 |
analyticalStoreName(必選) |
| 分析儲存名稱。 |
timeToLive(必選) |
| 分析儲存的資料生命週期,單位為秒。取值為 |
樣本
以下樣本用於更新test_timeseries_table時序表下名為test_analytical_store的分析儲存配置資訊,將資料生命週期更新為30天(即2592000秒)。
func UpdateTimeseriesAnalyticalStore(client *tablestore.TimeseriesClient) {
analyticalStore := tablestore.NewTimeseriesAnalyticalStore("test_analytical_store")
analyticalStore.SetTimeToLive(2592000)
req := tablestore.NewUpdateTimeseriesAnalyticalStoreRequest("test_timeseries_table", analyticalStore)
_, err := client.UpdateTimeseriesAnalyticalStore(req)
if err != nil {
log.Fatal(err)
}
}