【问题标题】:How to search secondary index in Cassandra without equality?如何在不相等的情况下在 Cassandra 中搜索二级索引?
【发布时间】:2011-03-18 19:26:11
【问题描述】:

我需要能够仅使用 、= 对二级索引执行搜索。我知道 Cassandra 至少需要一个相等索引子句,因为它会遍历该相等索引的所有结果。

是否有任何技巧可以仅使用 、=(至少在概念上)来执行操作?这是个坏主意吗?

另外,有人知道是否有计划在 Cassandra 中改变这一点?

谢谢!

【问题讨论】:

    标签: nosql cassandra


    【解决方案1】:

    如果有一个使用 0.7 索引的好方法,我们/我会在 http://www.datastax.com/dev/blog/whats-new-cassandra-07-secondary-indexes 中提到它,而不是说“你需要一个等式表达式”。没有双重秘密作弊码。

    另一种方法是使用 ByteOrderedPartitioner(它允许您对行键执行 >= 查询)。另一个可能是在写入时对数据的某些子集创建物化视图。这是假设您有足够多的行,简单地执行无序顺序扫描太慢了。

    0.8 (https://issues.apache.org/jira/browse/CASSANDRA-1472) 中的位图索引将支持对索引的不等式运算。

    【讨论】:

    • 另见issues.apache.org/jira/browse/CASSANDRA-1339。另请注意,在撰写本文时,0.8 版本已发布,但该功能尚未出现,在问题跟踪器上,对 1472 的最后评论是大约 3 个月前,最后一次发布的补丁是大约 9 个月前。 (我不是 Cassandra 开发人员,而 jbellis 是,我只是一个试图估计此功能何时可用的潜在用户)
    猜你喜欢
    • 2014-06-20
    • 1970-01-01
    • 2013-07-25
    • 2015-06-23
    • 2015-08-31
    • 1970-01-01
    • 2018-07-01
    • 2014-09-27
    • 1970-01-01
    相关资源
    最近更新 更多