тип лучше указывать для domain (динамическая длина или нет, если нет то какая используется в проектах Метрики)? Аналогично, насолько приемлимо хранить URL без указания длины?
2) Максимальный размер записи (все столбцы) около 1500 байт. Размер индекса 130 байт (не включает тектовые данные). Планируется получать данные, идущие подряд от 20 шт.
Гранулированность индекса хочу задать 20 кб (всето по умолчанию 8кб). Таким образом, это должно снизить число поднимаемых кусочков, увеличить их рамзер и улучшить сжатие данных.
Данный подход верный? Насколько большим можно задавать гранулированность индекса (на практике планиурется получение данных идущих подряд по 200 шт.)?
1. String 2. 8192, насколько я помню, это не байты, а штуки строк.
1. Используйте String. А FixedString стоит использовать лишь тогда, когда строка имеет фиксированную длину по естественным причинам. Пример: значение хэш-функции в бинарном виде; код языка, код валюты. Есть к сожалению распространённый случай, когда по ошибке используют, например, FixedString(1000) для URL. Это не оптимизация, а наоборот - станет только хуже.
2. Гранулированность индекса оставьте как рекомендуется - 8192. Это величина в числе строк. Кстати, гранулированность индекса почти не влияет на сжатие, так как для сжатия используются другие размеры. Если интересно, смотрите min_compress_block_size, max_compress_block_size в Settings.h. Менять их тоже не надо.
Обсуждают сегодня