Todos os produtos
Search
Central de documentação

Tablestore:Consultar séries temporais

Última atualização: Jul 03, 2026

Chame QueryTimeseriesMeta para pesquisar séries temporais em uma tabela de séries temporais. Filtre por nome da métrica, fonte de dados, tag, atributo ou hora de atualização para recuperar exatamente as séries temporais necessárias.

Nota

Para obter a especificação completa da API, consulte QueryTimeseriesMeta.

Pré-requisitos

Inicialize um cliente. Para mais informações, consulte Inicializar um cliente Tablestore.

Definição de classe

QueryTimeseriesMetaRequest aceita o nome da tabela de séries temporais e uma condição de consulta opcional. Use setCondition para filtrar resultados, setGetTotalHits para incluir a contagem de séries temporais correspondentes e setLimit para definir o tamanho da página. Utilize NextToken para paginar os resultados.

public class QueryTimeseriesMetaRequest implements Request {
    /** The name of the time series table. */
    private final String timeseriesTableName;
    /** The query conditions.*/
    private MetaQueryCondition condition;
    /** Specifies whether to return the total number of time series that meet the query conditions. */
    private boolean getTotalHits = false;
    /** The number of time series to return at a time. */
    private int limit = -1;
    /** The token that is used in the next request to query time series. */
    private byte[] nextToken;
}

As classes a seguir implementam MetaQueryCondition e definem os tipos de condição de consulta compatíveis.

CompositeMetaQueryCondition

Combine várias condições com os operadores lógicos AND, OR ou NOT.

public class CompositeMetaQueryCondition implements MetaQueryCondition {
    /** The logical operator. */
    private final MetaQueryCompositeOperator operator;
    /** The list of subconditions. */
    private List<MetaQueryCondition> subConditions = new ArrayList<MetaQueryCondition>();
}

MeasurementMetaQueryCondition

Filtre pelo nome da métrica.

public class MeasurementMetaQueryCondition implements MetaQueryCondition {
    /** The relational operator. */
    private final MetaQuerySingleOperator operator;
    /** The name of the metric of the time series that you want to query. */
    private final String value;
}

DataSourceMetaQueryCondition

Filtre pela fonte de dados.

public class DataSourceMetaQueryCondition implements MetaQueryCondition {
    /** The relational operator. */
    private final MetaQuerySingleOperator operator;
     /** The name of the data source of the time series that you want to query. */
    private final String value;
}

TagMetaQueryCondition

Filtre pelo nome e valor da tag.

public class TagMetaQueryCondition implements MetaQueryCondition {
    /** The relational operator. */
    private final MetaQuerySingleOperator operator;
    /** The tag name. */
    private final String tagName;
    /** The tag value. */
    private final String value;
}

AttributeMetaQueryCondition

Filtre pelo nome e valor do atributo.

public class AttributeMetaQueryCondition implements MetaQueryCondition {
    /** The relational operator. */
    private final MetaQuerySingleOperator operator;
    /** The attribute name. */
    private final String attributeName;
    /** The attribute value. */
    private final String value;
}

UpdateTimeMetaQueryCondition

Filtre pela hora da última atualização dos metadados da série temporal.

public class UpdateTimeMetaQueryCondition implements MetaQueryCondition {
    /** The relational operator. */
    private final MetaQuerySingleOperator operator;
    /** The timestamp when the time series metadata is updated. */
    private final long timeInUs;
}

Parâmetros

Especifique timeseriesTableName e pelo menos uma condição. A tabela a seguir descreve cada tipo de condição.

Condição

Descrição

compositeMetaQueryCondition

Combina várias condições com um operador lógico:

  • operator: operador lógico. Valores válidos: AND, OR e NOT.

  • subConditions: lista de condições a combinar.

measurementMetaQueryCondition

Filtra pelo nome da métrica:

  • operator: operador relacional ou condição de correspondência de prefixo. Valores válidos: =, !=, >, >=, < e <=.

  • value: nome da métrica a corresponder. Tipo: STRING.

dataSourceMetaQueryCondition

Filtra pela fonte de dados:

  • operator: operador relacional ou condição de correspondência de prefixo. Valores válidos: =, !=, >, >=, < e <=.

  • value: nome da fonte de dados a corresponder. Tipo: STRING.

