powered by simpleCommunicator - 2.0.60     © 2026 Programmizd 02
Целевая тема:
Создать новую тему:
Автор:
Закрыть
Цитировать
Форумы / Microsoft SQL Server [игнор отключен] [закрыт для гостей] / Оптимальный план обслуживания.
10 сообщений из 35, страница 2 из 2
Оптимальный план обслуживания.
    #39876670
Фотография Yasha123
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Евгений.Yasha123размер логов о бэкапов лога?
в лог уйдет значительно меньше, но в бэкапе лога будут все ваши перестроенные индексы.
неясно, какая связь между логами и "возможностями по хранению бэкапов"?

Связь вероятно такая, что бэкап лога транзакций делается туда же куда и бэкап базы. Если это не очевидно, то извините.

если вам дважды написали, но вы никак не в состоянии прочесть, то извините.
попробую в последний раз жирненьким выделить, может и проканает

Yasha123можно уменьшить объем того, что уйдет в лог .
переключив базу в bulk logged.
в бэкап лога уйдет полный объем.

Yasha123размер логов о бэкапов лога?
в лог уйдет значительно меньше , но в бэкапе лога будут все ваши перестроенные индексы .
неясно, какая связь между логами и "возможностями по хранению бэкапов"?
у вас бэкапы хранятся на дисках, куда сложены логи баз?

бэкап лога и лог это не одно и то же.

в третий и последний раз для тех, кто в танке:
перевод базы в балк логгед уменьшит объем записей,
валящихся в лог.

но в бэкап лога уйдут все ваши индексы, постранично.

бэкап лога это не тупо "скопировать из лога".
это еще и записать все страницы данных, которые были записаны в ходе минимально логируемой операции.
т.е. пойти в файл данных, найти там эти страницы и записать их в бэкап лога полностью
...
Рейтинг: 0 / 0
Оптимальный план обслуживания.
    #39876678
Фотография Yasha123
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Евгений.куда простите вы складываете логи баз что бы это ни значило в вашей интерпретации?
логи (log files) на свои диски,
бэкапы (backup files) на свои.
иначе какой смысл в бэкапе,
если он на том же диске обитает?
крякнет диск под логами,
а бэкапы, ух ты, там же были, откуда будете восстанавливать?
...
Рейтинг: 0 / 0
Оптимальный план обслуживания.
    #39876988
Евгений.
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
Yasha123,

Логи, базы и бэкапы на разных дисках.
Просто ваша фраза " куда сложены логи баз " сбивает с толку.

И да, 2 раза написали и это понятно, но я отвечал на ваш же вопрос о связи логов с бэкапами, и ни слова не сказал что что то не понятно про бэкап лога и сам лог в режиме bulk logged.

И кажется очевидно что в итоге меня интересует не непосредственно текущий размер лога, а весь процесс в целом.
Толку от небольших логов, если все равно нет возможности их бэкапить - ежедневный бэкап терабайтов мягко говоря не то что нужно.

В общем как я понял нет в MSSQL адекватного способа обслуживать большие базы.

Так же интересная статья попалась, в которой немного говорилось по этой теме https://infostart.ru/public/1081863/
Приведу кусок оттуда:
1С просто и незатейливо советует sp_msforeachtable N'DBCC DBREINDEX (''?'')' (или уже есть более свежая статья?). Microsoft настойчиво рекомендует схему "avg_fragmentation_in_percent > 5% and < = 30% - REORGANIZE, > 30% - REBUILD". На infostart.ru светится "10%-30%", "5%-30%".

И практически на всех рабочих серверах, кои мне доводилось видеть - работает то самое 5%-30% - в виде версии от Микрософт, или скрипты шведского товарища Ola Hallengren, или что-то самописное на том же принципе. Реже встречается sp_msforeachtable. На тестовых серверах, как правило, чаще метод "мы забили на регламентное обслуживание"..

Для мелких баз с хорошими технологическими окнами - Ola Hallengren самое то. Работает по ночам, есть не просит.
Но вот для террабайтных высоконагруженных, работающих "24/7/почти 365" - все далеко не так радужно.
Вот с чем сталкивался:
- Само обращение к sys.dm_db_index_physical_stats даже с ''LIMITED'' - весьма неплохо съедает память (буферпул) sql-сервера. Далее возможны задержки непричастных запросов на физ чтениях, пока буферпул опять наполняется "нормальными" данными
- Ошибки вида Msg 9002, The transaction log for database '...' is full due to 'ACTIVE_TRANSACTION'. - иной раз не лезет индекс в данное админом пространство под лог
- Ошибки вида Msg 9002, The transaction log for database '...' is full due to 'LOG_BACKUP' - и, соответственно, реплики на резервных серверах могут становиться сильно неактуальными... Даже без данных завалов из-за массивных переиндексаций может быть отставание реплик в AlwaysOn

- И, самое болезненное - собственно, блокировки на REBUILD. Особенно для редакций Standart - нет with(online = on) и тем более WAIT_AT_LOW_PRIORITY, сам ребилд идет в один поток (и коль заблокирует кого - то надолго). И даже в версии Enterprise с with(online = on) - блокировки все равно в наличии! Будили ночью, любовался. Собственно, в документации оно вполне отражено.

