Oracle Tuning Pack 11g

Для администраторов баз данных и разработчиков приложений настройка приложения является очень важной функцией, на выполнение которой тратится значительная часть времени. Некачественная настройка бизнес-приложения может сказываться на работе не только нескольких пользователей, но и предприятия в целом, поэтому компании вкладывают значительные ресурсы в обеспечение бесперебойной работы жизненно важных для них приложений. Пакет Oracle Tuning Pack, входящий в комплект продуктов Oracle Database 11g, предлагает чрезвычайно выгодное и простое в использовании решение, которое автоматизирует весь процесс настройки приложений. Для повышения производительности SQL используются мониторинг в режиме реального времени и программы консультанты SQL-Advisor, бесшовно интегрированные со средствами Enterprise Manager Database Control и Grid Control. В результате получается полнофункциональное решение для автоматизации сложной и трудоемкой задачи настройки приложений.

Ключевые функции

  • Консультант по настройке SQL
  • Автоматический консультант по настройке SQL
  • SQL-профили
  • Консультант по доступу коператорам SQL
  • Наборы настройки SQL
  • Мастер реорганизации объектов

Ключевые преимущества

  • Полноценное решение для настройки приложений и SQL-операторов, которое делает ненужной ручную настройку
  • Возможность автоматической настройки SQL-операторов
  • Повышение производительности и надежности системы с существенным сокращением расходов на управление

Пакет Oracle Tuning Pack 11 g обеспечивает максимальные преимущества, если его использовать совместно со следующими продуктами Oracle: 

  • Oracle Diagnostics Pack
  • Oracle Configuration Management Pack
  • Oracle Provisioning Pack
  • Oracle Database Change Management Pack
  • Опция Oracle Real Application Testing

Мониторинг SQL-запросов в режиме реального времени

Первым этапом настройки SQL-запросов является выявление неэффективных SQL-операторов, потребляющих избыточное количество системных ресурсов. Для администраторов БД всегда представляли острую проблему SQL-запросы, длительное время выполняющиеся в реальных производственных средах - у администраторов попросту не было средств, позволяющих определить, осталось до завершения такого запроса несколько мгновений, или же запрос вышел из-под контроля, и для его завершения понадобится длительное время. Средство мониторинга SQL-запросов в режиме реального времени, впервые представленное в составе СУБД Oracle Database 11 g , позволяет очень быстро и просто выявлять и устранять проблемы производительности, возникающие в связи с длительными SQL-запросами. Активные дисплеи отслеживают информацию о выполнении операторов SQL с помощью новой функции детальной SQL-статистики, автоматически обновляемой без ущерба для работы производственной системы.

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

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

Рисунок 1.Мониторинг SQL-запросов в режиме реального времени

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

Консультант по настройке SQL

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

Предлагаемая Oracle программа-консультант по настройке SQL-запросов (SQL Tuning Advisor) - это ответ компании на все подводные камни, связанные с ручной настройкой SQL . Эта программа автоматизирует процесс настройки, выполняя комплексный анализ всех возможных способов настройки того или иного SQL-оператора. Анализ и настройка выполняются усовершенствованным средством оптимизации запросов, входящим в состав ядра БД. SQL Tuning Advisor выполняет четыре типа анализа:

  • Анализ статистики: средство оптимизации запросов на основе оперативной статистики по объектам генерирует эффективные планы выполнения. В ходе такого анализа выявляются объекты с устаревшими или неполными статистическими данными, после чего консультант выдает рекомендации по устранению проблемы.
  • Профилирование SQL: эта функция, впервые представленная в составе СУБД Oracle Database 10 g , олицетворяет собой новаторский подход к настройке SQL. Традиционная настройка SQL-запросов включает в себя ручную работу с кодом приложения с использованием подсказок от средства оптимизации. Профилирование SQL делает ненужным ручное вмешательство, позволяя настраивать операторы SQL без модификации кода приложения. Такая возможность настраивать SQL-запросы, не изменяя программный код, также способствует решению проблемы настройки пакетных приложений. Теперь пользователи пакетных приложений избавлены от необходимости сообщать о проблеме поставщику приложения и несколько недель или даже месяцев ожидать исправления программного кода для настройки оператора. Благодаря профилированию SQL нам удалось автоматизировать процесс настройки, а также сделать его оперативным.
  • Анализ путей доступа: использование индексов позволяет устранить необходимость в считывании таблиц полностью и благодаря этому радикально повысить эффективность SQL-оператора. Поэтому эффективное индексирование - один из распространенных методов настройки. В ходе анализа идентифицируются новые индексы, способные существенно улучшить производительность запроса, после чего пользователю выдается соответствующая рекомендация.
  • Анализ структуры SQL: причиной низкой эффективности могут быть проблемы в структуре операторов SQL. В операторе возможны как синтаксические или семантические ошибки, так и неэффективность самой структуры. В ходе анализа генерируются предложения по изменению структуры выбранных операторов SQL, реализация которых способна повысить эффективность операторов.

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

