我知道我们可以使用Cassandra的虚拟节点工具,这样我们就可以防止将令牌(开始令牌)分配给集群的不同节点的额外开销.而不是我们使用num token及其默认值256.
这些虚拟节点以何种方式在分区方面有所不同?Meas Cassandra是否为特定节点设置/分配令牌范围(最大和最小令牌)?
行缓存和分区键缓存有什么区别?我是否需要同时使用两者才能获得良好的表现.
我已经从dataStax网站上阅读了基本定义
分区键高速缓存是Cassandra表的分区索引的高速缓存.使用密钥缓存而不是依赖OS页面缓存可以节省CPU时间和内存.但是,仅启用密钥缓存会导致磁盘(或OS页面缓存)活动实际读取请求的数据行.
行缓存类似于传统缓存,如memcached.访问行时,整行将被拉入内存,必要时从多个SSTable合并并缓存,以便可以满足对该行的进一步读取而无需访问磁盘.
任何人都可以详细说明使用领域.确实需要同时实现两者.?
可以选择分区程序可以带来我的吞吐量和延迟.我已经完成了所有三个分区.有一件事我已经在脑海中清楚地表明,有序的分区有开销,所以不要使用它们.现在我对选择Random和murmur3分区器感到困惑.
cassandra ×3