Этот баннер — требование Роскомнадзора для исполнения 152 ФЗ.
«На сайте осуществляется обработка файлов cookie, необходимых для работы сайта, а также для анализа использования сайта и улучшения предоставляемых сервисов с использованием метрической программы Яндекс.Метрика. Продолжая использовать сайт, вы даёте согласие с использованием данных технологий».
Политика конфиденциальности
|
|
|
Постраничное сжатие в SQL17 (+/-) ?
|
|||
|---|---|---|---|
|
#18+
У кого есть опыт использования страничного сжатия таблиц? (SQL 2017) Интересует положительный/отрицательный (последний больше) опыт. Особенность, как я понимаю, относительно свежая (SQL 2016). Положительные стороны более или менее очевидны. Интересуют грабли, на которые можно наступить (кроме анонсированного MS требовательности к cpu). Имеет ли смысл в DWH включать эту опцию по умолчанию, или все же от определенного (от какого?) объема данных в таблице. Влияние сжатия на разные форматы данных понятно. Надо ли, для часто обновляемых таблиц, повторять инструкцию ALTER TABLE MyTab REBUILD PARTITION = ALL WITH (DATA_COMPRESSION = PAGE); по аналогии с ребилдом индекса, или это происходит автоматически? Как я понял - нет, но где-то проскочило, что вроде бы нужно.. Спасибо! ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 25.10.2019, 09:45 |
|
||
|
Постраничное сжатие в SQL17 (+/-) ?
|
|||
|---|---|---|---|
|
#18+
sennОсобенность, как я понимаю, относительно свежая (SQL 2016). ваша осетрина второй свежести. page compression появилось в 2008. опыт положителен. очень не хватает этого в Стандарде ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 25.10.2019, 10:02 |
|
||
|
Постраничное сжатие в SQL17 (+/-) ?
|
|||
|---|---|---|---|
|
#18+
Yasha123, "осетрина второй свежести" имеет отрицательную коннотацию, а опыт положительный)) Спасибо, я исходил из того, что статья в MSDN, на версии ниже 2016 не давала инфу (вероятно изменился источник ссылки). Опыт у меня тоже положительный, а хотелось бы услышать что-то плохое)) ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 25.10.2019, 10:06 |
|
||
|
Постраничное сжатие в SQL17 (+/-) ?
|
|||
|---|---|---|---|
|
#18+
senn, Всё подрят не знаю зачем, смотрите sp_estimate_data_compression_savings и решаете ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 25.10.2019, 10:11 |
|
||
|
Постраничное сжатие в SQL17 (+/-) ?
|
|||
|---|---|---|---|
|
#18+
senn, используйте, если изменение схем таблиц происходит крайне редко, т.к. при этом происходит полная перепаковка с потреблением ресурсов и даунтаймом. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 25.10.2019, 11:52 |
|
||
|
Постраничное сжатие в SQL17 (+/-) ?
|
|||
|---|---|---|---|
|
#18+
senn"осетрина второй свежести" имеет отрицательную коннотацию, а опыт положительный)) я всегда точно цитирую фразу, на которую отвечаю, фиче 10+ лет, поэтому и свежесть соответствующая :) разумеется, компрессию не надо всюду включать, но текстового мусора всегда хватает и там это помогает. + на всех мне достающихся серверах вечный нехват оперативки, так что компрессия спасала, пока были Энтерпрайзы. на Стандарде ни компрессии, ни колумнсторов, все продумано, чтобы заставить покупать 2016 или же Энтерпрайз... ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 25.10.2019, 11:53 |
|
||
|
Постраничное сжатие в SQL17 (+/-) ?
|
|||
|---|---|---|---|
|
#18+
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 без сжатия, профит будет больше ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 25.10.2019, 12:01 |
|
||
|
Постраничное сжатие в SQL17 (+/-) ?
|
|||
|---|---|---|---|
|
#18+
sennИнтересует положительный/отрицательный (последний больше) опыт. Особенность, как я понимаю, относительно свежая (SQL 2016). Положительные стороны более или менее очевидны. Интересуют грабли, на которые можно наступить (кроме анонсированного MS требовательности к cpu). Имеет ли смысл в DWH включать эту опцию по умолчанию, или все же от определенного (от какого?) объема данных в таблице.Катастрофически деградирует скорость вставки bulk insert, в связи с тем, что компрессия делается одним ядром, и скорость вставки ограничена единицами мб/сек, независимо от железа. Правда, это было на 2008 R2, может, сейчас пофиксили? ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 25.10.2019, 17:01 |
|
||
|
Постраничное сжатие в SQL17 (+/-) ?
|
|||
|---|---|---|---|
|
#18+
В DWH имееть смысл подумать над columnstore ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 25.10.2019, 18:01 |
|
||
|
Постраничное сжатие в SQL17 (+/-) ?
|
|||
|---|---|---|---|
|
#18+
Еще насколько я понял (DATA_COMPRESSION = PAGE); для ALTER INDEX [еее] ON [ее] REBUILD WITH ( ONLINE = ON ) обрабатывается по другому. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 28.10.2019, 09:19 |
|
||
|
Постраничное сжатие в SQL17 (+/-) ?
|
|||
|---|---|---|---|
|
#18+
senn, Вполне положительный опыт на редко используемых данных. На часто используемых стараюсь не включать компрессию. Хотя работал и с полностью сжатыми базами с достаточно высокой нагрузкой как разработчик, не сказал бы что там был прям критичный провал в производительности. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 28.10.2019, 18:37 |
|
||
|
Постраничное сжатие в SQL17 (+/-) ?
|
|||
|---|---|---|---|
|
#18+
VicSOЕще насколько я понял (DATA_COMPRESSION = PAGE); для ALTER INDEX [еее] ON [ее] REBUILD WITH ( ONLINE = ON ) обрабатывается по другому. А что именно другого? ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 28.10.2019, 18:41 |
|
||
|
Постраничное сжатие в SQL17 (+/-) ?
|
|||
|---|---|---|---|
|
#18+
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 ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 31.10.2019, 13:21 |
|
||
|
Постраничное сжатие в SQL17 (+/-) ?
|
|||
|---|---|---|---|
|
#18+
senn, COLUMSTRORE жмет сильней чем PAGE COMPRESSION. Попробуйте его, если не наткнетесь на ограничения. На 2016 он уже хорошо оптимизирован под вставку ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 31.10.2019, 13:36 |
|
||
|
Постраничное сжатие в SQL17 (+/-) ?
|
|||
|---|---|---|---|
|
#18+
sennИмеет ли смысл в DWH включать эту опцию по умолчанию, или все же от определенного (от какого?) объема данных в таблице. Конкретно в DWH очень сильно не рекомендую. Юзайте COLUMNSTORE COLUMNSTORE_ARCHIVE ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 31.10.2019, 13:37 |
|
||
|
Постраничное сжатие в SQL17 (+/-) ?
|
|||
|---|---|---|---|
|
#18+
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 всегда будет "разжимать/сжимать" данные, т.к. он перераспределяет данные по страницам. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 31.10.2019, 13:43 |
|
||
|
Постраничное сжатие в SQL17 (+/-) ?
|
|||
|---|---|---|---|
|
#18+
Расщепление страниц также должно выполнять перепаковку. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 31.10.2019, 14:01 |
|
||
|
Постраничное сжатие в SQL17 (+/-) ?
|
|||
|---|---|---|---|
|
#18+
msLex, Но такого при REBUILD WITH ( ONLINE = OFF ) нету, лог не забивается. как при ON ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 01.11.2019, 07:19 |
|
||
|
Постраничное сжатие в SQL17 (+/-) ?
|
|||
|---|---|---|---|
|
#18+
VicSOmsLex, Но такого при REBUILD WITH ( ONLINE = OFF ) нету, лог не забивается. как при ON У этого могут быть разные причины, но с постраничным сжатием это не связанно. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 01.11.2019, 07:37 |
|
||
|
Постраничное сжатие в SQL17 (+/-) ?
|
|||
|---|---|---|---|
|
#18+
msLex, Какие можете назвать? Пока только нашел в этом проблему. то есть если взять оригинальный индекс (не сжатый) то он на генерит 300гиг в OFF и 340гигов в ON ту то понятно и это норма. Но вот если его упаковать, и получится он 50 гигов, то при OFF получится 50гигов, но вот при ON то получится уже 340гигов, то есть обрабатывает его как не жатый. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 01.11.2019, 11:47 |
|
||
|
|

start [/forum/topic.php?fid=46&msg=39883950&tid=1687026]: |
0ms |
get settings: |
7ms |
get forum list: |
9ms |
check forum access: |
2ms |
check topic access: |
2ms |
track hit: |
361ms |
get topic data: |
10ms |
get forum data: |
2ms |
get page messages: |
57ms |
get tp. blocked users: |
1ms |
| others: | 221ms |
| total: | 672ms |

| 0 / 0 |
