Данный курс поможет слушателям научиться определять и настраивать неэффективные SQL операторы. Будут рассмотрены методы, позволяющие получить различные уровни информации о том, как сервер базы данных Oracle выполняет SQL операторы. Это позволит слушателям определять причины неэффективности SQL операторов.

Слушатели изучат различные способы доступа к данным, узнают о том, какие из них являются наиболее эффективными в тех или иных обстоятельствах, и как обеспечить использование наилучшего метода. Будут рассмотрены инструменты для трассировки на разных уровнях, преимущества использования переменных привязки и различных типов индексов.

После успешного окончания курса, слушатели должны будут уметь:

Необходимая предварительная подготовка:

Аудитория:

Программа

Введение в настройку SQL

Обходные пути для улучшения производительности. Анализ неэффективного SQL. Основные методики настройки SQL. Стратегия анализа запросов.

Использование SQL Trace и TKPROF

Изучение трассировочного файла для понимания решений оптимизатора. Трассировка 'из конца в конец'.

Основные методики настройки

Переписывание запросов для улучшения производительности.

Основы оптимизатора

Обзор представления оператора SQL, его реализации и выполнения. Компоненты оптимизатора.

Интерпретация последовательного плана выполнения

Различные способы извлечь планы выполнения. Использование мониторинга SQL. Интерпретация последовательного плана выполнения.

Оптимизатор: Методы доступа к таблицам и индексам

Различные способы доступа к данным таблиц и индексов.

Оптимизатор: Операции соединения

Различные способы соединения таблиц.

Иные методы доступа

Иные методы доступа. Использование кэша результатов.

Статистика оптимизатора

Статистика таблиц, столбцов и индексов. Системная статистика оптимизатора. Автоматический сбор статистики оптимизатора.

Использование переменных привязки

Взаимодействие с механизмом адаптивного разделения курсоров. Использование параметра инициализации CURSOR_SHARING.

Шаблоны планов выполнения SQL

Использование шаблонов планов выполнения SQL.