Todos os produtos
Search
Central de documentação

Tablestore:Criar uma tabela de séries temporais

Última atualização: Aug 03, 2026

Crie uma tabela de séries temporais e configure o tempo de vida (TTL) de dados e metadados, identificadores de séries temporais, chaves primárias de campos de dados, analytical stores e índices Lastpoint com o Tablestore SDK for Java.

Pré-requisitos

Instale o Tablestore SDK for Java e inicialize um cliente de séries temporais.

Descrição

Chame createTimeseriesTable para criar uma tabela de séries temporais que armazena dados e metadados. O nome da tabela de séries temporais deve ser único entre as tabelas de dados e as tabelas de séries temporais na instância.

public CreateTimeseriesTableResponse createTimeseriesTable(CreateTimeseriesTableRequest request)

O exemplo a seguir cria a tabela example_timeseries_table. Por padrão, o TTL dos dados de séries temporais é -1, o que significa que os dados não expiram e nenhum analytical store é criado.

TimeseriesClient timeseriesClient = client.asTimeseriesClient();

String tableName = "example_timeseries_table";
TimeseriesTableMeta tableMeta = new TimeseriesTableMeta(tableName);
CreateTimeseriesTableRequest request = new CreateTimeseriesTableRequest(tableMeta);

timeseriesClient.createTimeseriesTable(request);

Parâmetros

CreateTimeseriesTableRequest contém os seguintes parâmetros.

Nome

Tipo

Descrição

timeseriesTableMeta (obrigatório)

TimeseriesTableMeta

Esquema da tabela de séries temporais.

analyticalStores (opcional)

List<TimeseriesAnalyticalStore>

Analytical stores personalizados. Valor padrão: lista vazia. Você pode criar no máximo um analytical store ao criar uma tabela de séries temporais.

enableAnalyticalStore (opcional)

boolean

Define se o analytical store padrão deve ser criado. Valor padrão: false. Se analyticalStores não estiver configurado e este parâmetro estiver definido como true, o sistema cria um analytical store chamado default_analytical_store. Seu TTL padrão é -1 e seu modo de sincronização é SYNC_TYPE_FULL. Caso analyticalStores esteja configurado, o sistema cria um analytical store personalizado.

lastpointIndexes (opcional)

List<CreateTimeseriesTableRequest.LastpointIndex>

Índices Lastpoint a serem criados junto com a tabela de séries temporais. Valor padrão: lista vazia. Você pode criar no máximo um índice Lastpoint durante a criação da tabela. Uma tabela de séries temporais pode ter até 10 índices Lastpoint e analytical stores no total.

Esquema da tabela de séries temporais

timeseriesTableMeta é do tipo TimeseriesTableMeta e contém os seguintes parâmetros.

Nome

Tipo

Descrição

timeseriesTableName (obrigatório)

String

Nome da tabela de séries temporais. Deve ser único entre as tabelas de dados e as tabelas de séries temporais na instância.

timeseriesTableOptions (opcional)

TimeseriesTableOptions

Configurações de TTL dos dados de séries temporais. O sistema usa as configurações padrão caso você não especifique este parâmetro.

timeseriesMetaOptions (opcional)

TimeseriesMetaOptions

Configurações de metadados das séries temporais, incluindo TTL dos metadados e atualização de atributos.

timeseriesKeys (opcional)

List<String>

Campos que formam um identificador personalizado de série temporal. Você pode especificar até seis campos. Por padrão, um identificador de série temporal consiste no nome da métrica, na source de dados e nas tags. Para mais informações, consulte Customize time series identifiers and data field primary keys.

fieldPrimaryKeys (opcional)

List<PrimaryKeySchema>

Campos de dados a serem usados como chaves primárias. Você pode definir até quatro campos para armazenar várias linhas com o mesmo identificador de série temporal e timestamp. Para mais informações, consulte Customize time series identifiers and data field primary keys.

Retenção de dados de séries temporais

timeseriesTableMeta.timeseriesTableOptions é do tipo TimeseriesTableOptions e contém o seguinte parâmetro.

Nome

Tipo

Descrição

timeToLive (opcional)

int

TTL dos dados de séries temporais em segundos. Valor padrão: -1. Defina o valor como -1 ou um número inteiro maior ou igual a 86.400. O valor -1 indica que os dados não expiram. O Tablestore exclui automaticamente os dados expirados. Após criar a tabela, você pode update the time series table configurations para alterar o TTL.

Metadados de séries temporais

timeseriesTableMeta.timeseriesMetaOptions é do tipo TimeseriesMetaOptions e contém os seguintes parâmetros.

Nome

Tipo

Descrição

metaTimeToLive (opcional)

int

TTL dos metadados de séries temporais em segundos. Defina o valor como -1 ou um número inteiro maior ou igual a 604.800. O valor -1 indica que os metadados não expiram. Este valor não pode ser menor que timeToLive. Se timeToLive for -1, este parâmetro também deverá ser -1. Ao configurar um TTL finito, defina allowUpdateAttributes como false.

allowUpdateAttributes (opcional)

boolean

Define se as colunas de atributos de metadados podem ser atualizadas. Quando metaTimeToLive for finito, defina este parâmetro como false.

Chaves primárias de campos de dados

Cada elemento em timeseriesTableMeta.fieldPrimaryKeys[] é do tipo PrimaryKeySchema e contém os seguintes parâmetros.

Nome

Tipo

Descrição

name (obrigatório)

String

Nome do campo de dados a ser usado como chave primária.

