Гость
Форумы / Microsoft SQL Server [игнор отключен] [закрыт для гостей] / Увеличение размера файла базы после ALTER INDEX REBUILD ONLINE = ON / 12 сообщений из 12, страница 1 из 1
10.11.2020, 13:44
    #40016804
KellyLynch
Гость
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Увеличение размера файла базы после ALTER INDEX REBUILD ONLINE = ON
Может ли кто-то пояснить вот по такой ситуации: есть база данных на SQL Server 2012. Один из её файлов данных имел размер 1.33 TB. На базе последовательно выполнили две такие операции:

Операция 1: DBCC SHRINKFILE ('TheFileName’) . В результате чего размер файла уменьшился с 1.33 TB до 1.13TB.
Операция 2: Запустили несколько команд ALTER INDEX REBUILD ONLINE = ON для кластерных индексов нескольких больших таблиц, находящихся в этом файле базы.
В результате чего размер файла опять увеличился уменьшился до примерно такого же размера, какой и был до DBCC SHRINKFILE ('TheFileName’).

Это что – “ожидаемое последствие INDEX REBUILD”? Я не знал, что INDEX REBUILD может вызвать увеличение размера файла данных базы.
...
Рейтинг: 0 / 0
10.11.2020, 13:49
    #40016809
komrad
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Увеличение размера файла базы после ALTER INDEX REBUILD ONLINE = ON
KellyLynch,

ну так в режиме онлайн была построена копия таблицы
файл вырос
теперь в нем снова много места от старых таблиц

shrinkfile и rebuild это операции с противоположным эффектом в части размера файлов

shrinkfile безобидна только случае использования опции truncateonly
...
Рейтинг: 0 / 0
10.11.2020, 18:15
    #40016922
alexeyvg
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Увеличение размера файла базы после ALTER INDEX REBUILD ONLINE = ON
KellyLynch
Операция 1: DBCC SHRINKFILE ('TheFileName’) . В результате чего размер файла уменьшился с 1.33 TB до 1.13TB.
И зачем портить базу ради 20% размера файла? Я понимаю, с 1.33 TB до 1.13ГB...
...
Рейтинг: 0 / 0
10.11.2020, 19:29
    #40016936
Критик
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Увеличение размера файла базы после ALTER INDEX REBUILD ONLINE = ON
еще тут на форуме писали, что при онлайновом перестроении сам индекс еще растет (+несколько байт на каждую запись)
...
Рейтинг: 0 / 0
10.11.2020, 21:00
    #40016958
Ennor Tiegael
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Увеличение размера файла базы после ALTER INDEX REBUILD ONLINE = ON
Критик,

Если RCSI на базе включен, то 14 байт на строку - было дело . Забавно, что в доке к 2005 это багом еще не считалось, было вполне себе документированное поведение.
...
Рейтинг: 0 / 0
11.11.2020, 14:12
    #40017159
KellyLynch
Гость
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Увеличение размера файла базы после ALTER INDEX REBUILD ONLINE = ON
alexeyvg
KellyLynch
Операция 1: DBCC SHRINKFILE ('TheFileName’) . В результате чего размер файла уменьшился с 1.33 TB до 1.13TB.
И зачем портить базу ради 20% размера файла? Я понимаю, с 1.33 TB до 1.13ГB...


"И зачем портить..." - сам не знаю ; мне сейчас приходится разгребать то что наделали другие.

Тогда такой вопрос: я вижу в базе ещё один файл; в нём индексы хранятся. Этот файл недавно сжали в 2 раза: с 1 TB до 500 GB.
Microsoft предупреждает что …A shrink operation doesn't preserve the fragmentation state of indexes in the database, and generally increases fragmentation to a degree ….”.

Значит, в результате этого Shrink-а фрагментация "увеличилась".
Как по-Вашему, каковы должны быть дальнейшие действия с этим файлом? Я уже вижу что ALTER INDEX REBUILD запускать опасно - этот запуск может опять увеличить файл до прежнего размера. Но ведь с "возросшей фрагментацией" надо что-то делать...
...
Рейтинг: 0 / 0
11.11.2020, 14:12
    #40017160
KellyLynch
Гость
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Увеличение размера файла базы после ALTER INDEX REBUILD ONLINE = ON
komrad
KellyLynch,

ну так в режиме онлайн была построена копия таблицы
файл вырос
теперь в нем снова много места от старых таблиц

shrinkfile и rebuild это операции с противоположным эффектом в части размера файлов

shrinkfile безобидна только случае использования опции truncateonly


Тогда такой вопрос: я вижу в базе ещё один файл; в нём индексы хранятся. Этот файл недавно сжали в 2 раза: с 1 TB до 500 GB.
Microsoft предупреждает что …A shrink operation doesn't preserve the fragmentation state of indexes in the database, and generally increases fragmentation to a degree ….”.

Значит, в результате этого Shrink-а фрагментация "увеличилась".
Как по-Вашему, каковы должны быть дальнейшие действия с этим файлом? Я уже вижу что ALTER INDEX REBUILD запускать опасно - этот запуск может опять увеличить файл до прежнего размера. Но ведь с "возросшей фрагментацией" надо что-то делать...
...
Рейтинг: 0 / 0
11.11.2020, 14:31
    #40017165
DeColo®es
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Увеличение размера файла базы после ALTER INDEX REBUILD ONLINE = ON
KellyLynch,
В том, что в файле есть свободное место, нет ничего"опасного".
Напротив, если файл данных забит до предела - вот это плохо:
  • в случае роста объема данных, серверу придется расширять файл, что приведет к задержкам в этот момент
  • операция роста может столкнуться с отсутствием места на диске.
...
Рейтинг: 0 / 0
11.11.2020, 14:32
    #40017168
felix_ff
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Увеличение размера файла базы после ALTER INDEX REBUILD ONLINE = ON
KellyLynch,

Вы чего взялись то файлы уменьшать / индексы ребилдить.

У вас в данный момент наблюдается какая то реальная проблема которую надо решить?
Или все эти манипуляции от доброты душевной?
...
Рейтинг: 0 / 0
11.11.2020, 14:41
    #40017173
aleks222
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Увеличение размера файла базы после ALTER INDEX REBUILD ONLINE = ON
KellyLynch
komrad
KellyLynch,

ну так в режиме онлайн была построена копия таблицы
файл вырос
теперь в нем снова много места от старых таблиц

shrinkfile и rebuild это операции с противоположным эффектом в части размера файлов

shrinkfile безобидна только случае использования опции truncateonly


Тогда такой вопрос: я вижу в базе ещё один файл; в нём индексы хранятся. Этот файл недавно сжали в 2 раза: с 1 TB до 500 GB.
Microsoft предупреждает что …A shrink operation doesn't preserve the fragmentation state of indexes in the database, and generally increases fragmentation to a degree ….”.

Значит, в результате этого Shrink-а фрагментация "увеличилась".
Как по-Вашему, каковы должны быть дальнейшие действия с этим файлом? Я уже вижу что ALTER INDEX REBUILD запускать опасно - этот запуск может опять увеличить файл до прежнего размера. Но ведь с "возросшей фрагментацией" надо что-то делать...


Имитация бурной деятельности.
...
Рейтинг: 0 / 0
11.11.2020, 15:03
    #40017185
alexeyvg
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Увеличение размера файла базы после ALTER INDEX REBUILD ONLINE = ON
KellyLynch
"И зачем портить..." - сам не знаю ; мне сейчас приходится разгребать то что наделали другие.
А, в смысле, это другие делают шринки и ребилды?

Если свободное место не во много раз больше занятого, то запретите им делать шринки.

KellyLynch
Значит, в результате этого Shrink-а фрагментация "увеличилась".
Как по-Вашему, каковы должны быть дальнейшие действия с этим файлом?
Вам нужно выбрать, либо незанятое место в файле, либо фрагментацию.
...
Рейтинг: 0 / 0
11.11.2020, 16:44
    #40017253
Критик
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Увеличение размера файла базы после ALTER INDEX REBUILD ONLINE = ON
alexeyvg
Если свободное место не во много раз больше занятого, то запретите им делать шринки


+1
а вот если у вас база весит 1-2 Тб, а внутри занято 20Гб, то нужно шринкать
...
Рейтинг: 0 / 0
Форумы / Microsoft SQL Server [игнор отключен] [закрыт для гостей] / Увеличение размера файла базы после ALTER INDEX REBUILD ONLINE = ON / 12 сообщений из 12, страница 1 из 1
Целевая тема:
Создать новую тему:
Автор:
Найденые пользователи ...
Разблокировать пользователей ...
Читали форум (0):
Пользователи онлайн (0):
x
x
Закрыть


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