Обычный сценарий блокировок под для Standart - некий кривоватый запрос (даже вне транзакции, с хинтами with(nolock)) блокирует alter index..rebuild , далее alter index блокирует всех. Пробовал бороться с теми самыми "кривоватыми запросами" - легион их. Пробовал писать джоб, убивающий "кривоватые запросы", мешающие переиндексации - работает.. но однажды оно убило весьма важный процесс - отключил. Перенастроил джоб для "самых важных баз", чтобы он убивал саму реиндексацию - аналог WAIT_AT_LOW_PRIORITY ( MAX_DURATION = 1 MINUTES, ABORT_AFTER_WAIT = SELF ) - работает... но, понятное дело - не идеал.

Т.е. стандартная модель переиндексации понемногу перестает устраивать.
Вот и Brent Ozar еще в 2012 сомневался - а тогда еще не было широкого распространения ssd.
В настоящий момент думаю в сторону "реиндексации того, что в текущий момент сидит в оперативке (в буферпуле) - с целью минимизации размера индекса (и память освободим, и чтений меньше)".. также понемногу задираю пороги ("5-30" веду к "40-50") и отслеживаю изменение скорости типовых запросов - посмотрим, что будет..

Опять-таки, Микрософт тоже ощущает, видимо, данную проблему.. Появление WAIT_AT_LOW_PRIORITY в MS SQL Server 2014 и RESUMABLE=ON в MS SQL Server 2017 как бы намекает. Жаль только, что все это не для standart (enterprise дорогой и в наличии далеко не на всех серверах).
...
Рейтинг: 0 / 0
Оптимальный план обслуживания.
    #39877010
Фотография Yasha123
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Евгений.Толку от небольших логов, если все равно нет возможности их бэкапить - ежедневный бэкап терабайтов мягко говоря не то что нужно.

вот ровно это я и пытаюсь вам донести минимум 2 дня.
что все, что можно сделать, это размер самого лога уменьшить,
но никак не бэкапа лога.
а вы снова:
"иначе размер логов превышает возможности по хранению бэкапов."
я снова и переспрашиваю, так вас волнует размер логов или бэкапов лога?
потому что нет прямой связи между размерами лога и местом под бэкапы.
---
а толк от небольших логов как раз есть для тех,
у кого дорогие, но относительно небольшие диски выделены под логи.
а под бэкапы места дофигище.
и скорость вставки/перестроения индексов в балк логгед куда выше,
как раз потому, что не надо лог на диск молотить
...
Рейтинг: 0 / 0
Оптимальный план обслуживания.
    #39877016
Евгений.
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
Тему можно закрыть.
Вывод: большая база? - добро пожаловать в оракл
Если я не прав, то с радостью выслушаю как обслуживать большие базы (от 1Tb) не тратя при этом большие деньги на аренду в ДЦ места с 10-ками терабайт.
Модератор: Для сравнения СУБД есть отдельный раздел форума, тут разводить не надо.
...
Рейтинг: 0 / 0
Оптимальный план обслуживания.
    #39877017
Гавриленко Сергей Алексеевич
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Евгений.В общем как я понял нет в MSSQL адекватного способа обслуживать большие базы.Есть, просто надо это делать осторожно и нежно, а так же проектировать структуру и железо под это. Если взять отдельно взятую базу в вакууме, налить туда дофига данных, положить на медленные диски малого размера, то да, это как раз MSSQL виноват, он не умеет.
...
Рейтинг: 0 / 0
Оптимальный план обслуживания.
    #39877058
Владислав Колосов
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Евгений.,

Существуют коммерческие приложения разностного хранения резервных копий. По слухам, хорошо экономят место.
...
Рейтинг: 0 / 0
Оптимальный план обслуживания.
    #39877093
Фотография komrad
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Владислав КолосовЕвгений.,

Существуют коммерческие приложения разностного хранения резервных копий. По слухам, хорошо экономят место.
подозреваю, что у автора есть неиспользуемый пока резерв в виде backup compression
...
Рейтинг: 0 / 0
Оптимальный план обслуживания.
    #39877116
Евгений.
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
komradВладислав КолосовЕвгений.,

Существуют коммерческие приложения разностного хранения резервных копий. По слухам, хорошо экономят место.
подозреваю, что у автора есть неиспользуемый пока резерв в виде backup compression

Подозрения беспочвенны, компрессия включена.
...
Рейтинг: 0 / 0
Оптимальный план обслуживания.
    #39877248
Евгений.
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
Владислав КолосовЕвгений.,

Существуют коммерческие приложения разностного хранения резервных копий. По слухам, хорошо экономят место.

Используется, отчасти поэтому и не столь критична данная проблема.
...
Рейтинг: 0 / 0
10 сообщений из 35, страница 2 из 2
Форумы / Microsoft SQL Server [игнор отключен] [закрыт для гостей] / Оптимальный план обслуживания.
Найденые пользователи ...
Разблокировать пользователей ...
Читали форум (0):
Пользователи онлайн (0):
x
x
Закрыть


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