我有一个表,该表曾经有很多数据,但是由于ttl很久以前,这些数据就消失了。
但是,当我运行诸如SELECT * FROM my_table LIMIT 10
或SELECT count(*) FROM my_table
之类的查询时,其超时时间为数秒。
当我使用spark-cassandra-connector(内部通过令牌范围查询表)读取数据时,实际上需要花费几分钟时间才能获得0条记录。
我怀疑压缩存在问题,并且逻辑删除没有删除,但是表数据目录看起来并不大:
/ var / lib / scylla $ sudo ls -la
/ data / scylla / data / my_space / my_table-75f8388035c211e9bc85000000000011
总2604 drwx ------ 4 scylla scylla 8192 Nov 27 15:55。
drwx ------ 215 scylla scylla 16384 11月15日19:00 ..
-rw-r--r-- 1 scylla scylla 538 11月25日22:58 mc-1552402-big-CompressionInfo.db
-rw-r--r-- 1 scylla scylla 162869 Nov 25 22:58 mc-1552402-big-Data.db
-rw-r--r-- 1 scylla scylla 10 Nov 25 22:58 mc-1552402-big-Digest.crc32
-rw-r--r-- 1 scylla scylla 656 11月25日22:58 mc-1552402-big-Filter.db
-rw-r--r-- 1 scylla scylla 72244 Nov 25 22:58 mc-1552402-big-Index.db
-rw-r--r-- 1 scylla scylla 54 Nov 25 22:58 mc-1552402-big-Scylla.db
-rw-r--r-- 1 scylla scylla 6234 Nov 25 22:58 mc-1552402-big-Statistics.db
-rw-r--r-- 1 scylla scylla 176 Nov 25 22:58 mc-1552402-big-Summary.db
-rw-r--r-- 1 scylla scylla 102 Nov 25 22:58 mc-1552402-big-TOC.txt
-rw-r--r-- 1 scylla scylla 474 11月25日22:38 mc-1578193-big-CompressionInfo.db
-rw-r--r-- 1 scylla scylla 135730 Nov 25 22:38 mc-1578193-big-Data.db
-rw-r--r-- 1 scylla scylla 10 Nov 25 22:38 mc-1578193-big-Digest.crc32
-rw-r--r-- 1 scylla scylla 496 Nov 25 22:38 mc-1578193-big-Filter.db
-rw-r--r-- 1 scylla scylla 67215 Nov 25 22:38 mc-1578193-big-Index.db
-rw-r--r-- 1 scylla scylla 54 Nov 25 22:38 mc-1578193-big-Scylla.db
-rw-r--r-- 1 scylla scylla 6234 11月25日22:38 mc-1578193-big-Statistics.db
-rw-r--r-- 1 scylla scylla 148 Nov 25 22:38 mc-1578193-big-Summary.db
-rw-r--r-- 1 scylla scylla 102 Nov 25 22:38 mc-1578193-big-TOC.txt
-rw-r--r-- 1 scylla scylla 202 Nov 25 23:12 mc-1582107-big-CompressionInfo.db
-rw-r--r-- 1 scylla scylla 49607 Nov 25 23:12 mc-1582107-big-Data.db
-rw-r--r-- 1 scylla scylla 10 Nov 25 23:12 mc-1582107-big-Digest.crc32
-rw-r--r-- 1 scylla scylla 176 Nov 25 23:12 mc-1582107-big-Filter.db
-rw-r--r-- 1 scylla scylla 24733 Nov 25 23:12 mc-1582107-big-Index.db
-rw-r--r-- 1 scylla scylla 54 Nov 25 23:12 mc-1582107-big-Scylla.db
-rw-r--r-- 1 scylla scylla 6234 Nov 25 23:12 mc-1582107-big-Statistics.db
-rw-r--r-- 1 scylla scylla 92 Nov 25 23:12 mc-1582107-big-Summary.db
-rw-r--r-- 1 scylla scylla 102 Nov 25 23:12 mc-1582107-big-TOC.txt
-rw-r--r-- 1 scylla scylla 1826 Nov 25 22:39 mc-1601869-big-CompressionInfo.db
-rw-r--r-- 1 scylla scylla 639833 Nov 25 22:39 mc-1601869-big-Data.db
-rw-r--r-- 1 scylla scylla 10 Nov 25 22:39 mc-1601869-big-Digest.crc32
-rw-r--r-- 1 scylla scylla 2096 Nov 25 22:39 mc-1601869-big-Filter.db
-rw-r--r-- 1 scylla scylla 251799 Nov 25 22:39 mc-1601869-big-Index.db
-rw-r--r-- 1 scylla scylla 98 Nov 25 22:39 mc-1601869-big-Scylla.db
-rw-r--r-- 1 scylla scylla 6234 Nov 25 22:39 mc-1601869-big-Statistics.db
-rw-r--r-- 1 scylla scylla 428 11月25日22:39 mc-1601869-big-Summary.db
-rw-r--r-- 1 scylla scylla 102 Nov 25 22:39 mc-1601869-big-TOC.txt
-rw-r--r-- 1 scylla scylla 514 Nov 25 23:40 mc-1664251-big-CompressionInfo.db
-rw-r--r-- 1 scylla scylla 146270 Nov 25 23:40 mc-1664251-big-Data.db
-rw-r--r-- 1 scylla scylla 10 Nov 25 23:40 mc-1664251-big-Digest.crc32
-rw-r--r-- 1 scylla scylla 496 Nov 25 23:40 mc-1664251-big-Filter.db
-rw-r--r-- 1 scylla scylla 69800 Nov 25 23:40 mc-1664251-big-Index.db
-rw-r--r-- 1 scylla scylla 54 Nov 25 23:40 mc-1664251-big-Scylla.db
-rw-r--r-- 1 scylla scylla 6234 Nov 25 23:40 mc-1664251-big-Statistics.db
-rw-r--r-- 1 scylla scylla 148 Nov 25 23:40 mc-1664251-big-Summary.db
-rw-r--r-- 1 scylla scylla 102 Nov 25 23:40 mc-1664251-big-TOC.txt
-rw-r--r-- 1 scylla scylla 522 Nov 25 23:39 mc-1679659-big-CompressionInfo.db
-rw-r--r-- 1 scylla scylla 147350 Nov 25 23:39 mc-1679659-big-Data.db
-rw-r--r-- 1 scylla scylla 9 Nov 25 23:39 mc-1679659-big-Digest.crc32
-rw-r--r-- 1 scylla scylla 496 Nov 25 23:39 mc-1679659-big-Filter.db
-rw-r--r-- 1 scylla scylla 70504 Nov 25 23:39 mc-1679659-big-Index.db
-rw-r--r-- 1 scylla scylla 54 Nov 25 23:39 mc-1679659-big-Scylla.db
-rw-r--r-- 1 scylla scylla 6234 Nov 25 23:39 mc-1679659-big-Statistics.db
-rw-r--r-- 1 scylla scylla 148 Nov 25 23:39 mc-1679659-big-Summary.db
-rw-r--r-- 1 scylla scylla 102 Nov 25 23:39 mc-1679659-big-TOC.txt
-rw-r--r-- 1 scylla scylla 562 Nov 25 23:05 mc-1742082-big-CompressionInfo.db
-rw-r--r-- 1 scylla scylla 181106 Nov 25 23:05 mc-1742082-big-Data.db
-rw-r--r-- 1 scylla scylla 8 Nov 25 23:05 mc-1742082-big-Digest.crc32
-rw-r--r-- 1 scylla scylla 656 11月25日23:05 mc-1742082-big-Filter.db
-rw-r--r-- 1 scylla scylla 69320 Nov 25 23:05 mc-1742082-big-Index.db
-rw-r--r-- 1 scylla scylla 54 Nov 25 23:05 mc-1742082-big-Scylla.db
-rw-r--r-- 1 scylla scylla 6234 Nov 25 23:05 mc-1742082-big-Statistics.db
-rw-r--r-- 1 scylla scylla 176 Nov 25 23:05 mc-1742082-big-Summary.db
-rw-r--r-- 1 scylla scylla 102 Nov 25 23:05 mc-1742082-big-TOC.txt
-rw-r--r-- 1 scylla scylla 554 Nov 25 23:24 mc-1774537-big-CompressionInfo.db
-rw-r--r-- 1 scylla scylla 176335 Nov 25 23:24 mc-1774537-big-Data.db
-rw-r--r-- 1 scylla scylla 9 Nov 25 23:24 mc-1774537-big-Digest.crc32
-rw-r--r-- 1 scylla scylla 656 11月25日23:24 mc-1774537-big-Filter.db
-rw-r--r-- 1 scylla scylla 67974 Nov 25 23:24 mc-1774537-big-Index.db
-rw-r--r-- 1 scylla scylla 54 Nov 25 23:24 mc-1774537-big-Scylla.db
-rw-r--r-- 1 scylla scylla 6234 Nov 25 23:24 mc-1774537-big-Statistics.db
-rw-r--r-- 1 scylla scylla 176 Nov 25 23:24 mc-1774537-big-Summary.db
-rw-r--r-- 1 scylla scylla 102 Nov 25 23:24 mc-1774537-big-TOC.txt drwx ------ 2 scylla scylla 21年2月6日 2019分期drwx ------ 2 scylla scylla 2019年2月6日上传
修改时间非常新鲜,因此实际上可能发生了一些压缩。
我的表配置:
CREATE TABLE my_table (
f1 uuid,
f2 tinyint,
c boolean,
PRIMARY KEY (f1, f2)
) WITH CLUSTERING ORDER BY (f1 ASC)
AND bloom_filter_fp_chance = 0.01
AND caching = {'keys': 'ALL', 'rows_per_partition': 'ALL'}
AND comment = ''
AND compaction = {'class': 'SizeTieredCompactionStrategy'}
AND compression = {'sstable_compression': 'org.apache.cassandra.io.compress.LZ4Compressor'}
AND crc_check_chance = 1.0
AND dclocal_read_repair_chance = 0.1
AND default_time_to_live = 0
AND gc_grace_seconds = 864000
AND max_index_interval = 2048
AND memtable_flush_period_in_ms = 0
AND min_index_interval = 128
AND read_repair_chance = 0.0
AND speculative_retry = '99.0PERCENTILE';
可能是什么问题?
答案 0 :(得分:4)
nodetool cfstats
https://docs.scylladb.com/operating-scylla/nodetool-commands/cfstats/中的统计信息进行比较,以检查已知的表大小和逻辑删除的平均数量,以了解您在磁盘上看到的内容。考虑到结果,您将可以从那里移走。
答案 1 :(得分:4)
墓碑在gc_grace_period
上保持活动状态,默认情况下为10天。这是为了防止数据复活,即确保每个数据落入逻辑删除的节点都能通过修复获得该逻辑删除。
您的查询可能正在读取成千上万的墓碑,而没有找到任何要返回的内容。