在读取Cassandra时,我们发现数据不一致。详细信息如下:
这是一个宽列表。这些列可以添加到多台计算机中,并可以由多台计算机读取。写入和读取之间的时间以分钟为单位,但有时可以以秒为单位。写入每2分钟发生一次。
现在,在阅读时,我们看到以下几种读法不一致的情况:
这是我们已验证的内容:
其他一些细节: Cassandra版本:2.1.9 DataStax Java驱动程序版本:2.1.10.2 复制因子:3
在较低的环境中我们看不到此问题。去年,这种情况发生了一次或两次,但是从最近几天开始,这种情况就经常发生。平均每分钟2次读取不一致。
这是表定义的样子:
CREATE TABLE "MY_TABLE" (
key text,
sub_key text,
value text,
PRIMARY KEY ((key), sub_key)
) WITH
bloom_filter_fp_chance=0.010000 AND
caching='{"keys":"ALL", "rows_per_partition":"NONE"}' AND
comment='' AND
dclocal_read_repair_chance=0.100000 AND
gc_grace_seconds=864000 AND
read_repair_chance=0.000000 AND
default_time_to_live=0 AND
speculative_retry='ALWAYS' AND
memtable_flush_period_in_ms=0 AND
compaction={'class': 'SizeTieredCompactionStrategy'} AND
compression={'sstable_compression': 'LZ4Compressor'};
请为我们指明正确的方向。谢谢!