首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >Cassandra: CL !=所有写上的都将超载集群

Cassandra: CL !=所有写上的都将超载集群
EN

Stack Overflow用户
提问于 2013-03-04 17:02:31
回答 1查看 329关注 0票数 0

我和卡桑德拉一起运行了一系列的基准。除其他外,我尝试了以下配置:1个客户端节点,3个服务器节点(相同的环)。所有实验都是在清理服务器之后运行的:

代码语言:javascript
复制
pkill -9 java; sleep 2; rm -r /var/lib/cassandra/*; ./apache-cassandra-1.2.2/bin/cassandra -f

然后我从客户端节点运行cassandra-stress (3个副本,一致性任意/全部):

代码语言:javascript
复制
[stop/clean/start servers]
./tools/bin/cassandra-stress -o INSERT -d server1,server2,server3 -l 3 -e ANY
[224 seconds]
[stop/clean/start servers]
./tools/bin/cassandra-stress -o INSERT -d server1,server2,server3 -l 3 -e ALL
[368 seconds]

可以推断,降低一致性级别会提高性能。然而,没有理由要这样做。瓶颈是服务器上的CPU,它们都必须最终要做一个本地写。事实上,仔细阅读服务器日志就会发现,已经发生了暗示性的切换。重复这个实验,我有时会在客户机上得到UnavailableException,在服务器上得到“丢弃的突变消息”。

这个问题记录在案了吗?写起来应该被认为是有害的吗?

EN

回答 1

Stack Overflow用户

发布于 2013-03-04 22:59:23

我不太清楚你的意思是什么。事情似乎是按设计进行的。

是的,如果您在CL.ONE上写作,它将比在CL.ALL上更快地完成写入-因为它只需要从一个节点获得一个ACK -而不是所有这些节点。

然而,您并没有测量修复数据所需的时间。您将花费时间排队和处理暗示的切换-然而,节点只停留了一个小时。

最终,您将不得不运行一个nodetool repair来更正一致性并删除墓碑。

票数 0
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/15206904

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档