查询Lastpoint索引数据

更新时间: 2024-12-19 10:52:04

本文介绍如何通过Java SDK查询Lastpoint索引数据。

注意事项

表格存储Java SDK从5.17.1版本开始支持Lastpoint索引功能。使用该功能时,请将SDK版本升级到5.17.1及以上版本。

说明

如果您需要下载新版本的Java SDK,请参见Java SDK历史迭代版本

前提条件

已在时序表上创建Lastpoint索引。具体操作,请参见创建Lastpoint索引

示例代码

以下示例代码通过调用GetRange范围查询接口读取Lastpoint索引中的全部数据。

private static void getRange(SyncClient client) {
    // 设置Lastpoint索引名称。
    RangeRowQueryCriteria rangeRowQueryCriteria = new RangeRowQueryCriteria("<LASTPOINT_INDEX_NAME>");
    
    // 构造起始主键和结束主键。起始主键均设置为INF_MIN,结束主键均设置为INF_MAX。
    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();
    rangeRowQueryCriteria.setInclusiveStartPrimaryKey(startPrimaryKey);
    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();
    rangeRowQueryCriteria.setExclusiveEndPrimaryKey(endPrimaryKey);
    //设置最大版本数为1。时序表不支持数据多版本功能。
    rangeRowQueryCriteria.setMaxVersions(1);
    
    System.out.println("扫描结果为:");
    while (true) {
        GetRangeResponse getRangeResponse = client.getRange(new GetRangeRequest(rangeRowQueryCriteria));
        for (Row row : getRangeResponse.getRows()) {
            System.out.println(row);
        }
        // 如果nextStartPrimaryKey不为null,则继续读取数据。
        if (getRangeResponse.getNextStartPrimaryKey() != null) {
            rangeRowQueryCriteria.setInclusiveStartPrimaryKey(getRangeResponse.getNextStartPrimaryKey());
        } else {
            break;
        }
    }
}

相关文档

  • 如果您想了解更多通过Java SDK读取数据的方式,请参见读取数据

  • 如果需要更灵活丰富的数据加速查询方式,例如多条件组合查询、全文检索、前缀查询、模糊查询等,您可以使用Lastpoint索引的多元索引功能实现。更多信息,请参见检索Lastpoint索引

上一篇: 创建Lastpoint索引 下一篇: 检索Lastpoint索引
阿里云首页 表格存储 相关技术圈