Оптимизация индексов в 1С 7.7, 8.1, 8.2 + MS SQL Server   

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

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

В системе 1С невозможно стандартными средствами добавлять индексы. Это, с одной стороны, упрощает разработку. На начальном этапе не нужно задумываться, что такое индексы вообще. Ограничения по фильтрации и сортировке экранных форм (например, в справочниках только сортировка по коду, наименованию или реквизитам с признаком отбора, т.е. по тем полям, где есть по умолчанию индексы) позволяют довольно длительный интервал времени после внедрения не беспокоиться о проблеме оптимизации индексов. Но здесь есть и отрицательный момент. При увеличении объемов БД запросы с учетом стандартных индексов 1С отрабатывают все хуже и хуже. Нагрузка на сервер и время отчетов увеличивается до тех пор, пока эти значения не принимают критической величины. Как правило, после этого принимается решение о коренной перестройке структуры объектов 1С, либо о модернизации серверного оборудования. И первый, и второй вариант требуют существенных затрат. Например, иногда структура объектов в текущей реализации выглядит вполне нормальной, и вполне устраивала разработчиков, если бы была возможность, например, добавить индекс по шапке документа.

Компания "СофтПоинт" готова предложить Вам услуги по оптимизации индексов.

Статьи по этой теме:

Управление индексами в 1С-SQL

Влияние дополнительных индексов на объем базы данных 1С-SQL