2016-07-26 10 views
2

Мы используем DSE 4.8.8 с OpsCenter 5.2.4. Все наши OpsCenter.rollups* столы растут вечно, особенно rollups60 один:Накопители OpsCenter * столы растут вечно

Size of rollups60, 1 month

ключевого пространства OpsCenter использует org.apache.cassandra.locator.NetworkTopologyStrategy, DC1 1, DC2 1

настройки Таблица:

CREATE TABLE "OpsCenter".rollups60 (
    key text, 
    "timestamp" varint, 
    value blob, 
    PRIMARY KEY (key, "timestamp") 
) WITH COMPACT STORAGE 
    AND CLUSTERING ORDER BY ("timestamp" ASC) 
    AND bloom_filter_fp_chance = 0.01 
    AND caching = '{"keys":"ALL", "rows_per_partition":"NONE"}' 
    AND comment = '{"info": "OpsCenter management data.", "version": [5, 2, 1]}' 
    AND compaction = {'class': 'org.apache.cassandra.db.compaction.SizeTieredCompactionStrategy'} 
    AND compression = {'sstable_compression': 'org.apache.cassandra.io.compress.LZ4Compressor'} 
    AND dclocal_read_repair_chance = 0.0 
    AND default_time_to_live = 0 
    AND gc_grace_seconds = 0 
    AND max_index_interval = 2048 
    AND memtable_flush_period_in_ms = 0 
    AND min_index_interval = 128 
    AND read_repair_chance = 0.25 
    AND speculative_retry = 'NONE'; 

Запись не имеет TTL по столбцам key и timestamp и TTL с 604618 на колонке value.

Любая идея, как исправить это? Я уже попробовал TRUNCATE, как описано здесь: Datastax support

ответ

0

Вы можете установить 1 минуту (Накопительный 60 таблица) ТТЛ с помощью файла кластера конфигурации: https://docs.datastax.com/en/latest-opsc/opsc/configure/opscChangingPerformanceDataExpiration_t.html

[cassandra_metrics] 

1min_ttl = 43200 
5min_ttl = 1209600 
2hr_ttl = 0 
24hr_ttl = 0 

Это также может быть установлен в address.yaml на каждом ваших агентов. Однако проще установить конфигурацию кластера OpsCenter.

Вы можете немного изменить настройки таблицы, чтобы улучшить очистку надгробных камней.

ALTER TABLE "OpsCenter".rollups60 WITH 
    compaction = {'class': 'SizeTieredCompactionStrategy', 
    'tombstone_compaction_interval': '1', 
    'unchecked_tombstone_compaction': 'true', 
    'tombstone_threshold': '0.05'} AND 
    gc_grace_seconds = 0 

Чтобы быть более агрессивным, вы можете использовать LCS, но это увеличивает использование IO. Ради вашего сценария, хотя, вероятно, Ok как (по крайней мере, с опцией ttl выше), на самом деле у вас не так много данных для хранения.

ALTER TABLE "OpsCenter".rollups60 WITH 
    compaction = {'class': 'LeveledCompactionStrategy', 
    'sstable_size_in_mb': '256mb', 
    'tombstone_compaction_interval': '1', 
    'unchecked_tombstone_compaction': 'true', 
    'tombstone_threshold': '0.05'} AND 
    gc_grace_seconds = 0