138  /  173

Индексы

Просмотров: 255 (Статистика ведётся с 06.02.2017)
Дата последнего изменения: 14.09.2015

Заочно нельзя сказать какие индексы необходимо создавать, надо всегда рассматривать конкретную ситуацию. Индексы нужны для конкретных выборок на конкретных проектах. В зависимости от архитектуры и логики проекта медленные запросы получаются у каждого свои, и для них нужны свои индексы, часто составные.

Страницы Анализ индексов и Список индексов - инструмент анализа и рекомендаций по созданию индексов.

Анализ индексов

Анализ индексов лучше производить после получения списка медленных запросов. Для этого в настройках модуля включите соответствующую опцию и установите время, после которого запрос будет считаться медленным. Рекомендуемое время работы монитора - сутки, но, опять же, надо учитывать реалии конкретного проекта.

После получения списка медленных запросов на странице Анализ индексов (Настройки > Производительность > Индексы > Анализ индексов) необходимо воспользоваться кнопкой Выполнить анализ собранных SQL запросов и отобразится список всех запросов, которые были совершены за это время, отсортированных по имени таблицы:

Примечание: с версии модуля 15.5.0 поддерживается работа с запросами от ORM.

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

При необходимости можно посмотреть план выполнения любого запроса. Команда Детальный анализ позволяет перейти к анализу конкретного запроса и созданию его индекса.

На этой странице жирным шрифтом выделяются таблица и колонки, к которым обращается запрос.

Структура таблицы - информационная закладка. Главное в ней - размер таблицы. И если размер большой (к примеру, больше 100 мегабайт), то построение и удаление индексов лучше проводить в часы наименьшей нагрузки на сайт.

Анализ запросов - закладка с собственно анализом запроса. При принятия решения о создании индекса учитывайте селективен ли этот запрос и процент селективности. Информация об этом выводится в таблице:

Создание индекса - закладка, на которой непосредственно принимается решение о создании (или нет) индекса. Те запросы, по которым не нужно создавать индекс можно внести в список Не предлагать создавать.

Запросы, по которым принято решение, пропадают из списка запросов и появляются на странице Список индексов.

Список индексов

Страница Список индексов (Настройки > Производительность > Индексы > Список индексов) отображает результаты ваших решений по анализу тех или иных запросов. "Зелёный" статус - индекс создан, "красный" статус - индекс не будет создаваться.


12
Курсы разработаны в компании «1С-Битрикс»

Если вы нашли неточность в тексте, непонятное объяснение, пожалуйста, сообщите нам об этом в комментариях.
Развернуть комментарии