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

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

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

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

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

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

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

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

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

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

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

разумеется, компрессию не надо всюду включать,
но текстового мусора всегда хватает и там это помогает.
+ на всех мне достающихся серверах вечный нехват оперативки,
так что компрессия спасала, пока были Энтерпрайзы.
на Стандарде ни компрессии, ни колумнсторов, все продумано,
чтобы заставить покупать 2016 или же Энтерпрайз...
...
Рейтинг: 0 / 0
25.10.2019, 12:01
    #39881450
msLex
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Постраничное сжатие в SQL17 (+/-) ?
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
25.10.2019, 17:01
    #39881683
alexeyvg
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Постраничное сжатие в SQL17 (+/-) ?
sennИнтересует положительный/отрицательный (последний больше) опыт. Особенность, как я понимаю, относительно свежая (SQL 2016).
Положительные стороны более или менее очевидны. Интересуют грабли, на которые можно наступить (кроме анонсированного MS требовательности к cpu).
Имеет ли смысл в DWH включать эту опцию по умолчанию, или все же от определенного (от какого?) объема данных в таблице.Катастрофически деградирует скорость вставки bulk insert, в связи с тем, что компрессия делается одним ядром, и скорость вставки ограничена единицами мб/сек, независимо от железа.

Правда, это было на 2008 R2, может, сейчас пофиксили?
...
Рейтинг: 0 / 0
25.10.2019, 18:01
    #39881715
Remind
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Постраничное сжатие в SQL17 (+/-) ?
В DWH имееть смысл подумать над columnstore
...
Рейтинг: 0 / 0
28.10.2019, 09:19
    #39882178
VicSO
Гость
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Постраничное сжатие в SQL17 (+/-) ?
Еще насколько я понял (DATA_COMPRESSION = PAGE);
для ALTER INDEX [еее] ON [ее] REBUILD WITH ( ONLINE = ON ) обрабатывается по другому.
...
Рейтинг: 0 / 0
28.10.2019, 18:37
    #39882435
vitkhv
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Постраничное сжатие в SQL17 (+/-) ?
senn,
Вполне положительный опыт на редко используемых данных. На часто используемых стараюсь не включать компрессию.
Хотя работал и с полностью сжатыми базами с достаточно высокой нагрузкой как разработчик, не сказал бы что там был прям критичный провал в производительности.
...
Рейтинг: 0 / 0
28.10.2019, 18:41
    #39882436
msLex
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Постраничное сжатие в SQL17 (+/-) ?
VicSOЕще насколько я понял (DATA_COMPRESSION = PAGE);
для ALTER INDEX [еее] ON [ее] REBUILD WITH ( ONLINE = ON ) обрабатывается по другому.
А что именно другого?
...
Рейтинг: 0 / 0
31.10.2019, 13:21
    #39883581
VicSO
Гость
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Постраничное сжатие в SQL17 (+/-) ?
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
31.10.2019, 13:36
    #39883593
a_voronin
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Постраничное сжатие в SQL17 (+/-) ?
senn,

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


Конкретно в DWH очень сильно не рекомендую. Юзайте COLUMNSTORE COLUMNSTORE_ARCHIVE
...
Рейтинг: 0 / 0
31.10.2019, 13:43
    #39883600
msLex
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Постраничное сжатие в SQL17 (+/-) ?
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
31.10.2019, 14:01
    #39883608
Владислав Колосов
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Постраничное сжатие в SQL17 (+/-) ?
Расщепление страниц также должно выполнять перепаковку.
...
Рейтинг: 0 / 0
01.11.2019, 07:19
    #39883950
VicSO
Гость
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Постраничное сжатие в SQL17 (+/-) ?
msLex,
Но такого при REBUILD WITH ( ONLINE = OFF ) нету, лог не забивается. как при ON
...
Рейтинг: 0 / 0
01.11.2019, 07:37
    #39883954
msLex
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Постраничное сжатие в SQL17 (+/-) ?
VicSOmsLex,
Но такого при REBUILD WITH ( ONLINE = OFF ) нету, лог не забивается. как при ON
У этого могут быть разные причины, но с постраничным сжатием это не связанно.
...
Рейтинг: 0 / 0
01.11.2019, 11:47
    #39884135
VicSO
Гость
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Постраничное сжатие в SQL17 (+/-) ?
msLex,

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


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