таблице за определенный день?
условно мне нужно знать скольок весят данные за 10/10/2023 в таблице my_table
Только на текущий момент
если партиционирование дневное в таблице, то по в system.parts можно точно узнать сколько занимает. Если нет, то примерно по соотношению числа строк в этом дне к общему числу строк в партиции или таблице
мне нужно оценить размер данный по каждому дню что бы грузить их чанками. тогда как можно оценить сколько можно брать чанков ?
Загрузите пачку и посмотрите насколько изменилось место?
смотрите system.part_log по event_type = 'NewPart', там будет время вставки, число строк и размер
Так же для примерной оценки можно создать дубль таблицы и нагнать туда данные за необходимый период, если в system.part_log данных уже не будет.
посчитайте avg размер строки да умножте на кол-во строк
а средний размер строки как посчитать?
SELECT database, table, formatReadableSize(sum(data_compressed_bytes) AS size) AS compressed, formatReadableSize(sum(data_uncompressed_bytes) AS usize) AS uncompressed, round(usize / size, 2) AS compr_rate, sum(rows) AS rows, size / rows avg_size, count() AS part_count FROM system.parts WHERE (active = 1) AND (database LIKE '%') AND (table LIKE '%') GROUP BY database, table ORDER BY size DESC;
Обсуждают сегодня