【问题标题】:Cassandra solution to queue anti-patternCassandra 队列反模式的解决方案
【发布时间】:2021-10-16 16:13:48
【问题描述】:

我有一个消息队列表,其中包含从用户 A 发送给用户 B,但用户 B 尚未读取的消息。用户 B 读取消息后,它从队列表转移到历史表。 (删除,插入)据我了解,队列表代表一种反模式。

解决这个问题的正确方法是什么?只有一个带有附加列(如(ReadStatus))的表?但是后来我们遇到了与分区键相关的问题(队列分区键就足够了 - ReceiverId & 历史分区键应该是 - (SenderId, ReceiverId))。

【问题讨论】:

    标签: cassandra queue message


    【解决方案1】:

    您知道 Cassandra 不适合队列数据集是对的。

    有一种方法可以对数据进行建模,这样您就不必通过将数据分组到表中然后在处理完数据时截断表来迭代墓碑(已删除或过期的行)。

    我从 Ryan Svihla 的博文 Understanding deletes 中学到了这项技术。干杯!

    【讨论】:

      猜你喜欢
      • 2014-12-15
      • 2012-10-14
      • 1970-01-01
      • 2018-12-20
      • 2021-08-21
      • 2021-08-20
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      相关资源
      最近更新 更多