type (obrigatório)

PrimaryKeyType

Tipo do campo de dados. Valores válidos: INTEGER e STRING.

Analytical store

Cada elemento em analyticalStores[] é do tipo TimeseriesAnalyticalStore e contém os seguintes parâmetros.

Nome

Tipo

Descrição

analyticalStoreName (obrigatório)

String

Nome do analytical store.

timeToLive (opcional)

int

TTL do analytical store em segundos. Valor padrão: -1. Defina o valor como -1 ou um inteiro int32 maior ou igual a 2.592.000. O valor -1 indica que os dados não expiram.

syncOption (opcional)

AnalyticalStoreSyncType

Modo de sincronização de dados. Valor padrão: SYNC_TYPE_FULL. Durante a criação de uma tabela de séries temporais, apenas SYNC_TYPE_FULL, que especifica sincronização completa, tem suporte.

Índice Lastpoint

Cada elemento em lastpointIndexes[] é do tipo CreateTimeseriesTableRequest.LastpointIndex e contém o seguinte parâmetro.

Nome

Tipo

Descrição

indexName (obrigatório)

String

Nome do índice Lastpoint. Para mais informações, consulte Lastpoint indexes.

Exemplos

Configurar o TTL de metadados

O exemplo a seguir define o TTL dos dados de séries temporais como 7 dias, o TTL dos metadados como 14 dias e desativa as atualizações de atributos de metadados.

String tableName = "example_timeseries_table";
TimeseriesTableOptions tableOptions = new TimeseriesTableOptions(604800);
TimeseriesTableMeta tableMeta = new TimeseriesTableMeta(tableName, tableOptions);

TimeseriesMetaOptions metaOptions = new TimeseriesMetaOptions();
metaOptions.setMetaTimeToLive(1209600);
metaOptions.setAllowUpdateAttributes(false);
tableMeta.setTimeseriesMetaOptions(metaOptions);

CreateTimeseriesTableRequest request = new CreateTimeseriesTableRequest(tableMeta);
timeseriesClient.createTimeseriesTable(request);

Personalizar identificadores de séries temporais e chaves primárias de campos de dados

Importante

Identificadores personalizados de séries temporais e chaves primárias de campos de dados exigem o Tablestore SDK for Java 5.17.1 ou posterior. Recomendamos o uso da versão mais recente do SDK. Antes de utilizar esses recursos, verifique se a região da instância oferece suporte a eles.

O exemplo a seguir usa pk1 e pk2 como identificadores de série temporal, e field1 e field2 como chaves primárias de campos de dados.

String tableName = "example_timeseries_table";
TimeseriesTableMeta tableMeta = new TimeseriesTableMeta(tableName);
tableMeta.addTimeseriesKey("pk1");
tableMeta.addTimeseriesKey("pk2");
tableMeta.addFieldPrimaryKey("field1", PrimaryKeyType.INTEGER);
tableMeta.addFieldPrimaryKey("field2", PrimaryKeyType.STRING);

CreateTimeseriesTableRequest request = new CreateTimeseriesTableRequest(tableMeta);
timeseriesClient.createTimeseriesTable(request);

Criar um índice Lastpoint

Importante

Os índices Lastpoint exigem o Tablestore SDK for Java 5.17.1 ou posterior. Recomendamos o uso da versão mais recente do SDK. Para usar esse recurso, crie uma instância do modelo de séries temporais em uma região com suporte. Para ver as regiões com suporte, consulte Lastpoint indexes.

O exemplo a seguir cria o índice example_lastpoint_index juntamente com a tabela de séries temporais.

String tableName = "example_timeseries_table";
TimeseriesTableMeta tableMeta = new TimeseriesTableMeta(tableName);
CreateTimeseriesTableRequest request = new CreateTimeseriesTableRequest(tableMeta);
request.addLastpointIndex(
        new CreateTimeseriesTableRequest.LastpointIndex("example_lastpoint_index"));

timeseriesClient.createTimeseriesTable(request);

Criar um analytical store

Um analytical store oferece armazenamento e análise econômicos para dados de séries temporais. Para utilizar esse recurso, crie uma instância do modelo de séries temporais em uma região com suporte. Para detalhes sobre regiões com suporte e funcionalidades, consulte Analytical store.

Analytical store padrão

Defina enableAnalyticalStore como true para criar o analytical store padrão chamado default_analytical_store.

String tableName = "example_timeseries_table";
TimeseriesTableMeta tableMeta = new TimeseriesTableMeta(tableName);
CreateTimeseriesTableRequest request = new CreateTimeseriesTableRequest(tableMeta);
request.setEnableAnalyticalStore(true);

timeseriesClient.createTimeseriesTable(request);

Analytical store personalizado

O exemplo a seguir cria o example_analytical_store junto com a tabela de séries temporais. Os dados no analytical store não expiram e a sincronização completa é utilizada.

String tableName = "example_timeseries_table";
TimeseriesTableMeta tableMeta = new TimeseriesTableMeta(tableName);
CreateTimeseriesTableRequest request = new CreateTimeseriesTableRequest(tableMeta);

TimeseriesAnalyticalStore analyticalStore =
        new TimeseriesAnalyticalStore("example_analytical_store");
analyticalStore.setTimeToLive(-1);
analyticalStore.setSyncOption(AnalyticalStoreSyncType.SYNC_TYPE_FULL);
request.setAnalyticalStores(Collections.singletonList(analyticalStore));

timeseriesClient.createTimeseriesTable(request);

Referências