Tuning Pack

Oracle Tuning Pack – дополнительная опция для управления Oracle Database, наиболее эффективное и легкое в использовании решение, которое полностью автоматизирует процесс настройки приложений. Улучшение производительности SQL достигается с помощью мониторинга выполнения SQL в реальном времени и SQL-советников, интегрированных с Oracle Enterprise Manager Cloud Control 12c, и все это вместе предоставляет всестороннее решение для сложной и требующей много времени задачи по настройке приложений.

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

Первый шаг в настройке SQL – это выявление «тяжелых» SQL-операций, потребляющих значительное количество системных ресурсов. Традиционно долго выполняющиеся SQL-операции предоставляли администраторам баз данных массу проблем на живых рабочих системах, так как у них никогда не было средств, чтобы выяснить, сколько времени осталось до завершения долгого запроса – несколько мгновений или несколько часов. Real-Time SQL Monitoring, появившийся в Oracle Database 11g, предоставляет самый быстрый и самый легкий способ выявления и исправления проблем с производительностью долго выполняющихся SQL-предложений. Теперь администраторы могут видеть выполнение SQL в реальном времени через специальные экраны Enterprise Manager с детальной, динамически обновляющейся статистикой по каждому шагу плана выполнения SQL. Сбор статистики выполнения SQL практически не оказывает влияния на производительность рабочей системы.

Администраторы теперь имеют мощное средство для отслеживания сложных планов выполнения запросов, выявления плохих механизмов индексации и перекосов в параллельном выполнении запросов – все в реальном времени.

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

SQL Tuning Advisor является ответом Oracle на все недостатки и проблемы ручной настройки SQL. Он автоматизирует процесс настройки SQL путем всестороннего исследования всех возможных вариантов настройки SQL-предложения.

Анализ и настройка осуществляются с помощью существенно улучшенного оптимизатора запросов, встроенного в ядро базы данных. SQL Tuning Advisor проводит шесть типов анализа:

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

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

SQL Tuning Advisor может также работать в автоматическом режиме. В этом режиме советник по настройке запускается автоматически во время окна для плановых работ. Во время каждого выполнения советник выбирает тяжелые SQL-запросы в системе и генерирует рекомендации по их настройке.

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

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

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

Реорганизация используется для:

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