Сбор и анализ журналов запросов

Журналы запросов содержат полезную диагностическую информацию, которая позволяет администратором анализировать и решать проблемы, связанные с эффективностью обработки запросов, сценариями ошибок и неправильными результатами. При включении журналов запросов в Oracle Analytics в них записывается информация о синтаксическом анализе, оптимизации, планах выполнения, физическом запросе, сводной статистике и т. д.

Доступ к журналам запросов

Журналы запросов записываются последовательно в том же порядке выполнения запросов в системе. Каждый сеанс и запрос определяются уникальным идентификатором. Администраторы могут получить доступ к этим журналам запросов со страницы Сеансы и журналы запросов в консоли. Подробнее о доступе к этой странице см. в разделе "Анализ запросов и журналов SQL".

Примечание.:

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

Уровни журнала запросов

  • Уровень журнала определяет детализацию и объем генерируемого журнала.

  • Можно установить уровень журнала на уровне системы, сеанса или отчета.
  • Можно определить глобальный уровень журнала для семантической модели (RPD) с помощью свойства Уровень ведения журнала системы (в разделе "Инструменты", "Параметр", "Репозиторий") или использовать переменную сеанса.

    Описание GUID-8BF38235-E497-4FC9-B4C3-D5E3B11C2991-default.jpg ниже
    .jpg

  • Можно переопределить уровень журнала для отчета, добавив переменную LOGLEVEL к свойству Префикс, доступному на вкладке Дополнительно для отчета.

  • Чтобы гарантировать получение подробных журналов без обращений к кэшу, можно включить переменную DISABLE_CACHE_HIT=1 вместе с LOGLEVEL.

    Описание GUID-028022F5-7C3F-4EA4-B497-88453DFF4853-default.jpg ниже
    .jpg

  • Диапазон значений уровня журнала (LOGLEVEL) варьируется от 0 до 7.
    • LOGLEVEL=0 означает, что ведение журналов отключено.
    • LOGLEVEL=7 – это самый высокий уровень ведения журналов, используемый в основном командой разработчиков Oracle.
    • LOGLEVEL=2 подходит для настройки производительности и базового понимания.
    • LOGLEVEL=3 требуется для устранения проблем с фильтрами безопасности данных на уровне строк.
  • В зависимости от уровня журнала, журналы запросов содержат информацию о запросе, включая логический запрос, навигацию и план выполнения, сгенерированный физический запрос, время выполнения, строки и байты, полученные на разных узлах выполнения, а также информацию, связанную с кэшем.

Администраторы могут извлекать журналы запросов со страницы Выдать SQL в консоли, запустив запрос с соответствующими настройками LOGLEVEL и переменных.

Описание GUID-CE500760-79A2-4D2E-83CA-F401163B111F-default.jpg ниже
.jpg

Чтение журнала запросов

На странице Сеансы и журналы запросов перечислены все активные запросы и сеансы. Администраторы могут получить доступ к этой странице из консоли.

Описание GUID-E741680B-8E04-4FBA-9173-4D2F1CAA680E-default.jpg ниже
.jpg

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

Описание GUID-AF2BE54A-CC5E-44C0-88E2-9ADD91B3962C-default.jpg ниже
.jpg

Каждый запрос имеет уникальный идентификатор requestid в Oracle Analytics.

Логический запрос SQL

Вот пример логического запроса SQL в Oracle Analytics.

Описание GUID-ACCBD275-1027-48FB-9183-8EB87EB94078-default.jpg ниже
.jpg

Это некоторые общие переменные, которые можно увидеть в логическом запросе SQL:

  • QUERY_SRC_CD – происхождение запроса: запрос, отчет, DV, разрешение на выдачу SQL и т. д.
  • SAW_SRC_PATH: если запрос сохранен, путь к нему есть в каталоге.
  • SAW_DASHBOARD: если запрос включен в инфопанель, путь к ней есть в каталоге.
  • SAW_DASHBOARD_PG: имя страницы инфопанели.

Логический запрос

Логический запрос – это перевод запроса с уровня представления на уровень бизнес-модели и отображения после добавления фильтров безопасности (при наличии).

Описание GUID-74E1CA85-56BB-412D-B9F1-468E1D143DFD-default.jpg ниже
.jpg

Исходя из логического запроса, Oracle Analytics решает, попадает ли запрос в существующий кэш или должен быть извлечен из базы данных.

Описание GUID-AD43A89E-4AC8-4A6A-B30F-167EEA2BAE0F-default.jpg ниже
.jpg

План выполнения

План выполнения – это преобразование фактического логического запроса в оптимизированный план для выполнения. Он включает план доставки для каждой операции, а также сведения о том, выполняется ли она в базе данных или в Oracle Analytics. Когда операция обрабатывается в Oracle Analytics, в журнале запросов указывается [for database 0:0,0].

