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

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

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

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

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

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

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

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

Получите 267 видеоуроков по 1С бесплатно:

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

P.S. Наша компания предоставляет услуги по настройке, доработке и комплексному внедрению 1С. Закажите бесплатный расчет стоимости вашей задачи на странице Услуги 1С или по телефону +7 (499) 350 29 00.

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

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

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

Ваш e-mail не будет опубликован. Обязательные поля помечены *


*