gpt4 book ai didi

cassandra - 什么 ConsistencyLevel 与 Cassandra 计数器表一起使用?

转载 作者:行者123 更新时间:2023-12-03 08:10:01 24 4
gpt4 key购买 nike

我有一个表格,每秒大约有 1000 个页面浏览量。我应该使用什么读取和写入 ConsistencyLevel?我正在使用 Cassandra Thrift 客户端。

最佳答案

卡罗或多或少有正确的想法。但是你必须在你的用例中平衡它。

我在游戏行业工作,我们使用 cassandra 来获取玩家数据。它非常受读取-修改-写入模式的约束,这不是 cassandra 的强项。但是我们也有一些写入繁重的功能(每天写入数以千计)。

这是我根据经验对如何使用一致性级别的看法。

Write + Read at QUORUM 意味着在返回两个操作之前,它将等待集群中的大多数节点确认操作。这是我在读取和写入频率大致相同时使用的解决方案。 (玩家数据块)

Write One + Read All 对于写量很大的东西很有用。我们将其用于高分示例(每 5 分钟写入一次,以重新生成整个游戏的高分表)
如果您不太关心数据(想到非关键日志),则可以使用 Write Any。

我可以提出的全部写入 + 读取一个用例的唯一用例是消息传递或定期检查更新的提要。聊天和消息传递似乎很适合,因为 Cassandra 没有订阅/推送功能。

Write & Read ALL 是一个糟糕的实现。这是一种资源浪费,因为您将获得与使用我上面提到的三种设置之一相同的一致性。

关于 Write ANY 与 Write ONE 的最后一点说明:ANY 只确认集群中的任何东西都收到了突变,但 ONE 确认它至少已被一个节点应用。 ANY 是不安全的,因为即使所有负责该突变的节点都关闭,或者任何其他可能导致接收后突变失败的情况,它也可以无错误地返回。它也稍微快一点(我只将它用作不重要的日志的异步转储)这是它唯一的优势,但不要相信 100% 的响应。

研究关于 cassandra 的这个主题的一个很好的引用是 http://www.datastax.com/docs/1.2/dml/data_consistency

关于cassandra - 什么 ConsistencyLevel 与 Cassandra 计数器表一起使用?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/15980936/

24 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com