cassandra - Cassandra 计数器表的原子更新和选择
问题描述
我需要根据以下问题的帮助/建议:
我有一个由异步进程递增的计数器表。每个进程都需要增量更新后的新值。但是这两个操作(UPDATE 和 SELECT)不是原子的。因此,在此期间,第二个过程可能会进一步增加。结果是第一个进程的 SELECT 结果中的计数器值错误(counter + 2
而不是counter + 1
)。我该如何处理这个问题?
如果我可以将 UPDATE 和 SELECT 合并到一个原子事务中,那就太好了。2014 年,有人已经要求提供此功能。但它似乎不会被实施:
http://grokbase.com/t/cassandra/user/145xexrr0f/retrieve-counter-value-after-update
解决方案
推荐阅读
- docker - Dockerfile 环境变量 snafoo
- excel - 有没有一种方法可以在下降单列时增加列引用?
- ssis - SSIS包将平面文件数据插入两个不同的表
- angular - 模板中字符串的选择器
- python - 如何修复此错误:PyQt5.QtCore 模块无法向 sip 模块注册
- javascript - 如何在 Internet Explorer 中删除 Blob?
- c++ - Visual Studio 中的 CMake 项目:如何添加其他包含和库目录?
- python - Virtualenv 在全局目录中安装一个包
- javascript - 在 div 顶部显示高图表饼图
- recaptcha - 多个子域上的 reCAPTCHA