當需要清理分析儲存中的歷史資料或者希望延長資料儲存時間時,您可以使用UpdateTimeseriesAnalyticalStore介面更新時序分析儲存的資料生命週期TTL配置。更新分析儲存的TTL後,Table Store會自動非同步清理分析儲存中超過TTL的資料。
前提條件
注意事項
分析儲存的同步選項不支援更新。
分析儲存的生命週期最短為30天(即2592000秒)。
建立分析儲存時,如果設定的TTL不為-1,則Table Store會自動非同步刪除超過TTL的資料。您也可以通過UpdateTimeseriesAnalyticalStore介面修改分析儲存的TTL。
超過TTL的到期資料為無效資料,即使系統還未刪除資料,使用者已無法讀取對應資料。
當調小TTL時,資料表中可能會有資料到期,系統會非同步刪除對應到期資料。
當調大TTL時,如果系統還未刪除在舊的TTL之外以前版本的資料,且對應版本資料在新設的TTL中,則對應版本的資料可以重新讀取。
參數
參數 | 說明 | |
timeseriesTableName | 時序表名。 | |
analyticalStore | analyticalStoreName | 分析儲存名。 |
timeToLive | 分析儲存資料存活時間,單位為秒。取值範圍為-1(資料永不到期)或者大於等於2592000秒(即30天)的int32正整數。 如果希望分析儲存中的資料永不到期,可以設定為-1。 | |
樣本
以下樣本用於更新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)
}
}