【问题标题】:Best approach to retrieve ordered counter from Cassandra从 Cassandra 检索订购柜台的最佳方法
【发布时间】:2019-04-10 09:39:15
【问题描述】:

我正在使用 Cassandra 来保存单词及其频率。

表架构会像

CREATE TABLE keywords_rate (
    some_id int,
    keyword Text,
    frequency counter,
    PRIMARY KEY (some_id, keyword)
);

问题是,我有数百万条记录,我需要获取每个some_id 的前 100 个关键字

但要做到这一点,我需要获取给定 some_id 的所有关键字并在后端(python)上对它们进行排序,然后获取前 100 条记录。这对我来说是一项非常昂贵的手术。

所以我的问题是:我可以对 Cassandra 内的柜台进行分类吗?如果没有,这种情况的最佳方法是什么?

谢谢。

【问题讨论】:

    标签: python database database-design cassandra


    【解决方案1】:

    如果您只是将 Cassandra 用于此用例,并且您还没有大量投资,那么我最好的建议是……选择一个不同的数据库。 :) Cassandra 不是为此而设计的。

    如果您需要使用 Cassandra,请查看 this answer,它基于 eBay 组织数据的方式。

    但同样,如果您可以选择,请在此用例中使用另一种技术。这在 Cassandra 中会非常混乱。

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 2012-03-21
      • 2015-12-10
      • 2019-06-30
      • 1970-01-01
      • 2016-12-06
      • 2018-10-07
      • 2011-06-29
      • 1970-01-01
      相关资源
      最近更新 更多