Рисунок 2. Страница рекомендаций консультанта по настройке SQL

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

Автоматический консультант по настройке SQL

Консультант по настройке SQL (SQL Tuning Advisor) также может работать в автоматическом режиме. В этом режиме программа-консультант автоматически запускается в системе в качестве задачи техобслуживания. При каждом запуске консультант выбирает в системе SQL-запросы, порождающие большую нагрузку, и генерирует рекомендации по их настройке. Автоматический консультант по настройке SQL можно сконфигурировать таким образом, чтобы он автоматически применял рекомендации SQL- профиля. Если пользователь включает автоматическое применение, программа-консультант создает SQL-профили только для тех операторов SQL, для которых доступно по меньшей мере трехкратное повышение эффективности. Другие типы рекомендаций, в том числе по созданию новых индексов, обновлению статистики средства оптимизации или изменению структуры SQL-запросов, можно применять только вручную. Операторы языка DML не учитываются автоматическим консультантом по настройке SQL в качестве средства настройки. Имеется возможность просматривать сводку по результатам автоматической настройки SQL за заданный период времени (например, за прошедшие семь дней), а также просматривать подробный отчет по рекомендациям, выданным для всех обработанных SQL-операторов. Такие рекомендации затем можно выборочно применять вручную. Кроме того, возможен просмотр автоматически примененных рекомендаций.

Рисунок 3. Отчет по автоматической настройке SQL

Автоматический консультант по настройке SQL можно сконфигурировать на запуск в любом окне техобслуживания, а можно полностью отключить.

Наборы настройки SQL

Программы-консультанты по SQL рассчитаны на прием информации из нескольких источников SQL-команд, таких как Automatic Database Diagnostic Monitor (ADDM), Automatic Workload Repository (AWR), кеш курсора и определяемые пользователем SQL-запросы. Это делает возможным настройку практически любых операторов SQL, представляющих для пользователя интерес. Как правило, операторы SQL из таких источников сначала загружаются в новый объект под названием "набор настройки SQL" (англ. SQL Tuning Set, STS), который затем передается в программу-консультант в качестве входных данных. Набор настройки SQL представляет собой новый объект в базе данных, используемый для считывания информации о загруженности SQL-операторов. Такой набор включает в себя:

  • один или несколько SQL-операторов;
  • соответствующий контекст выполнения, например, пользовательские структуры, список значений связывания и т.п.;
  • соответствующую базовую статистику по выполнению команд, например, истекшее время, процессорное время и т.п.

Рисунок 4. Управление наборами настройки SQL

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

Консультант по доступу к операторам SQL

