Oracle Database 11g: SQL Tuning Workshop

Oracle-logo-430F2F9F33-seeklogo.com

Продолжительность курса — 3 дня

Oracle Database 11g: Настройка приложений

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

Слушатели изучают:

  • Как идентифицировать неэффективно выполняющиеся операторы SQL
  • Основные принципы работы оптимизатора запросов
  • Как осуществлять трассировку приложений
  • Мониторинг выполнения операторов SQL в режиме реального времени
  • Как интерпретировать планы выполнения

Цели курса:

  • Научиться идентифицировать проблемные операторы SQL
  • Выполнять модификацию операторов SQL с целью оптимизации их выполнения
  • Научиться выполнению трассировки приложений
  • Начать понимать, почему оптимизатор запросов принимает те или иные решения при выборе путей доступа к данным
  • Научиться интерпретировать планы выполнения
  • Изучить эффективное использование подсказок оптимизатору
  • Научиться создавать нагрузочные тесты

Круг слушателей:

  • Разработчики приложений
  • Разработчики хранилищ данных
  • Разработчики
  • Технические консультанты
  • Специалисты служб технической поддержки

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

  • Курс Oracle Database 11g: Основы SQL

Программа курса:

  • Изучение архитектуры базы данных Oracle
    • Обзор архитектуры сервера базы данных Oracle
    • Обзор структур оперативной памяти сервера базы данных Oracle
    • Роль фоновых процессов
    • Автоматическое управление разделяемой памятью
    • Автоматическое управление памятью выполняемых операторов SQL
    • Автоматическое управление памятью
    • Архитектура внешней памяти базы данных
    • Логические и физические структуры базы данных Oracle
  • Введение в процесс настройки операторов SQL
    • Причины неэффективного выполнения операторов SQL
    • Имеющиеся программные решения по отслеживанию текущей производительности
    • Обзор утилит, предназначенных для мониторинга и настройки производительности
    • Страницы производительности Enterprise Manager, предназначенные для настройки в ответ на снижение производительности
    • Настройка производительности с учетом разделения времени реакции на время потребления CPU и время ожидания
    • Масштабируемость и ее взаимосвязь с дизайном, реализацией и конфигурированием приложения
    • Наиболее распространенные ошибки, допускаемые при проектировании и программировании приложений
    • Методология упреждающей настройки производительности
  • Введение в оптимизатор запросов
    • Структурированный язык запросов (SQL)
    • Обзор представления оператора SQL, его реализации и выполнения
    • Синтаксический анализ оператора SQL: обзор
    • Для чего нужен оптимизатор?
    • Шаги оптимизации во время операции жесткого разбора (hard parse)
    • Оптимизатор по стоимости (Cost-Based Optimizer — CBO)
    • Контроль поведения оптимизатора
    • Функциональные возможности оптимизатора и их зависимость от выпуска базы данных Oracle
  • Типы операций доступа, выбираемые оптимизатором
    • Определение способов доступа к строкам
    • Основные структуры данных и пути доступа
    • Полный просмотр таблицы
    • Индексы: обзор
    • Использование индексов; влияние столбцов, для которых допустимы неопределенные значения (NULL)
    • Битовые индексы, составные и невидимые индексы
    • Рекомендации по использованию и управлению индексами
    • Кластеры

    Интерпретация плана выполнения

    • Что такое план выполнения
    • Взаимосвязи между наиболее важными динамическими представлениями производительности
    • Автоматизированный репозиторий рабочей нагрузки AWR
    • Создание отчета о выполненных операторах SQL на основе данных AWR
    • Обзор мониторинга операторов SQL
    • Чтение более сложных планов выполнения
    • Повторный просмотр плана выполнения
    • Взгляд на то, что происходит по ту сторону плана выполнения (что по сути стоит за планом выполнения)
  • Учебный пример: преобразование типа «звезда»
    • Модели схемы данных типа «звезда» и «снежинка»
    • План выполнения без преобразования типа «звезда»
    • Получение строк из таблицы фактов с ее соединением с одной и всеми таблицами измерений
    • Соединение промежуточного результирующего набора строк с таблицами измерений
    • Использование битовых индексов соединений (Bitmap Join Indexes)
  • Статистики оптимизатора
    • Описание статистик оптимизатора и типы статистик
    • Обзор статистики по группе столбцов
    • Обзор статистик по выражению
    • Сбор системных статистик
    • Предпочтения статистик: обзор
    • Обзор динамической выборки, осуществляемой оптимизатором (Optimizer Dynamic Sampling)
    • Блокировка статистик
  • Использование переменных связывания (bind variables)
    • Разделение курсоров и различные значения литералов
    • Разделение курсоров и переменные связывания
    • Переменные связывания в SQL*Plus и Enterprise Manager
    • Усовершенствования в механизме разделения курсоров
    • Обзор адаптивного разделения курсоров
    • Взаимодействие с механизмом адаптивного разделения курсоров
  • Использование подсказок оптимизатору
    • Обзор подсказок оптимизатору
    • Типы подсказок оптимизатору
    • Указание подсказок в операторах SQL
    • Правила использования подсказок оптимизатору
    • Рекомендации по использованию подсказок
    • Категории подсказок оптимизатору
    • Подсказки, указывающие цели оптимизации и используемые подходы
    • Дополнительные подсказки оптимизатору
  • Трассировка приложения
    • Проблема сквозной трассировки приложения
    • Местоположение диагностических трассировочных файлов
    • Что такое служба (service)?
    • Использование служб совместно с пользовательскими приложениями
    • Трассировка собственного сеанса
    • Содержимое трассировочного файла, созданного при помощи средства SQL Trace
    • Форматирование трассировочных файлов SQL Trace: обзор
    • Запуск утилиты TKPROF
  • Автоматизация настройки операторов SQL
    • Автоматическая настройка операторов SQL
    • Проблемы, связанные с трассировкой приложений
    • Обзор консультанта по настройке операторов SQL (SQL Tuning Advisor)
    • Устаревшая или отсутствующая статистика объектов
    • Профилирование операторов SQL
    • Технологический процесс настройки плана выполнения оператора SQL и создание его профиля
    • Панель управления Database Control и консультант SQL Tuning Advisor
    • Приведение в действие выданных рекомендаций
  • Следующие рекомендуемые курсы:
    • Oracle Database 11g: Оптимизация производительности
Oracle Database 11g: SQL Tuning Workshop
Курсы для разработчиков БД Версия 11g,