Настройка корпоративных приложений и SQL запросов для базы данных Oracle
Or_SQL_BD
По окончанию курса , слушатели смогут более грамотно настраивать приложения SQL и PL/SQL. Использовать дополнительные механизмы для настройки и оптимизации приложений.
Аудитория
Разработчики и администраторы приложений для сервера приложений и базы данных Oracle.
Предварительный уровень подготовки
Знание Pl/SQL, основы программирования Oracle сервера. Желательно знание концепций OOP.
Задача курса
Показать на примерах механизмы и методы оптимизации приложений как в технологии клиент-сервер, так и в многозвенной архитектуре. Настройку производительности SQL запросов. Мониторинг и трассировку SQL. Преимущества распределенных вычислений перед технологией клиент-сервер. показать новые архитектурные особенности сервера базы данных Oracle и его тонкую настройку с точки зрения эксплуатации готовых приложений. Новые возможности SQL и PL/SQL и возможности преобразования запросов с использованием распределенных вычислений на основе Oracle Weblogic сервера.
Программа курса
- Факторы, влияющие на производительность приложений, проблемы производительности, роли оптимизации.
- Выбор методологии оптимизации.
- Oracle.
- Логическая и физическая компоновка базы данных.
- Использование табличных пространств с блоком, отличным от стандартного.
- Процессы управления сервером, механизмы управления памятью сервера и серверными процессами.
- Оптимальное использование.
- Механизмы мониторинга памяти.
- Разделяемый пул, и SQL область.
- Программная глобальная область.
- Фазы выполнения SQL операторов.
- Необходимость использования параметров в запросах.
- Использование системных представлений для мониторинга разбора SQL предложений.
- Понятие параллельного сервера.
- TNS адресаты.
- Настройка процессов прослушивания для работы с протоколами HTTP, FTP, WEBDav.
- Репозитарий XMLDB.
- Использование OCI библиотеки и стандарта JDBC для доступа к серверу Oracle.
- Утилита SQL Developer - как средство разработки и отладки SQL запросов.
- Общая архитектура распределенных вычислений Oracle.
- Фарм и Кластер, единая точка входа (SSO сервер).
- Oracle Weblogic сервер – основа создания распределенных вычислительных сред масштаба предприятия.
- Пример использования сервера приложений для быстрой генерации отчетов в стандартных форматах (pdf, xls, rtf, html ) с использованием приложения xmlpublisher – как альтернатива Oracle Reports.
- Новые типы данных 9i, 10g.
- Функции для работы с TimeStamp Рациональное использование табличных пространств для размещения больших объектов.
- Использование объектных и агрегатных типов для хранения данных.
- Генерация плана выполнения запросов.
- Команда Explain Plan.
- Отображение плана выполнения запросов утилитами SQL Developer и JDeveloper.
- Старый, добрый SQL*Plus тоже умеет отображать план выполнения запросов.
- Использование представления V$SQL_PLAN для анализа выполненных запросов.
- Использование Enterprise Manager для просмотра планов выполнения запросов
- Методы трассировки SQL запросов.
- Параметры инициализации сервера и конфигурирование сессии для проведения трассировок.
- Форматирование трассировочных файлов.
- Oracle Session Resource Profiler для получения информации о ходе выполнения операторов.
- Использование Oracle SQL Analyze для идентификации и корректировки “плохих” SQL запросов.
- Функционирование оптимизатора.
- Оптимизатор по правилам и стоимости.
- Выбор режима оптимизации на различных уровнях.
- Различные пути доступа к данным.
- Выбор оптимального пути.
- Воздействие индексов на методы доступа к данным.
- Типы индексов.
- Индексы и ограничение целостности в базе данных.
- Сбор статистики по объектам, схемам и системе.
- Когда собирать статистику.
- Типы статистических данных.
- Пакет DBMS_STATS и методы сбора статистики.
- Мониторинг автоматического сбора статистики.
- Индексная статистика.
- Построение статистических Гистограмм.
- Гистограммы и селективность выборок.
- Управление стоимостным оптимизатором.
- Параметры, влияющие на режим оптимизации.
- Правила использования подсказок.
- Управление целями оптимизации.
- Категории подсказок.
- Сортировки и группировки.
- Использование аналитических функций в запросах.
- Управление Фреймами.
- Ввод дополнительных оконных переменных в запросы.
- Join запросы.
- Объединение множества таблиц.
- Использование HASH JOIN.
- Настройка рабочих областей памяти для выполнения HASH операций.
- SQL 1999 и JOIN операции.
- Оценка JOIN статистики
- Язык манипулирования данными DML.
- Выполнения сложных операторов DML с подзапросами.
- Оператор Merge.
- Подсказки оптимизатору при выполнении больших вставок данных.
- Стабилизация плана выполнения запроса и создание OutLines.
- Использование стабильных планов.
- Редактирование сохраненных OutLines.
- Язык DDL.
- Создание и изменение таблиц (DDL).
- Команда Create Table.
- Определение параметров хранения таблиц на физическом уровне.
- Локальное управление табличными пространствами.
- Сегменты, экстенты, блоки.
- Параметры блоков – почему в 10g их стало значительно меньше.
- Создание временных транзакционных и сессионных таблиц.
- Создание таблиц с разбивкой на партиции.
- Глобальные и локальные индексы.
- Ранжирование партиций, листовые и HASH партиции.
- Комбинированные партиции.
- Индексные таблицы.
- Доступ к данным в индексных таблицах, проблемы обновления данных.
- Особенности размещения индексных таблиц в физических блоках дисковой памяти.
- Индексы по функциям
- Таблицы, организованные как внешние.
- Загрузка в базу данных JDBC драйвера стороннего разработчика для обеспечения доступа к другим базам данных.
- Настройка безопасности доступа к протоколу TCP из Java приложений в Oracle сервере.
- “Откладываемые” ограничения целостности и проблемы каскадного обновления первичных ключей.
- Команда SET CONSTRAINT.
- Изменение структуры таблицы, команда Alter table и ограничения целостности.
- Создание неуникальных индексов для первичных и уникальных ключей.
- Мгновенное включение ограничений.
- Использование функций в индексах.
- Deterministic функции.
- Индексы и оптимизация.
- Необходимость использования индексов.
- Особенности хранения индексов на дисковом пространстве.
- Кластеры.
- Hash кластеры с сортировкой и кластеры одной таблицы.
- Необходимость использования.
- Практический пример преобразования не кластеризованных таблиц в кластеризованные.
- Кластерные индексы.
- Материализованные представления.
- Сколько создавать материализованных представлений.
- Типы представлений и методы обновления.
- Преобразование сложных запросов в материализованные представления.
- Оптимизация PL/SQL.
- Агрегатные типы данных (массивы и таблицы PL/SQL).
- Оператор BULK COLECT и операции DML.
- Извлечение данных из базы данных в PL/SQL таблицы – оператор BULK FETCH.
- Преобразование типов данных.
- Ссылочные типы данных.
- Ассоциативные таблицы и правила доступа к их элементам.