全部產品
Search
文件中心

Tablestore:查詢Lastpoint索引資料

更新時間:Apr 01, 2025

本文介紹如何通過Java SDK查詢Lastpoint索引資料。

注意事項

Table StoreJava 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索引