Todos los productos
Search
Centro de documentos

Tablestore:Lectura de datos desde un índice Lastpoint

Última actualización: Sep 03, 2026

Use Tablestore SDK for Java para leer el punto de datos más reciente de cada serie temporal desde un índice Lastpoint mediante un rango de clave principal.

Requisitos previos

Instale Tablestore SDK for Java e inicialice un cliente. Los índices Lastpoint requieren la versión 5.17.1 o posterior. Se recomienda usar la versión más reciente.

Descripción

Un índice Lastpoint puede leerse como una tabla de datos. Llame a getRange y especifique un rango de clave principal para leer los puntos de datos más recientes dentro de dicho rango. En una tabla de series temporales que usa los identificadores predeterminados, el índice Lastpoint contiene las columnas de clave principal _#h, _m_name, _data_source y _tags en ese orden.

public GetRangeResponse getRange(GetRangeRequest getRangeRequest) throws TableStoreException, ClientException

A continuación se establecen los valores iniciales de las cuatro columnas de clave principal en INF_MIN y los valores finales en INF_MAX. Posteriormente, se leen todos los datos de example_lastpoint_index en varias páginas.

RangeRowQueryCriteria criteria =
        new RangeRowQueryCriteria("example_lastpoint_index");

PrimaryKey startPrimaryKey = PrimaryKeyBuilder.createPrimaryKeyBuilder()
        .addPrimaryKeyColumn("_#h", PrimaryKeyValue.INF_MIN)
        .addPrimaryKeyColumn("_m_name", PrimaryKeyValue.INF_MIN)
        .addPrimaryKeyColumn("_data_source", PrimaryKeyValue.INF_MIN)
        .addPrimaryKeyColumn("_tags", PrimaryKeyValue.INF_MIN)
        .build();
PrimaryKey endPrimaryKey = PrimaryKeyBuilder.createPrimaryKeyBuilder()
        .addPrimaryKeyColumn("_#h", PrimaryKeyValue.INF_MAX)
        .addPrimaryKeyColumn("_m_name", PrimaryKeyValue.INF_MAX)
        .addPrimaryKeyColumn("_data_source", PrimaryKeyValue.INF_MAX)
        .addPrimaryKeyColumn("_tags", PrimaryKeyValue.INF_MAX)
        .build();

criteria.setInclusiveStartPrimaryKey(startPrimaryKey);
criteria.setExclusiveEndPrimaryKey(endPrimaryKey);
criteria.setMaxVersions(1);

while (true) {
    GetRangeResponse response =
            client.getRange(new GetRangeRequest(criteria));
    response.getRows().forEach(System.out::println);

    if (response.getNextStartPrimaryKey() == null) {
        break;
    }
    criteria.setInclusiveStartPrimaryKey(
            response.getNextStartPrimaryKey());
}

Parámetros

GetRangeRequest contiene el siguiente parámetro.

Nombre

Tipo

Descripción

rangeRowQueryCriteria (obligatorio)

RangeRowQueryCriteria

Criterios de lectura por rango.

Criterios de lectura por rango

rangeRowQueryCriteria contiene los siguientes parámetros.

Nombre

Tipo

Descripción

tableName (obligatorio)

String

Nombre del índice Lastpoint.

inclusiveStartPrimaryKey (obligatorio)

PrimaryKey

Clave principal de inicio inclusiva. Especifique todas las columnas de clave principal en el orden definido en el índice.

exclusiveEndPrimaryKey (obligatorio)

PrimaryKey

Clave principal final exclusiva. Especifique todas las columnas de clave principal en el orden definido en el índice.

maxVersions (obligatorio)

int

Número máximo de versiones por devolver por columna. Un índice Lastpoint conserva solo el valor más reciente de cada campo. Establezca este parámetro en 1.

columnsToGet (opcional)

Set<String>

Columnas de atributos por devolver. Si no se especifica este parámetro, se devuelven todas las columnas de atributos.

direction (opcional)

Direction

Dirección de lectura. Valores válidos: FORWARD y BACKWARD. Valor predeterminado: FORWARD.

limit (opcional)

int

Número máximo de filas por devolver en una solicitud. El valor debe ser mayor que 0. Si no se especifica este parámetro, se usa el valor predeterminado del SDK: -1.

Respuesta

GetRangeResponse contiene los siguientes campos específicos de la operación.

Campo

Tipo

Descripción

rows

List<Row>

Llame a getRows() para obtener las filas Lastpoint que devuelve la solicitud.

nextStartPrimaryKey

PrimaryKey

Llame a getNextStartPrimaryKey() para obtener la clave principal de inicio de la siguiente solicitud. Un valor null indica que se devolvieron todos los datos del rango especificado.

Esquema de fila Lastpoint

En una tabla de series temporales que usa los identificadores predeterminados, cada fila Lastpoint contiene los siguientes campos.

Campo

Tipo

Descripción

_#h

String

Clave de partición generada por el sistema para la serie temporal.

_m_name

String

Nombre de la medición.

_data_source

String

Origen de los datos.

_tags

String

Etiquetas de la serie temporal.

_time

long

Marca de tiempo del punto de datos más reciente, en microsegundos.

Campos de datos

ColumnValue

Campos y valores de datos en el punto de datos más reciente.