powered by simpleCommunicator - 2.0.60     © 2026 Programmizd 02
Целевая тема:
Создать новую тему:
Автор:
Закрыть
Цитировать
Форумы / Microsoft SQL Server [игнор отключен] [закрыт для гостей] / Постраничное сжатие в SQL17 (+/-) ?
20 сообщений из 20, страница 1 из 1
Постраничное сжатие в SQL17 (+/-) ?
    #39881345
senn
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
У кого есть опыт использования страничного сжатия таблиц? (SQL 2017)

Интересует положительный/отрицательный (последний больше) опыт. Особенность, как я понимаю, относительно свежая (SQL 2016).
Положительные стороны более или менее очевидны. Интересуют грабли, на которые можно наступить (кроме анонсированного MS требовательности к cpu).
Имеет ли смысл в DWH включать эту опцию по умолчанию, или все же от определенного (от какого?) объема данных в таблице.
Влияние сжатия на разные форматы данных понятно.
Надо ли, для часто обновляемых таблиц, повторять инструкцию
ALTER TABLE MyTab REBUILD PARTITION = ALL WITH (DATA_COMPRESSION = PAGE);

по аналогии с ребилдом индекса, или это происходит автоматически? Как я понял - нет, но где-то проскочило, что вроде бы нужно..

Спасибо!
...
Рейтинг: 0 / 0
Постраничное сжатие в SQL17 (+/-) ?
    #39881361
Фотография Yasha123
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
sennОсобенность, как я понимаю, относительно свежая (SQL 2016).

ваша осетрина второй свежести.
page compression появилось в 2008.
опыт положителен.
очень не хватает этого в Стандарде
...
Рейтинг: 0 / 0
Постраничное сжатие в SQL17 (+/-) ?
    #39881364
senn
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Yasha123,

"осетрина второй свежести" имеет отрицательную коннотацию, а опыт положительный))

Спасибо, я исходил из того, что статья в MSDN, на версии ниже 2016 не давала инфу (вероятно изменился источник ссылки).

Опыт у меня тоже положительный, а хотелось бы услышать что-то плохое))
...
Рейтинг: 0 / 0
Постраничное сжатие в SQL17 (+/-) ?
    #39881367
TaPaK
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
senn,

Всё подрят не знаю зачем, смотрите sp_estimate_data_compression_savings и решаете
...
Рейтинг: 0 / 0
Постраничное сжатие в SQL17 (+/-) ?
    #39881444
Владислав Колосов
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
senn,

используйте, если изменение схем таблиц происходит крайне редко, т.к. при этом происходит полная перепаковка с потреблением ресурсов и даунтаймом.
...
Рейтинг: 0 / 0
Постраничное сжатие в SQL17 (+/-) ?
    #39881445
Фотография Yasha123
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
senn"осетрина второй свежести" имеет отрицательную коннотацию, а опыт положительный))

я всегда точно цитирую фразу, на которую отвечаю,
фиче 10+ лет, поэтому и свежесть соответствующая :)

разумеется, компрессию не надо всюду включать,
но текстового мусора всегда хватает и там это помогает.
+ на всех мне достающихся серверах вечный нехват оперативки,
так что компрессия спасала, пока были Энтерпрайзы.
на Стандарде ни компрессии, ни колумнсторов, все продумано,
чтобы заставить покупать 2016 или же Энтерпрайз...
...
Рейтинг: 0 / 0
Постраничное сжатие в SQL17 (+/-) ?
    #39881450
msLex
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
sennУ кого есть опыт использования страничного сжатия таблиц? (SQL 2017)

Интересует положительный/отрицательный (последний больше) опыт. Особенность, как я понимаю, относительно свежая (SQL 2016).
Положительные стороны более или менее очевидны. Интересуют грабли, на которые можно наступить (кроме анонсированного MS требовательности к cpu).
Имеет ли смысл в DWH включать эту опцию по умолчанию, или все же от определенного (от какого?) объема данных в таблице.
Влияние сжатия на разные форматы данных понятно.
Надо ли, для часто обновляемых таблиц, повторять инструкцию
ALTER TABLE MyTab REBUILD PARTITION = ALL WITH (DATA_COMPRESSION = PAGE);

по аналогии с ребилдом индекса, или это происходит автоматически? Как я понял - нет, но где-то проскочило, что вроде бы нужно..

Спасибо!

Никаких отрицательных момент (ну кроме чуть большего расхода CPU) не обнаружено.
У нас, постраничное сжатие данных включено на всех таблицах.
Помимо явного плюса "освобождение дискового пространства", есть и более приятный бонус - большее количество данных, вмещающихся в тот же объем RAM, а значит уменьшение IOPS.

Польза второго бонуса в DWH сильно зависит от структуры запросов и соотношения RAM/DB Size

Если большая часть запросов идут к последним секциям, и данные этих секций умещаются в RAM без сжатия, профит будет меньше
Если большая часть запросов идут к последним секциям, и данные этих секций не умещаются в RAM без сжатия, профит будет больше
...
Рейтинг: 0 / 0
Постраничное сжатие в SQL17 (+/-) ?
    #39881683
Фотография alexeyvg
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
sennИнтересует положительный/отрицательный (последний больше) опыт. Особенность, как я понимаю, относительно свежая (SQL 2016).
Положительные стороны более или менее очевидны. Интересуют грабли, на которые можно наступить (кроме анонсированного MS требовательности к cpu).
Имеет ли смысл в DWH включать эту опцию по умолчанию, или все же от определенного (от какого?) объема данных в таблице.Катастрофически деградирует скорость вставки bulk insert, в связи с тем, что компрессия делается одним ядром, и скорость вставки ограничена единицами мб/сек, независимо от железа.

