в клауде это дефолт.
Zstd 1 жрет чуть больше процессора и замедляет запросы чуть чуть. Если есть какая-то критичная коллнка, постоянно ее кверяют и она маленькая уже, то наверное нет смысла. Для строк всегда zstd 1. Zstd уровни выше 1го, использовать осторожно, они жрут cpu.
На своей бд я померял так - попросил sum(crc32(text_column)). Предварительно насоздавал там столбцы с одинаковыми данными, но разным сжатием. Разницы не заметил. Возможно слишком мелкая таблица.
Данные залили и не меняют апдейтами, только drop partition. Я проверю сжатие каждой колонки отдельно чтобы понять стоит ли.
Я же сказал что не для строк. Для строк конечно лучше zstd, ускорение просто за счёт меньше с диска читать. Страдают от zstd пациенты у которых 2 cpu в виртуалке.
ZSTD(1) почти всегда лучше. Есть редкие исключения - когда большинство запросов использует page cache или на сервере очень хорошая дисковая подсистема, а вот ядер, наоборот, мало.
Обсуждают сегодня