Tablestore SDK for Go を使用して分析ストアの TTL を更新し、データ保持期間を延長したり、履歴データを削除したりします。
前提条件
分析ストアが作成されていること。詳細については、「分析ストアの作成」をご参照ください。
クライアントが初期化されていること。詳細については、「Tablestore クライアントの初期化」をご参照ください。
注意事項
分析ストアの同期オプションは更新できません。
分析ストアの最小 TTL は 30 日 (2,592,000 秒) です。
分析ストアの作成時に TTL を -1 に設定しなかった場合、Tablestore は保持期間が TTL 値を超えるデータを非同期で自動的に削除します。UpdateTimeseriesAnalyticalStore API を呼び出して、分析ストアの TTL を変更することもできます。
保持期間が TTL 値を超えたデータは無効なデータです。システムがまだ無効なデータを削除していない場合でも、ユーザーはそのデータを読み取ることができなくなります。
TTL 値を短縮すると、分析ストア内のデータが有効期限切れになる可能性があり、システムは該当するデータを非同期で削除します。
TTL 値を延長した場合、システムが、保持期間が古い TTL 値を超えたデータをまだ削除しておらず、かつそのデータの保持期間が新しい TTL 値以下であれば、そのデータは引き続き読み取り可能です。
パラメーター
UpdateTimeseriesAnalyticalStoreRequest には、次のパラメーターが含まれています。
名前 | タイプ | 説明 |
timeseriesTableName (必須) |
| 時系列テーブルの名前。 |
analyticStore (必須) |
| 更新する分析ストアの設定。 |
分析ストアの設定
analyticStore は TimeseriesAnalyticalStore タイプであり、次のパラメーターが含まれています。
名前 | タイプ | 説明 |
analyticalStoreName (必須) |
| 分析ストアの名前。 |
timeToLive (必須) |
| 分析ストアの TTL (秒単位)。値は |
例
次のサンプルコードは、test_timeseries_table 時系列テーブル用に作成された test_analytical_store という名前の分析ストアのデータの TTL を 30 日 (2,592,000 秒) に更新する方法の例を示しています。
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)
}
}