tagMetaQueryCondition

Filtra pelo nome e valor da tag:

  • operator: operador relacional ou condição de correspondência de prefixo. Valores válidos: =, !=, >, >=, < e <=.

  • tagName: nome da tag a corresponder. Tipo: STRING.

  • value: valor da tag a corresponder. Tipo: STRING.

attributeMetaQueryCondition

Filtra pelo nome e valor do atributo:

  • operator: operador relacional ou condição de correspondência de prefixo. Valores válidos: =, !=, >, >=, < e <=.

  • attributeName: nome do atributo a corresponder. Tipo: STRING.

  • value: valor do atributo a corresponder. Tipo: STRING.

updateTimeMetaQueryCondition

Filtra pela hora da última atualização dos metadados:

  • operator: operador relacional. Valores válidos: =, !=, >, >=, < e <=.

  • timeInUs: timestamp de atualização. Unidade: microssegundos.

Exemplo

O exemplo a seguir consulta todas as séries temporais em uma tabela cujo nome da métrica é cpu e o valor da tag os começa com Ubuntu. Os resultados são recuperados em páginas de até 100 entradas, interrompendo a consulta após atingir 1.000 resultados no total.

private static void queryTimeseriesMeta(TimeseriesClient client) {
    // Specify the name of the time series table. 
    String tableName = "<TIME_SERIES_TABLE>";
    QueryTimeseriesMetaRequest queryTimeseriesMetaRequest = new QueryTimeseriesMetaRequest(tableName);
    // Query all time series whose metric name is cpu and that have the os tag whose value is prefixed with Ubuntu. measurement_name="cpu" and have_prefix(os, "Ubuntu") 
    CompositeMetaQueryCondition compositeMetaQueryCondition = new CompositeMetaQueryCondition(MetaQueryCompositeOperator.OP_AND);
    compositeMetaQueryCondition.addSubCondition(new MeasurementMetaQueryCondition(MetaQuerySingleOperator.OP_EQUAL, "cpu"));
    compositeMetaQueryCondition.addSubCondition(new TagMetaQueryCondition(MetaQuerySingleOperator.OP_PREFIX, "os", "Ubuntu"));
    queryTimeseriesMetaRequest.setCondition(compositeMetaQueryCondition);
    queryTimeseriesMetaRequest.setGetTotalHits(true);
    // Specify the maximum number of time series metadata entries that can be returned for a single request. 
    queryTimeseriesMetaRequest.setLimit(100);
    // Initiate the query. 
    QueryTimeseriesMetaResponse queryTimeseriesMetaResponse = client.queryTimeseriesMeta(queryTimeseriesMetaRequest);
    // Display the total number of time series that meet the query conditions. 
    System.out.println(queryTimeseriesMetaResponse.getTotalHits());

    // Save the request results. 
    List<TimeseriesMeta> timeseriesMetas = new ArrayList<TimeseriesMeta>();
    timeseriesMetas.addAll(queryTimeseriesMetaResponse.getTimeseriesMetas());

    // If NextToken is included in the response, you can initiate a new request to obtain the remaining results. 
    while (queryTimeseriesMetaResponse.getNextToken() != null) {
        queryTimeseriesMetaRequest.setNextToken(queryTimeseriesMetaResponse.getNextToken());
        queryTimeseriesMetaResponse = client.queryTimeseriesMeta(queryTimeseriesMetaRequest);
        timeseriesMetas.addAll(queryTimeseriesMetaResponse.getTimeseriesMetas());
        // Specify the maximum number of time series that can be returned. 
        if (timeseriesMetas.size() >= 1000) {
            break;
        }
    }

    System.out.println(timeseriesMetas.size());
    for (TimeseriesMeta timeseriesMeta : timeseriesMetas) {
        System.out.println(timeseriesMeta.getTimeseriesKey().getMeasurementName());
        System.out.println(timeseriesMeta.getTimeseriesKey().getDataSource());
        System.out.println(timeseriesMeta.getTimeseriesKey().getTags());
        System.out.println(timeseriesMeta.getAttributes());
        System.out.println(timeseriesMeta.getUpdateTimeInUs());
    }
}

Próximos passos

Após consultar as séries temporais, você pode: