Закажите бесплатный расчет стоимости вашей задачи по 1С!
Перезвоним за 10 минут! (в рабочие часы)

Регламентные операции в СУБД MS SQL

Одной из распространенных причин не оптимальной работы СУБД MS SQL являет неправильная настройка выполнения регламентных операций в системе управления базы данных. Обычно правильная настройка сразу же оказывает положительный эффект на производительность системы в целом. Эту информацию должен знать каждый программист 1С.

Ниже в рамках подготовки к сертификации «Эксперт по технологическим вопросам»  я опишу ряд мер, с помощью которых без привлечения дополнительных ресурсов можно повысить производительность.

Выполнение регламентных операций в SQL

Виды регламентных операций СУБД MS SQL

  1. обновление статистик;
  2. очистка процедурного кеша;
  3. дефрагментация индексов;
  4. реиндексация таблиц БД.

Для успешной сдачи сертификата «1С Эксперт» необходимо знать эти виды операций и как их правильно настроить. Далее подробно остановимся на каждой: зачем необходимо выполнять их и с какой периодичностью.

Обновление статистик

MS SQL подбирает оптимальный план запросов на основании статистических данных, полученных за период. Однако эта статистическая информация может быть не всегда актуальной. Обновление статистики позволяет системе подобрать оптимальный план запроса.

Рассмотрим типичный пример. Происходила регламентная операция  — закрытие месяца. Эта операция выполняется раз в месяц, но ощутимо влияет на статистические данные, вследствие чего система далее может работать не корректно.

По умолчанию SQL Server настроен на частичное автоматическое обновление статистики. Однако желательно периодически запускать полное обновление статистики (full scan).

Если вы только начинаете программировать в 1С или просто хотите систематизировать свои знания - попробуйте Школу программирования 1С нашего друга Владимира Милькина. Пошаговые и понятные уроки даже для новичка с поддержкой учителя.
Попробуйте бесплатно по ссылке >>

Обновление статистики не требует монопольного режима — оно не блокирует таблицы БД.

Рекомендуется выполнять не реже одного раза в день.

Очистка процедурного кеша

Оптимизатор MS SQL обработки запроса кеширует данные плана запроса. Это сделано для лучшей производительности системы. Но однако так же, как в примере со статистикой, это может и помешать оптимальному выполнению запроса.

Для очистки кэша 1С не нужно выгонять пользователей, она работает в фоновом режиме.

Время выполнения — сразу после обновления статистики (не реже раза в день).

Дефрагментация индексов

Когда выполняется вставка данных в таблицу, эти данные сохраняются на указанной странице среди страниц уровня листовых вершин кластеризованного индекса. Ключи некластеризованного индекса также должны быть вставлены на правильную страницу среди страниц уровня листовых вершин некластеризованного индекса. Если на этой странице нет места, то SQL Server должен выполнить разбор страниц, это означает выделение и привязку новой к соответствующему индексу. Подобные ситуации приводят к фрагментации индекса. Данный эффект возникает при большой нагрузке на СУБД MS SQL и снижает общую производительность системы.

Дефрагментацию можно проводить с работающими пользователями — она не блокирует БД.

Рекомендуется выполнять данную регламентную операцию не реже раза в неделю.

Реиндексация таблиц БД

Реиндексация  — полное перестроение индексов для заданных таблиц. Реиндексация существенно повышает производительность системы в целом. После реиндексации не имеет смысл производить дефрагментацию индексов — фрагментация индекса будет исправлена.

Выполнение операции доступно только в монопольном режиме — она блокирует таблицу БД MS SQL.

Данную регламентную операцию рекомендует производить не реже одного раза в неделю.

К сожалению, мы физически не можем проконсультировать бесплатно всех желающих, но наша команда будет рада оказать услуги по внедрению и обслуживанию 1С. Более подробно о наших услугах можно узнать на странице Услуги 1С или просто позвоните по телефону +7 (499) 350 29 00. Мы работаем в Москве и области.

Остались вопросы?

СПРОСИТЕ в комментариях!

Добавить комментарий:

Ваш адрес email не будет опубликован.