Правда, это было на 2008 R2, может, сейчас пофиксили?
...
Рейтинг: 0 / 0
Постраничное сжатие в SQL17 (+/-) ?
    #39881715
Remind
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
В DWH имееть смысл подумать над columnstore
...
Рейтинг: 0 / 0
Постраничное сжатие в SQL17 (+/-) ?
    #39882178
VicSO
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
Еще насколько я понял (DATA_COMPRESSION = PAGE);
для ALTER INDEX [еее] ON [ее] REBUILD WITH ( ONLINE = ON ) обрабатывается по другому.
...
Рейтинг: 0 / 0
Постраничное сжатие в SQL17 (+/-) ?
    #39882435
vitkhv
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
senn,
Вполне положительный опыт на редко используемых данных. На часто используемых стараюсь не включать компрессию.
Хотя работал и с полностью сжатыми базами с достаточно высокой нагрузкой как разработчик, не сказал бы что там был прям критичный провал в производительности.
...
Рейтинг: 0 / 0
Постраничное сжатие в SQL17 (+/-) ?
    #39882436
msLex
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
VicSOЕще насколько я понял (DATA_COMPRESSION = PAGE);
для ALTER INDEX [еее] ON [ее] REBUILD WITH ( ONLINE = ON ) обрабатывается по другому.
А что именно другого?
...
Рейтинг: 0 / 0
Постраничное сжатие в SQL17 (+/-) ?
    #39883581
VicSO
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
msLex,

Как выяснил, если работать с жатой таблицей и делать REBUILD WITH ( ONLINE = ON )
То данная операция разжимает и потом повторно сжимает. Естественно лог в этом случае забивается хорошо.
то есть если сделать REBUILD WITH ( ONLINE = OFF ) то лог транзакций будет 50 гб, но если сделать REBUILD WITH ( ONLINE = ON ) то лог транзакций будет уже под 300гигов
Пока обратного подтверждения не получил, более подробно ссылка ниже.
https://www.sql.ru/forum/1318488/problema-s-alter-index-rebuild-online-on
...
Рейтинг: 0 / 0
Постраничное сжатие в SQL17 (+/-) ?
    #39883593
Фотография a_voronin
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
senn,

COLUMSTRORE жмет сильней чем PAGE COMPRESSION. Попробуйте его, если не наткнетесь на ограничения. На 2016 он уже хорошо оптимизирован под вставку
...
Рейтинг: 0 / 0
Постраничное сжатие в SQL17 (+/-) ?
    #39883596
Фотография a_voronin
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
sennИмеет ли смысл в DWH включать эту опцию по умолчанию, или все же от определенного (от какого?) объема данных в таблице.


Конкретно в DWH очень сильно не рекомендую. Юзайте COLUMNSTORE COLUMNSTORE_ARCHIVE
...
Рейтинг: 0 / 0
Постраничное сжатие в SQL17 (+/-) ?
    #39883600
msLex
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
VicSOmsLex,

Как выяснил, если работать с жатой таблицей и делать REBUILD WITH ( ONLINE = ON )
То данная операция разжимает и потом повторно сжимает. Естественно лог в этом случае забивается хорошо.
то есть если сделать REBUILD WITH ( ONLINE = OFF ) то лог транзакций будет 50 гб, но если сделать REBUILD WITH ( ONLINE = ON ) то лог транзакций будет уже под 300гигов
Пока обратного подтверждения не получил, более подробно ссылка ниже.
https://www.sql.ru/forum/1318488/problema-s-alter-index-rebuild-online-on


rebuild всегда будет "разжимать/сжимать" данные, т.к. он перераспределяет данные по страницам.
...
Рейтинг: 0 / 0
Постраничное сжатие в SQL17 (+/-) ?
    #39883608
Владислав Колосов
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Расщепление страниц также должно выполнять перепаковку.
...
Рейтинг: 0 / 0
Постраничное сжатие в SQL17 (+/-) ?
    #39883950
VicSO
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
msLex,
Но такого при REBUILD WITH ( ONLINE = OFF ) нету, лог не забивается. как при ON
...
Рейтинг: 0 / 0
Постраничное сжатие в SQL17 (+/-) ?
    #39883954
msLex
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
VicSOmsLex,
Но такого при REBUILD WITH ( ONLINE = OFF ) нету, лог не забивается. как при ON
У этого могут быть разные причины, но с постраничным сжатием это не связанно.
...
Рейтинг: 0 / 0
Постраничное сжатие в SQL17 (+/-) ?
    #39884135
VicSO
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
msLex,

Какие можете назвать?
Пока только нашел в этом проблему.
то есть если взять оригинальный индекс (не сжатый) то он на генерит 300гиг в OFF и 340гигов в ON ту то понятно и это норма.
Но вот если его упаковать, и получится он 50 гигов, то при OFF получится 50гигов, но вот при ON то получится уже 340гигов, то есть обрабатывает его как не жатый.
...
Рейтинг: 0 / 0
20 сообщений из 20, страница 1 из 1
Форумы / Microsoft SQL Server [игнор отключен] [закрыт для гостей] / Постраничное сжатие в SQL17 (+/-) ?
Найденые пользователи ...
Разблокировать пользователей ...
Читали форум (0):
Пользователи онлайн (0):
x
x
Закрыть


Просмотр
0 / 0
Close
Debug Console [Select Text]