Chame a operação GetTimeseriesData para consultar dados de séries temporais que atendem a condições específicas.
Pré-requisitos
Inicialize um cliente. Para mais informações, consulte Inicializar um cliente do Tablestore.
Parâmetros
A tabela a seguir descreve os parâmetros incluídos em request.
|
Parâmetro |
Descrição |
|
timeseriesTableName (obrigatório) |
Nome da tabela de séries temporais. |
|
timeseriesKey (obrigatório) |
Identificadores da série temporal. Este parâmetro inclui os seguintes itens de configuração:
|
|
beginTimeInUs (opcional) |
Intervalo de tempo da consulta, em microssegundos. Valor padrão: 0. Os parâmetros beginTimeInUs e endTimeInUs definem, respectivamente, o timestamp inicial e final. O intervalo de tempo da consulta é fechado à esquerda e aberto à direita. |
|
endTimeInUs (opcional) |
|
|
backward (opcional) |
Define se os resultados da consulta devem ser ordenados em ordem cronológica inversa. Esse parâmetro permite obter os dados mais recentes de uma série temporal. Valores válidos:
|
|
fieldsToGet (opcional) |
Colunas a recuperar. Caso não especifique esse parâmetro, todas as colunas serão consultadas. Importante
Especifique explicitamente o nome e o tipo de dados de cada coluna a recuperar com o parâmetro fieldsToGet. Se o tipo de dados não corresponder ao tipo real, a leitura dos dados da coluna falhará. |
|
limit (opcional) |
Número máximo de linhas retornadas por esta solicitação. Valor padrão: 5000. Valores válidos: Nota
O parâmetro limit restringe apenas o número máximo de linhas a retornar. Mesmo que a quantidade de linhas correspondentes às condições exceda o limite, o número de linhas retornadas pode ser inferior ao valor de limit devido a outras restrições, como o volume máximo de dados para varredura. Nesse caso, use o parâmetro nextToken para obter as linhas restantes. |
|
nextToken (opcional) |
Se a consulta retornar apenas parte das linhas correspondentes às condições, a resposta conterá o parâmetro nextToken. Especifique nextToken na próxima solicitação para obter as linhas restantes. Importante
Para persistir o nextToken ou transferi-lo à página frontend, codifique-o em uma string Base64. O nextToken não é uma string nativa. O uso direto de |
Exemplos
O exemplo de código a seguir demonstra como consultar dados de séries temporais que atendem a condições especificadas em uma tabela de séries temporais:
# The tag information of the time series.
tags = {"tag1": "t1", "tag2": "t2"}
# The identifiers of the time series.
key = TimeseriesKey("measure1", "datasource1", tags)
try:
request = GetTimeseriesDataRequest("")
# The identifiers of the time series.
request.timeseriesKey = key
# The end timestamp of the time range to query.
request.endTimeInUs = int(time.time() * 1000000)
# The maximum number of rows that can be returned by the request.
request.limit = 20
# The columns to retrieve. If you do not specify this parameter, all columns are returned.
request.fieldsToGet = {"string_field": DataType.STRING, "long_field": DataType.LONG}
# Call the operation to query time series data.
response = ots_client.get_timeseries_data(request)
print(response.rows)
# If nextToken is not empty, you can initiate the next request.
if response.nextToken is not None:
# Obtain nextToken.
next_token = response.nextToken
# If you want to persist nextToken or transfer nextToken to the frontend page, you can use Base64 to encode nextToken into a string for storage and transmission.
# The token itself is not a string. If you directly use str(nextToken) to encode the token as a string, token information will be lost.
token_as_string = base64.b64encode(next_token).decode('utf-8')
# Decode the string into bytes.
next_token_byte = base64.b64decode(token_as_string.encode('utf-8'))
# Call the operation to query time series data.
request.nextToken = next_token
response = ots_client.get_timeseries_data(request)
print(response.rows)
print("get timeseries data succeeded.")
except Exception as e:
# If an exception is thrown, the call fails. Handle the exception.
print("get timeseries data failed. %s" % e)