Как настроить SQL?

Симптомы

После установки модуля БИТ.MDT в течение месяца:
1. Загрузка процессора на сервере 100%
2. Постоянные блокировки мешают работать
3. Фоновые задания из расширения БИТ.MDT сильно нагружают процессор
4. Наполнения снимка для инициализации устройств в 1С завершается с ошибками вида:

Решение

Используйте только диски SSD (или NVME). Свободное место на диске не менее 40%

Postgres

ВАЖНО
а) Не используйте Postgres на Windows в продуктовом окружении. Из-за особенностей архитектуры, при наличии таблиц с большим количеством записей, Postgres работает с приемлемой производительностью только на Linux.
б) на каждую базу используйте отдельный инстанс Postgres
в) не используйте СХД
г) ознакомьтесь с курсом "Настройка и тонкости эксплуатации PostgreSQL для 1С" на https://developer.1c.ru/ (доступен бесплатно в закрытом разделе для сертифицированных разработчиков 1С)

0. посмотреть версию установленного ПО по указанному пути (значение должно быть типа '1c-15'):
/opt/pgpro/{version}
1. Настроить задания в PostgreSQL vacuumdb с параметром --all каждые 8 часов
export PGPASSWORD=<pass> && "/opt/pgpro/{version}/vacuumdb" --all --host=localhost --port=5432 --username=postgres --no-password
2. Настроить задания в PostgreSQL  reindexdb с параметром --concurrently, раз в неделю
export PGPASSWORD=<pass> && "/opt/pgpro/{version}/reindexdb" --all --concurrently --host=localhost --port=5432 --username=postgres --no-password

MS SQL

1. Запустить MS SQL Server Management Studio
2. Открыть "Управление"->"Планы Обслуживания"

3. Запустить "мастер планов обслуживания"

4. Выбрать задачи по обслуживанию
- Реорганизация индекса (если SSD диск, не имеет смысла)
- Обновление статистики

Нажать "Далее"
5. "Выбор порядка задач по обслуживанию"

нажать "Далее"
6. Задача "Реорганизация индекса"
- в поле "Базы данных" выбрать базы 1С
- "Тип просмотра" установить в "Подробно"

Нажать "Далее"
7.Задача "Обновление статистики"
- в поле "Базы данных" выбрать базы 1С

нажать "Далее"
8. Выбор параметров отчета
Нажать "Далее"
9. Завершение работы мастера
Нажать "Готово"
10. в "Планах обслуживания" выбрать созданный план и нажать "Изменить"

11. Отредактировать "Соединение с локальным сервером"

12. установить "Использовать встроенную систему безопасности Windows"

13. В MS SQL Server Management Studio включить "Панель элементов"

14. Из "Панели элементов" перетащить мышкой в зону задач "Задачу Выполнение Инструкции TSQL"

15.Соеденить Задачу "Обновление статистики" с задачей "Выполнение инструкции TSQL"
- Выделить задачу "Обновление статистики"
- Нажать на исходящую зеленую стрелку задачи "Обновление статистики"
- нажать на задачу "Выполнение инструкции TSQL"

16.Изменить задачу "Выполнение инструкции TSQL" 
- добавить "DBCC FREEPROCCACHE"

сохранить изменения.
17. В план обслуживания добавить еще один вложенный план.

18. Выбрать созданный вложенный план

19. В зоне задач добавить (перетащить мышкой) задачи
- "Перестроения индекса"
- "Обновление статистики"
- "Выполнение инструкции TSQL"


20. Отредактировать задачу "Перестроение индекса"
- в поле "Базы данных" выбрать базы 1С
- установить MAXDOP в 12
- установить "Тип просмотра" в подробно

сохранить изменения
21. Отредактировать задачу "Обновление статистики"
- в поле "Базы данных" выбрать базы 1С

сохранить изменения
22. Изменить задачу "Выполнение инструкции TSQL" 
- добавить "DBCC FREEPROCCACHE"

сохранить изменения.
23. Соеденить задачи последовательно
- выбрать задачу "перестроить индекс"
- нажать на исходящую зеленую стрелку
- выбрать задачу "Обновление статистики"
- нажать на исходящую зеленую стрелку
- выбрать задачу "Выполнение инструкции TSQL"

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

25. ВложенныйПлан1 выполняется еженедельно каждый день кроме пятницы

26. ВложенныйПлан2 выполняется еженедельно только в пятницу

27. Сохранить План Обслуживания

Причины

Сквозная прослеживаемость

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

Информация о марке записывается в:
1. e1cib/list/РегистрСведений.битмдт_MarkIDs - без криптохвоста, хранится до истечения срока годности продукта, на который марка нанесена
2. РегистрСведений.ПулКодовМаркировкиСУЗ  - с криптохвостом, хранится до распечатывания марки на принтере + "Срок хранения использованных кодов маркировки в пуле, дней" (Константа)

Движения марок добавляются в РегистрСведений.битмдт_MarkEvents и хранятся до истечения срока годности продукта, на который марка нанесена.

Событийная интеграция

События с производства и склада приходят в базу 1С со средним временем задержки менее секунды с момента сканирования штрихкода камерой технического зрения или терминала сбора данных. Это обуславливает интенсивные запись и чтение e1cib/list/Справочник.адаптер_ВходящиеСообщения. 

События из базы 1С (эмиссия, формирование заданий на проивзодство и отгрузку, вввод в оборот и т.п.) приходят в производство и склад также событийно, что обсулавливат интенсивные запись и чтение e1cib/list/Справочник.адаптер_ИсходящиеСообщения.

Перечисленные выше таблицы обладают следующими особенностями:

  1. простая структура
  2. объем достигает десятки и сотни миллиардов записей
  3. интенсивные удаление и добавление

В этих условиях критически важны своевременная реиндексация и удаление мертвых данных.


Связанные статьи