TABLE cloki.samples_v3
(
`fingerprint` UInt64,
`timestamp_ns` Int64 CODEC(DoubleDelta),
`value` Float64 CODEC(Gorilla),
`string` String
)
ENGINE = MergeTree
PARTITION BY toStartOfDay(toDateTime(timestamp_ns / 1000000000))
ORDER BY timestamp_ns
TTL toDateTime(timestamp_ns / 1000000000) + toIntervalDay(7)
SETTINGS index_granularity = 8192, ttl_only_drop_parts = 1, merge_with_ttl_timeout = 3600 │
в system.parts вижу партиции которые должны были быть удалены
select partition, name, rows, min_date, max_date , delete_ttl_info_min, delete_ttl_info_max from system.parts where table = 'samples_v3' and database ='cloki' LIMIT 10;
┌─partition───────────┬─name───────────────────────────────────────┬─────rows─┬───min_date─┬───max_date─┬─delete_ttl_info_min─┬─delete_ttl_info_max─┐
│ 2023-04-30 00:00:00 │ 1682812800_36717406_37144828_2505_39132173 │ 7954755 │ 1970-01-01 │ 1970-01-01 │ 2023-05-07 10:57:57 │ 2023-05-07 23:59:59 │
│ 2023-05-01 00:00:00 │ 1682899200_37144819_37583325_2039_39132173 │ 14107384 │ 1970-01-01 │ 1970-01-01 │ 2023-05-08 00:00:00 │ 2023-05-08 23:59:59 │
│ 2023-05-02 00:00:00 │ 1682985600_37583314_38019847_2111_39132173 │ 16662043 │ 1970-01-01 │ 1970-01-01 │ 2023-05-09 00:00:00 │ 2023-05-09 23:59:59 │
│ 2023-05-03 00:00:00 │ 1683072000_38019843_38452763_1978_39132173 │ 15928453 │ 1970-01-01 │ 1970-01-01 │ 2023-05-10 00:00:00 │ 2023-05-10 23:59:59 │
│ 2023-05-04 00:00:00 │ 1683158400_38452754_38885534_2084_39132173 │ 13377753 │ 1970-01-01 │ 1970-01-01 │ 2023-05-11 00:00:00 │ 2023-05-11 23:59:59 │
│ 2023-05-05 00:00:00 │ 1683244800_38885529_39314116_2095_39132173 │ 13577006 │ 1970-01-01 │ 1970-01-01 │ 2023-05-12 00:00:00 │ 2023-05-12 23:59:59 │
│ 2023-05-06 00:00:00 │ 1683331200_39314107_39742873_1984 │ 15699660 │ 1970-01-01 │ 1970-01-01 │ 2023-05-13 00:00:00 │ 2023-05-13 23:59:59 │
│ 2023-05-07 00:00:00 │ 1683417600_39742870_39938596_2205 │ 5862221 │ 1970-01-01 │ 1970-01-01 │ 2023-05-14 00:00:00 │ 2023-05-14 10:57:12 │
│ 2023-05-07 00:00:00 │ 1683417600_39938597_40043923_1989 │ 2758409 │ 1970-01-01 │ 1970-01-01 │ 2023-05-14 10:57:11 │ 2023-05-14 16:55:26 │
│ 2023-05-07 00:00:00 │ 1683417600_40043924_40063801_1854 │ 517115 │ 1970-01-01 │ 1970-01-01 │ 2023-05-14 16:55:25 │ 2023-05-14 18:03:24 │
Анализируя вставки новых данных вижу что данные идут мелкими кусками и часто и такая картина всегда, что не по каннам КХ
SELECT event_type, event_time, rows FROM part_log WHERE table = 'samples_v3' and event_type = 'NewPart' LIMIT 20;
┌─event_type─┬──────────event_time─┬─rows─┐
│ NewPart │ 2023-05-08 16:29:23 │ 21 │
│ NewPart │ 2023-05-08 16:29:23 │ 9 │
│ NewPart │ 2023-05-08 16:29:24 │ 9 │
│ NewPart │ 2023-05-08 16:29:24 │ 103 │
│ NewPart │ 2023-05-08 16:29:24 │ 131 │
│ NewPart │ 2023-05-08 16:29:25 │ 10 │
│ NewPart │ 2023-05-08 16:29:25 │ 2 │
│ NewPart │ 2023-05-08 16:29:25 │ 13 │
│ NewPart │ 2023-05-08 16:29:25 │ 23 │
│ NewPart │ 2023-05-08 16:29:25 │ 4 │
│ NewPart │ 2023-05-08 16:29:26 │ 31 │
│ NewPart │ 2023-05-08 16:29:26 │ 5 │
│ NewPart │ 2023-05-08 16:29:26 │ 8 │
│ NewPart │ 2023-05-08 16:29:26 │ 3 │
│ NewPart │ 2023-05-08 16:29:27 │ 13 │
│ NewPart │ 2023-05-08 16:29:27 │ 56 │
│ NewPart │ 2023-05-08 16:29:27 │ 30 │
│ NewPart │ 2023-05-08 16:29:27 │ 9 │
│ NewPart │ 2023-05-08 16:29:28 │ 10 │
│ NewPart │ 2023-05-08 16:29:28 │ 8 │
└────────────┴─────────────────────┴──────┘
Есть подозрения что КХ не успевает их мержить и удалять по TTL, так как занят другим, работой с новыми данными, такое может быть?
а есть еще таблицы с TTL ? SELECT name, value FROM system.merge_tree_settings AS setting WHERE name IN ('max_replicated_merges_with_ttl_in_queue', 'max_number_of_merges_with_ttl_in_pool') ┌─name────────────────────────────────────┬─value─┐ │ max_replicated_merges_with_ttl_in_queue │ 1 │ │ max_number_of_merges_with_ttl_in_pool │ 2 │ └─────────────────────────────────────────┴───────┘
┌─name────────────────────────────────────┬─value─┐ │ max_replicated_merges_with_ttl_in_queue │ 1 │ │ max_number_of_merges_with_ttl_in_pool │ 2 │
Есть но там тоже не удаляются ┌─statement──────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────┐ │ CREATE TABLE cloki.time_series ( `date` Date, `fingerprint` UInt64, `labels` String, `name` String ) ENGINE = ReplacingMergeTree(date) PARTITION BY date ORDER BY fingerprint TTL date + toIntervalDay(7) SETTINGS index_granularity = 8192, ttl_only_drop_parts = 1, merge_with_ttl_timeout = 3600 │
Обсуждают сегодня