4
A
回答
3
您可以讀取與節儉呼叫get_range_slices所有行。請注意,它以令牌順序返回行,而不是按鍵順序。因此,讀取所有行,但不要跨行鍵執行範圍是很好的。
您可以在Astyanax中使用getAllRows()。下面是一些示例代碼(在https://github.com/Netflix/astyanax/wiki/Reading-Data#iterate-all-rows-in-a-column-family從文檔複製)
Rows<String, String>> rows;
try {
rows = keyspace.prepareQuery("ColumnFamilyName")
.getAllRows()
.setBlockSize(10)
.withColumnRange(new RangeBuilder().setMaxSize(10).build())
.setExceptionCallback(new ExceptionCallback() {
@Override
public boolean onException(ConnectionException e) {
try {
Thread.sleep(1000);
} catch (InterruptedException e1) {
}
return true;
}})
.execute().getResult();
} catch (ConnectionException e) {
}
// This will never throw an exception
for (Row<String, String> row : rows.getResult()) {
LOG.info("ROW: " + row.getKey() + " " + row.getColumns().size());
}
這將返回的每一行的第一個10列,在10行的批次。增加傳遞給RangeBuilder()。setMaxSize以獲得更多(或更少)列的數量。
相關問題
- 1. Cassandra Astyanax文檔
- 2. Hector vs Astyanax for Cassandra
- 3. 如何在Astyanax API中關閉與Cassandra集羣的連接?
- 4. 如何使用java從cassandra讀取數據類型的所有行?
- 5. Python - 一次從文件讀取1000行
- 6. 如何有效地獲取Cassandra表中的所有行名稱?
- 7. 有沒有辦法與cassandra或hector的astyanax異步放置?
- 8. 如何從Cassandra中取第n行?
- 9. 無法獲得Astyanax IndexQuery執行的所有結果
- 10. 如何使用phpcassa獲取cassandra中所有行的列名?
- 11. Cassandra沒有從ssttable讀取數據
- 12. 如何從cassandra讀取文件並將文件寫入cassandra?
- 13. 如何從表中獲取所有行
- 14. Cassandra SSTables:如何在C++中讀取?
- 15. CF - 從主機桌面讀取文件
- 16. 立即讀取所有行
- 17. 如何讀取1000塊的集合?
- 18. Cassandra:如何從集羣獲取所有主機?
- 19. 使用Spark Streaming從Cassandra中讀取
- 20. 如何在cassandra中使用astyanax和複合列執行範圍查詢
- 21. Slick 3.0分批讀取行數爲1000
- 22. 如何使用Pig從Cassandra加載CF/TABLE
- 23. 如何在Cassandra/Astyanax開發環境中配置Astyanax連接池以取消任何客戶端請求(單個Cassandra節點開發環境)
- 24. Astyanax「java.lang.NoClassDefFoundError:org/apache/cassandra/dht/Murmur3Partitioner」異常
- 25. 使用Astyanax無法連接到Cassandra
- 26. Astyanax和Cassandra之間的安全通信
- 27. Astyanax - TokenRangeOfflineException試圖連接到Cassandra的
- 28. 如何在Linux中運行Netflix Astyanax
- 29. PDO讀取/讀取所有
- 30. 如何一次讀取批量/部分/ 1000行的文件
嗯,在這裏沒有什麼意義。雖然這對於1000行很好,但假設我暫時想要做1百萬行而不會出現內存消耗,也沒有執行map/reduce(現在)。有沒有辦法要求下一行,下一行,下一行(和它正常的批處理,因爲我設置query.setRowLimit(200),一次只能加載200個? –
根據這個:https:///github.com/Netflix/astyanax/issues/53行中返回的迭代器是懶惰的,所以它不會同時在內存中存儲多於一頁的大小。 – Richard
還有另外一種方法,現在首選使用AllRowsReader示例代碼在這裏:https://github.com/Netflix/astyanax/wiki/All-rows-query。你得到每一行的回調。 – Richard