【发布时间】:2019-12-15 20:15:44
【问题描述】:
有 Cassandra 表:
CREATE TABLE data.data (
dataid bigint,
sequencenumber bigint,
createdat timestamp,
datetime timestamp,
PRIMARY KEY (dataid, sequencenumber)) WITH CLUSTERING ORDER BY (sequencenumber ASC)
AND bloom_filter_fp_chance = 0.01
AND caching = {'keys': 'ALL', 'rows_per_partition': 'NONE'}
AND comment = ''
AND compaction = {'class': 'org.apache.cassandra.db.compaction.TimeWindowCompactionStrategy', 'compaction_window_size': '7', 'compaction_window_unit': 'DAYS', 'max_threshold': '32', 'min_threshold': '4'}
AND compression = {'chunk_length_in_kb': '64', 'class': '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 = 3600
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 = '99PERCENTILE';
CREATE INDEX data_datetime_idx ON data.data(datetime);
使用写入选项 ttl 写入 7 天的数据。 我注意到,每周的同一天,我们都会遇到大的 Cassandra 节点负载,尤其是大 wa (I/O)。我认为这与压缩策略有关。我是否应该将此策略与较小的 compaction_window_strategy 一起使用,例如3天?如何使用 ttl 调整压缩策略?这些参数如何关联? O 也许我的主键有误?
Cassandra ring 3 个节点,8CPU,16GB 内存。每个节点加载 ~90GiB。
【问题讨论】:
标签: cassandra