我一直在与Cassandra(v1.2,v2.0,v2.1)合作很长一段时间。 之前我能够通过带有5个节点的Thrift协议看到Cassandra的Write可伸缩性(v1.2,v2.1)。我试图用批处理来评估Cassandra(2.1)二进制协议的Write可伸缩性方面。
我们看到Cassandra New协议比Thrift具有更好的性能。 令人惊讶的是,我发现Cassandra在使用二进制协议进行批处理时不能很好地扩展。我们已经尝试过以下次数:
a)各种批量大小,如:100,1000,... 10000
b)Off_heap Memtable stuff
c)各种客户(我们使用的是YCSB客户端)
d)WriteTimeout为5秒和10秒
例如。 3个节点,5个节点和10个节点的写入吞吐量差别不大。
架构{UUID,DateComponentOfTimestamp,Timestamp,float value} 前两列构成一个键。
我也在物理群集设置和AWS EC2实例上尝试过它。 我看到使用单节点设置二进制协议进行了大量实验。
对于有和没有批处理的二进制协议的可伸缩性,是否有任何已知的基准(内部或外部)?
我是否错过任何事情,有人可以在这方面指导我吗?
谢谢, 阿伦