Разыменования в коде (и прочее) — что при этом делает СУБД
Смотрим Profiler, делаем выводы.
- Описание
- Подробнее
Описание
Уже как несколько месяцев занимаемся укрупнением одной из наших информационных систем — переводим пользователей периферийных баз РБД на работу в общей базе данных. Такого вида деятельность предполагает дополнительные доработки для повышения масштабируемости ИС. Один и способов таких доработок — анализ тяжелых запросов. Собственно, вот, периодически занимаюсь таким анализом.
И вот "ради интереса" стали возникать вопросы — что же делает платформа на СУБД при выполнении каких-то операций. Вероятно, часть приведенных ниже результатов для кого-то будет далеко не новость (как и для меня). Но уж, простите, стараюсь раскопать тему насколько можно глубже и, главное, увидеть происходящее собственными глазами.
Тесты будем производить на демо-базе БСП 2.4 (версия 2.4.6.241), на платформе 1С:Предприятие 8.3 (8.3.10.2580), с использованием толстого обычного и тонкого клиентов, без RLS. Для возможности запуска тестовой обработки в обычном толстом клиенте, для конфигурации переключим Основной режим запуска — Обычное приложение. В тестовой внешней обработке добавим обычную форму, на ней разместим поле ввода с типом ДокументСсылка._ДемоЗаказПокупателя. Для тестирования будем добавлять кнопки с короткими обработчиками.
Вооружимся SQL Server Profiler. И поехали…
Классическое разыменование
Добавим кнопку с коротким обработчиком:
Валюта = ЗаказСсылка.Валюта;
Сообщить(Валюта.Наименование);
Выполнение второй строки (Сообщить(…)) вызывает полное вычитывание полей элемента.