Описание GUID-41665BED-DD61-4056-BEDD-D54D2292BD58-default.jpg ниже
.jpg

Во время выполнения запроса Oracle Analytics перемещается именно по этому дереву. В подробных журналах сведения об обработанных строках доступны в каждом узле дерева выполнения.

Описание GUID-58CDEF0F-CE9D-41D7-A639-1F68749074B1-default.jpg ниже
.jpg

Физический запрос или запрос базы данных

На основе плана выполнения Oracle Analytics генерирует физический SQL для выполнения в указанной базе данных. Можно отправить один или несколько запросов к одной или нескольким базам данных.

Описание GUID-67BA9E19-057C-4918-A583-C127B2D14F32-default.jpg ниже
.jpg

Для каждого физического запроса, отправленного в базу данных, ведется журнал количества извлеченных строк и байт.

Описание GUID-A103C103-084C-4370-BDB6-0D2728A66DAB-default.jpg ниже
.jpg

Если запросов несколько, можно использовать идентификатор запроса (в данном примере 1914627), чтобы сопоставить точный запрос, зарегистрированный в разделе Отправка запроса в базу данных. Это позволяет сопоставить запрос с извлеченными строками при нескольких запросах к базе данных.

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

Описание GUID-6AD88CC1-CED9-4609-BB30-F6B0F94BB105-default.jpg ниже
.jpg

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

Описание GUID-94913767-718C-44B4-AE6C-6081DD12D8B4-default.jpg ниже
.jpg

Журнал также содержит итоговую статистическую сводку, которая включает полное время выполнения. Можно соотнести это время, чтобы проанализировать и понять причину проблем производительности.

Описание GUID-2F47CE96-DFE8-4B4F-940A-3FF9CE336F2A-default.jpg ниже
.jpg

Сводная статистика

В сводке журнала запросов отображается несколько статистических сводок о времени.
  • Использованное время – общее время, прошедшее с момента получения логического запроса до закрытия клиентом курсора. Если клиент разрешает пользователю прокручивать результаты, как это делает Oracle Analytics, то курсор может оставаться открытым долгое время, пока пользователь не перейдет на другую страницу или не выйдет из системы.
  • Время компиляции – время, которое Oracle Analytics использует для создания плана выполнения и физических запросов из логического запроса SQL.
  • Общее время на сервере BI Server – общее количество времени, в течение которого клиент ожидает ответа. Это включает в себя физическое время выполнения запроса, время ожидания при извлечении и время, проведенное в Oracle Analytics для внутреннего выполнения.
  • Время выполнения – время с момента получения логического запроса в Oracle Analytics до завершения выполнения логического запроса. Сюда не входит время, затраченное после завершения логического запроса, когда клиент получает результаты.
  • Время ответа – время с момента получения логического запроса в Oracle Analytics до возвращения клиенту первой строки.

Рекомендации для журнала запросов

  • Однопоточное действие. При неблагоприятных обстоятельствах может возникнуть проблема снижения производительности, если уровень журнала более 2.

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

  • Регистрация запросов носит диагностический характер и не предназначена для сбора информации об использовании. Информацию об отслеживании использования см. в разделе "Отслеживание использования".

Доступ к журналам запросов для рабочей книги

Только администраторы могут получить доступ к журналам со страницы Сеансы и журналы запросов в консоли. Однако авторы контента могут получить доступ к информации журнала для запросов визуализации в рабочих книгах через меню Разработчик. Это полезный инструмент для авторов, которые хотят устранить проблемы в обработке запросов. Для доступа к инструменту управления производительностью (параметр меню Разработчик) пользователи должны активировать параметр Включить настройки для разработчиков, который находится в меню Дополнительно в разделе Мой профиль.

Описание GUID-1C5E06A4-B442-41CF-9A16-029A8878237B-default.jpg ниже
.jpg

Если этот параметр включен, пункт меню Разработчик отображается в меню рабочей книги.

Описание GUID-72F0DD44-DD0A-47D4-942B-3E014F122B0F-default.jpg ниже
.jpg

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

Описание GUID-5D339116-5D5F-4AA2-B16B-82096E0B0D3C-default.jpg ниже
.jpg

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

Описание GUID-5A53D8E3-0776-44DC-ADD9-214C231E172B-default.jpg ниже
.jpg
С помощью параметра Разработчик авторы контента могут анализировать различную информацию, такую как журналы производительности, JSON, XML, а также информацию, связанную с набором данных. Это означает, что они могут анализировать журналы без необходимости доступа администратора к странице Сеансы и журналы запросов.

Примечание.:

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