Структура базы данных может оказывать существенное влияние на общую эффективность работы приложения. Программа-консультант по доступу к операторам SQL (SQL Access Advisor) предоставляет всеобъемлющие рекомендации по способам оптимизации структуры БД с целью обеспечить максимально эффективную работу приложения. При их совместном применении консультант по доступу к операторам SQL и консультант по настройке SQL представляют собой комплексное решение для настройки приложений БД. Эти программы позволяют автоматизировать все используемые на сегодняшний день приемы ручной настройки и образуют ядро предлагаемого компанией Oracle решения для автоматической настройки SQL .

Консультант по настройке SQL принимает входные данные изо всех источников, которые могут понадобиться пользователю, в том числе из кеша курсора, репозитория Automatic Workload Repository (AWR) или любой другой заданной пользователем рабочей нагрузки, а также способен моделировать предполагаемую загруженность в случае, если структура содержит измерения или связи между первичными и внешними ключами. Консультант выполняет комплексный анализ загруженности и при необходимости предоставляет рекомендации по созданию новых разделов или индексов, удаляет все неиспользуемые индексы, создает новые материализованные представления и журналы материализованного представления. Определение оптимальной стратегии разбиения на разделы или стратегии индексирования для конкретной рабочей нагрузки - это сложный и трудоемкий процесс, требующий экспертных знаний. В дополнение к запросам загруженности, консультант по доступу к SQL-операторам учитывает затраты на операции вставки/обновления/удаления и выдает соответствующие рекомендации с количественным прогнозом ожидаемого выигрыша по эффективности, а также создает сценарии, необходимые для применения таких рекомендаций.

Рисунок 5. Страница рекомендаций консультанта по доступу к SQL

На рисунке 5 изображена страница рекомендаций программы-консультанта по доступу к операторам SQL. Приведенные рекомендации упорядочены по коэффициенту улучшения загруженности. Пользователь может выбирать рекомендации как по отдельности, так и все вместе и применять их, просто нажав кнопку Implement. Консультант по доступу к операторам SQL делает процесс доступа к структуре простым и доступным. Он сообщает пользователю, какие типы индексов, разделов и материализованных представлений требуются для того, чтобы максимально повысить эффективность работы приложения. Автоматизируя эту чрезвычайно важную функцию, консультант по доступу к операторам SQL устраняет необходимость в подверженном ошибкам, продолжительном и дорогостоящем процессе ручной настройки. Программа-консультант работает быстро и проста в применении; кроме того, при использовании совместно с консультантом по настройке SQL она превращается в наиболее точное и экономически эффективное решение для настройки производительности приложений.

Мастер реорганизации объектов

Пакет Oracle Tuning Pack 11 g также предоставляет возможность реорганизации объектов. Эффективно управляя использованием места на диске вашими табличными пространствами путем удаления неиспользуемого места, вы не только оптимизируете работу с дисковым пространством, но и повышаете производительность работы, сокращая количество ненужных обращений к диску. Ниже перечислены возможные применения реорганизации:

  • восстановление фрагментированных индексов и таблиц;
  • перемещение объектов в другое табличное пространство;
  • воссоздание объектов с оптимальными атрибутами для хранения.

Пакет Oracle Tuning Pack 11 g включает в себя мастер для проведения реорганизации на уровнях логической структуры и табличного пространства, а также предоставляет возможность выбора между проведением реорганизации в оперативном и автономном режимах. Кроме того, мастер создает отчет по анализу воздействия и обзорный сценарий, содержащий точное описание операций, которые планируется выполнить. Это позволяет пользователям получить четкое представление о последствиях операции до ее выполнения.

Лицензирование

Функции лицензирования доступны для использования через такие продукты, как Oracle Enterprise Manager Database Control, Oracle Enterprise Manager Grid Control, Oracle SQL Developer, а также программные интерфейсы, распространяемые в комплекте с ПО Oracle Database. Использование этих и других функций, описанных в документации по лицензированию продуктов, требует лицензии на пакет Oracle Tuning Pack независимо от того, какой механизм обеспечения доступа вами используется.


Страница сайта http://test.interface.ru
Оригинал находится по адресу http://test.interface.ru/home.asp?artId=25998