檢索結果我已將數據存儲在Cassandra數據庫的ComparatorType.BYTESTYPE中。現在我想要以存儲的順序檢索數據。從Cassandra以
我在Hector中使用下面的代碼來獲取數據,但查詢結果似乎沒有排序。
Keyspace keyspace = HFactory.createKeyspace("ClusterName", cluster);
Map<String, String> resultMap = new HashMap<String, String>();
SliceQuery<String, String, String> query = HFactory.createSliceQuery(keyspace, StringSerializer.get(), StringSerializer.get(), StringSerializer.get());
query.setColumnFamily("ColumnFamilyName").setKey("RowKey")
.setRange("", "", false, Integer.MAX_VALUE);
QueryResult<ColumnSlice<String, String>> result = query.execute();
for (HColumn<String, String> column : result.get().getColumns()) {
resultMap.put(column.getName(), column.getValue());
}
我在想什麼?我必須使用RangeSliceQueries和OrderedRows嗎?
在此先感謝。
看起來您的解決方案在您的情況下效果很好,但我認爲這只是插入順序和數據類型的巧合。通過一切手段保持你提出的解決方案,但我一般會採用le douard的解決方案。 – 2012-09-01 22:27:58