nosql – Cassandra – 如何检索CF中的所有密钥(随机分区程序)

我使用Random Partitioner(cassandra版本0.7.8),我想检索CF中的所有密钥.我尝试使用get_range_slices来执行此操作,看起来我可以使用此方法获取密钥,尽管密钥未按顺序排列.

并且还有一篇帖子说:“任何分区器都允许使用0.6”(Fetching all keys using the Cassandra API — analogy to “SELECT id FROM table;”),但api文件说这是不可能的(http://wiki.apache.org/cassandra/API#get_range_slices).

我的问题是,在Random Partitioner中使用get_range_slices是否正确?有没有官方文件证实这一点?

是的,这是可能的.您引用的文档试图说,如果您有行键1..10,并且要求范围为5..8,则不会得到一组行[5,6,7,8].

这是fetching all rows from a column family的文档.

基本上你使用get_range_slices,其start_key是空字符串,而没有end_key.根据count中指定的行数,这可能会返回少于列族中的所有行.在这种情况下,您使用上一个结果集中的最后一行键作为下一个查询的start_key.

相关文章
相关标签/搜索