【问题标题】:How does token function on partition key of cassandra work?cassandra 的分区键上的令牌功能如何工作?
【发布时间】:2017-03-20 10:29:52
【问题描述】:

在 cassandra DB 中,我尝试使用令牌函数对日期类型的分区键列进行范围查询,但得到的结果不正确。我打算在 2016-09-09 之后获取记录,但我也获取 2016-09-07 的记录。

Cassandra 版本:2.1.8 CQL 版本:3.0

请参阅下面的查询,如果我做错了什么,请告诉我

user@cqlsh:mydb> select updated_on_day,updated_on from sample_data  where token(updated_on_day) > token('2016-09-09')  and token(updated_on_day) < token('2016-11-11') limit 10;

 updated_on_day           | updated_on
--------------------------+--------------------------
 2016-09-14 00:00:00+0530 | 2016-09-14 11:53:03+0530
 2016-09-14 00:00:00+0530 | 2016-09-14 14:26:58+0530
 2016-09-14 00:00:00+0530 | 2016-09-14 15:30:48+0530
 2016-09-14 00:00:00+0530 | 2016-09-14 16:01:56+0530
 2016-09-07 00:00:00+0530 | 2016-09-07 12:36:36+0530

【问题讨论】:

标签: cassandra cqlsh


【解决方案1】:

当然,您的分区是按其令牌排序的,除非您使用 ByteOrderedPartitioner 保留分区键的原始字节顺序,否则可以假定它们的顺序是随机的。

Here 是我最近对类似问题的回答。

【讨论】:

    猜你喜欢
    • 2016-04-08
    • 2014-05-19
    • 2020-05-28
    • 2018-07-06
    • 1970-01-01
    • 2019-06-03
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多