Сжатие столбцов (MariaDB 10.3.3>)
Обнаружил такую приятную функцию как сжатие столбцов: https://mariadb.com/kb/en/library/storage-engine-independent-column-compression/ Под сжатие можно пустить: TINYBLOB, BLOB, MEDIUMBLOB, LONGBLOB, TINYTEXT, TEXT, MEDIUMTEXT, LONGTEXT,...
Обнаружил такую приятную функцию как сжатие столбцов:
https://mariadb.com/kb/en/library/st...n-compression/
Под сжатие можно пустить:
TINYBLOB, BLOB, MEDIUMBLOB, LONGBLOB, TINYTEXT, TEXT, MEDIUMTEXT, LONGTEXT, VARCHAR, VARBINARY
Индексные столбцы нельзя, но это и не нужно.
Самая главная разница этого формата в отличии от полного сжатия таблицы, это не падающая производительность таблицы.
Я уже загнал на пары новостных сайтов, все столбцы с новостями и анонсами. Уменьшение примерно в 2-а раза.
Меньше место на диске, быстрее делается бэкап, быстрее считываются данные. Все настройка по умолчанию, они меня устраивают.
Доступ к этим столбцам точно такой же, никаких проблем экспорт/импорт. Всё делается прозрачно.
Чтобы сжать существующие столбцы достаточно выполнить:
alter table `tablename` modify `col1` text compressed;
Для нескольких:
alter table `tablename` modify `col1` text compressed,modify `col2` text compressed;
Если столбцов много и таблица большая, то лучше делать сразу для всех. Иначе будет копирование полностью таблицы для каждой команды. А если таблица более 1 ГБ это уже не быстро, особенно на HDD.
https://mariadb.com/kb/en/library/st...n-compression/
Под сжатие можно пустить:
TINYBLOB, BLOB, MEDIUMBLOB, LONGBLOB, TINYTEXT, TEXT, MEDIUMTEXT, LONGTEXT, VARCHAR, VARBINARY
Индексные столбцы нельзя, но это и не нужно.
Самая главная разница этого формата в отличии от полного сжатия таблицы, это не падающая производительность таблицы.
Я уже загнал на пары новостных сайтов, все столбцы с новостями и анонсами. Уменьшение примерно в 2-а раза.
Меньше место на диске, быстрее делается бэкап, быстрее считываются данные. Все настройка по умолчанию, они меня устраивают.
Доступ к этим столбцам точно такой же, никаких проблем экспорт/импорт. Всё делается прозрачно.
Чтобы сжать существующие столбцы достаточно выполнить:
alter table `tablename` modify `col1` text compressed;
Для нескольких:
alter table `tablename` modify `col1` text compressed,modify `col2` text compressed;
Если столбцов много и таблица большая, то лучше делать сразу для всех. Иначе будет копирование полностью таблицы для каждой команды. А если таблица более 1 ГБ это уже не быстро, особенно на HDD.