Выбор правильного имени службы готовой базы данных является ключевым моментом при подключении к Oracle Autonomous Data Warehouse. Узнайте о различных именах служб готовых баз данных и о том, какое из них следует выбрать.
Какие имена есть у готовых служб баз данных?
databasename_high
– максимальное количество ресурсов, минимальный параллелизм. Запросы выполняются параллельно.databasename_medium
– меньше ресурсов, выше степень параллелизма. Запросы выполняются параллельно.databasename_low
– минимальное количество ресурсов, максимальный параллелизм. Запросы выполняются последовательно.Имена содержатся в файле tnsnames.ora в бумажнике Oracle. Нажмите Подключения к базам данных в консоли инфраструктуры Oracle Cloud Infrastructure Console, чтобы увидеть строки.
.png
Общие сведения о группах потребителей в Oracle Resource Manager
Имена служб баз данных сопоставлены с группами потребителей в диспетчере ресурсов, ограничивающим количество параллельных подключений и запросов, которые могут выполняться в Oracle Autonomous Data Warehouse одновременно (параллельно), а также максимальное количество параллельных процессов для одного запроса (parallell_degree_limit). Эти ограничения зависят от количества лицензированных виртуальных и условных ЦП (ECPU и OCPU) и от того, включено ли автомасштабирование.
В следующей таблице приведены примеры значений параллельных подключений для базы данных с 32 ECPU с отключенным и включенным автоматическим масштабированием ECPU.
Имя службы базы данных | Количество параллельных запросов при отключенном автоматическом масштабировании ECPU | Количество параллельных запросов при включенном автоматическом масштабировании ECPU |
---|---|---|
high | 3 | 9 |
medium | 20 (.63 × число виртуальных процессов) | 60 (1.89 × число виртуальных процессов) |
low | До 4800 (150 x число виртуальных процессов) | До 4800 (150 x число виртуальных процессов) |
Выбор оптимального имени службы базы данных для Oracle Analytics
Наибольшее количество параллельных запросов, которые могут выполняться для службы со значением "high" в базе данных, составляет три без автомасштабирования и девять с включенным автомасштабированием. Этот предел может быть достигнут тремя пользователями, подключенными к имени службы со значением "high" в базе данных и выполняющими по одному запросу или по три отчета в одной инфопанели Oracle Analytics.
Имя службы со значением "low" подходит для большинства рабочих нагрузок Oracle Autonomous Data Warehouse с Oracle Analytics, но для использования параллельных запросов выберите имя службы со значением "medium". Предельная степень параллелизма для имени службы со значением "low" равна единице, что означает отсутствие параллелизма. При подключении к имени службы со значением "low", даже если степень параллелизма указана на уровне таблицы или индекса, степень параллелизма снижается до единицы, и запрос не выполняется параллельно. Ограничение степени параллелизма (на один запрос) для "medium" и "high" в два раза больше числа лицензированных CPU.
Примечание. При подключении к базе данных, входящей в состав Oracle Fusion Analytics Warehouse (Fusion Analytics), необходимо использовать имя службы со значением "low", чтобы обеспечить максимальное количество параллельных запросов.
Отслеживаемые инструкции в очереди
Если максимальное количество одновременных запросов достигает предела, лишние запросы добавляются в очередь. Oracle Autonomous Data Warehouse предоставляет метрику для проверки наличия инструкций в очередях.
Выберите Действия с базой данных и Инфопанель базы данных на странице Oracle Autonomous Data Warehouse в консоли Oracle Cloud Infrastructure.
Выберите Центр производительности и далее Вкладку "Контроль SQL", чтобы увидеть статус инструкции в очереди в виде серых часов. В этом примере три запроса выполняются с именем службы со значением "high", один находится в очереди, и еще один запрос выполняется с именем службы со значением "medium". Оператор в очереди выполняется, когда завершается один из трех запросов, выполняемых с именем службы со значением "high".
Отслеживание параллелизма
Если предел степени параллелизма превышен, в контрольном отчете SQL отображается понижение степени параллелизма (DOP). Причина снижения степени параллелизма 353 означает, что менеджер по ресурсам понизил рейтинг оператора из-за ограничения максимальной степени параллелизма.
Для базы данных Oracle версии 18 и выше коды причин перехода на более раннюю версию описаны в следующей таблице:
Идентификатор | Коды причин |
352 | Понижение степени параллелизма из-за адаптивной степени параллелизма. |
353 | Понижение степени параллелизма из-за максимальной степени параллелизма диспетчера ресурсов. |
354 | Понижение степени параллелизма из-за недостаточного количества процессов. |
355 | Понижение степени параллелизма из-за того, что подчиненные процессы не смогли присоединиться. |
Событие ожидания ЦП диспетчера ресурсов
Сессия, ожидающая выделения ЦП диспетчером ресурсов, увеличивает событие resmgr:cpu quantum wait. Чтобы уменьшить частоту возникновения этого события ожидания, убедитесь, что для подключения OAC используется имя службы со значением "low" или "medium", или увеличьте количество ЦП, выделенных ADW.
Чтобы увидеть число ожиданий и среднее время ожидания, просмотрите раздел "Приоритетные события ожидания" в отчете "Автоматический репозиторий рабочей нагрузки (AWR)" для события ожидания resmgr:cpu quantum.
В этом примере было 272 ожидания, каждое из которых длилось в среднем 588,91 миллисекунды, а общее время ожидания составило 160 секунд. Обнаружено, что причина заключалась в том, что для подключения OAC использовалось имя службы со значением "high" в базе данных. Эти периоды ожидания исчезли, когда клиент перешел на службу "medium", и проблема периодического снижения скорости работы его инфопанели была устранена.
Совет относительно создания подключения к Oracle Autonomous Data Warehouse в Oracle Analytics
В Oracle Analytics при определении подключения Oracle Autonomous Data Warehouse с использованием электронного бумажника экземпляра по умолчанию выбирается имя службы со значением "high". Поменяйте имя на имя "low" или "medium", чтобы избежать ограничения параллельных подключений.