Use o Tablestore SDK for Go para atualizar o TTL de um analytical store e estender a retenção de dados ou excluir dados históricos.
Pré-requisitos
Um analytical store foi criado. Para mais informações, consulte Crie an analytical store.
Um cliente foi inicializado. Para mais informações, consulte Initialize a Tablestore client.
Observações de uso
A opção de sincronização de um analytical store não pode ser atualizada.
O TTL mínimo de um analytical store é de 30 dias (2.592.000 segundos).
-
Ao criar um analytical store, se o TTL não for definido como -1, o Tablestore excluirá automaticamente, de forma assíncrona, os dados cujo período de retenção ultrapassar o valor do TTL. Também é possível modifique o TTL do analytical store chamando a operação UpdateTimeseriesAnalyticalStore.
Dados cujo período de retenção ultrapassa o valor do TTL são considerados inválidos. Mesmo que o sistema ainda não os tenha excluído, esses dados não podem mais ser lidos pelos usuários.
Ao reduzir o valor do TTL, os dados no analytical store podem expirar, e o sistema excluirá os dados expirados correspondentes de forma assíncrona.
Ao aumentar o valor do TTL, se o sistema ainda não tiver excluído os dados cujo período de retenção ultrapassou o TTL anterior e esse período for menor ou igual ao novo valor do TTL, os dados ainda poderão ser lidos.
Parâmetros
UpdateTimeseriesAnalyticalStoreRequest contém os seguintes parâmetros.
|
Nome |
Tipo |
Descrição |
|
timeseriesTableName (obrigatório) |
|
O nome da tabela de série temporal. |
|
analyticStore (obrigatório) |
|
A configuração do analytical store a ser atualizada. |
Configuração do analytical store
analyticStore é do tipo TimeseriesAnalyticalStore e contém os seguintes parâmetros.
|
Nome |
Tipo |
Descrição |
|
analyticalStoreName (obrigatório) |
|
O nome do analytical store. |
|
timeToLive (obrigatório) |
|
O TTL do analytical store em segundos. Defina o valor como |
Exemplo
O código de exemplo a seguir demonstra como atualize as informações de configuração e o TTL dos dados de um analytical store chamado test_analytical_store, criado para a tabela de série temporal test_timeseries_table, para 30 dias (2.592.000 segundos):
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)
}
}