ИТ-портал компании «Инфосистемы Джет»

Новые опции Oracle Database 11g

Новые опции Oracle Database 11g

Компания Oracle активно развивает линейку своих продуктов, разрабатывает и внедряет новые технологии. В 2007 году выпущена новая версия Системы Управления Базами Данных (СУБД) Oracle 11gR1, релиз которой содержит в себе множество изменений. Часть из них была вынесена
в четыре опции:

  • Real Application Testing;
  • Oracle Advanced Compression;
  • Active Data Guard;
  • Total Recall.

Насколько они могут быть полезны, рассмотрим ниже.

Real Application Testing

Зачастую компании не спешат переходить на Oracle Database 11g. Множество предприятий все еще продолжают работать на более ранних вариан­тах СУБД. В основном, это связано не с отсутствием желания внедрять новые технологии, а из-за опасений возникновения проблем. Ведь до того как перейти на новую версию, было бы неплохо оценить быстродействие, надежность и стабильность работы системы. Уменьшить риски при переходе, а также снизить время и стоимость тестирования может помочь одна из новых опций Oracle 11g – Real Application Testing, которая состоит из:

  • Database Replay;
  • SQL Performance Analyzer.

Database Replay

Компонент Database Replay включает в себя механизм, позволяющий «захватывать» и «воспроизводить» нагрузку промышленной системы в тестовой среде. При этом отпадает необходимость моделирования нагрузки (создание скриптов, искусственно ее имитирующих). Вместо этого автоматически непосредственно на продуктовой базе «захватывается» реальная нагрузка. В итоге: не тратится время на разработку скриптов и результаты тестирования являются более достоверными. Также существует возможность нахождения различий между «тестовой» и «продуктовой» системами, что облегчает поиск вариантов решения проблемы.
«Захват» рабочей нагрузки происходит при обращении внешних клиентов к серверному уровню Базы Данных (БД). Таким образом, Database Replay может использоваться для тестирования производительности базы после внесения изменений от уровня сервера БД и ниже, например, таких как:

  • обновление БД, установка патчей, изменение параметров, изменения в схеме БД;
  • изменения конфигурации СУБД, такие как переход от одного экземпляра на RAC, ASM и т.д.;
  • изменения в устройстве хранения, сетевой инфраструктуры;
  • замена операционной системы, перевод на новое оборудование, установка патчей ОС, изменение параметров.

«Захват» нагрузки происходит на «продуктовой системе», а обработка, «воспроизведение» и анализ результатов – на тестовой (рис.1).

SQL Performance Analyzer

При изменении параметров и объектов СУБД возможны изменения планов выполнения SQL запросов, которые могут по-разному сказываться на доступности и производительности системы в целом. SQL Performance Analyzer (SPA) предоставляет функциональность, позволяющую обнаружить ухудшение производительности SQL. Принцип действия основан на «захвате» SQL нагрузки вместе с переменными и планами запросов и сверке результатов их выполнения на боевой и тестовой системах.

Пример изменений, для которых может использоваться SQL Performance Analyzer:

  • обновление БД;
  • изменение статистики оптимизатора;
  • новые индексы, материализованные представления, секционирование и т.д.;
  • изменение параметров БД (init.ora).

Oracle Advanced Compression

В Oracle11g был расширен режим компрессии. В отличие от предыдущей версии, Oracle Advanced Compression поддерживает сжатие транзакционных данных, компрессию и дедупликацию неструктурированных (Secure File), сжатие при создании резервной копии БД (backup),
а также сжатие сетевого трафика.

Рис. 1. «Захват» и «обработка» нагрузки.

При сжатии не только уменьшается объем базы, занимаемый на дисковых массивах, но и увеличивается производительность обработки больших потоков информации за счет уменьшения количест­ва операций «чтения/записи».

Active Data Guard

Для многих организаций очень важно, чтобы СУБД работала в режиме непрерывной доступности. Какие-либо сбои, приводящие к простою, могут быть весьма критичны для бизнеса. Поэтому, чтобы наиболее быстро восстановить функцио­нирование системы, нередко используется копия основной БД, работающая параллельно, на которую возможно переключиться в случае сбоя (так называемый Physical Standby). Active Data Guard – это дальнейшее развитие технологии standby. Но имеется ряд отличий и новых возможностей:

  • с основной базы могут передаваться журналы транзакций не в бинарном виде, а в виде операторов SQL, которые выполняются на резервной базе. Это позволяет держать physical standby в открытом режиме, но доступном только для чтения;
  • часть нагрузки с основного сервера (например, отчетность) можно перенести на резерв­ный, причем это будет абсолютно прозрачно для пользователей;
  • возможность простого и быстрого переключения на резервную БД (так же появилась возможность указать событие, по которому будет автоматически осуществляться перевод).

Total Recall (Flashback Archive)

Часто компаниям требуется сохранять в СУБД «исторические» данные. Причиной этому могут служить требования законодательства, а также стандарты безопасности и аудита. В той или иной степени такая возможность была реализована еще в предыдущей версии Oracle Database, но она имела свои «минусы»:

  • данные сохранялись только до тех пор, пока были «действительны» (не устаревали) в undo-сегменте;
  • при недостатке свободного места в undo-табличном пространстве, затирались более старые, но еще «не устаревшие» сведения.

Таким образом, после того как информация «устаревала», получить ее без достаточно трудоемких операций с БД не представлялось возможным.

В Oracle 11g, используя Flashback Archive, появилась возможность задавать время хранения «исторических» данных. Реализовано это следующим образом: создается копия, куда заносятся все изменения в основной таблице. Причем, для хранения можно задать отдельное табличное пространство. Эта копия не участвует в транзакционной схеме, благодаря чему не происходит существенного замедления при обращении к основной таблице.

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

Используя такую технологию, отсутствует возможность фальсификации «исторической» информации. Внести изменения прошедшей датой невозможно.
Но и у этой реализации, на мой взгляд, есть ряд недостатков: при включении режима сохранения у таблицы исключается возможность выполнения ряда DDL операций, таких как: удаление, изменение и переименование столбцов, конвертация long в LOB, операции над секциями, удаление и переименование таблиц.
В целом же рассматриваемый функционал может быть очень полезен как для аудита, так и для отчетности, когда необходимо получить данные на определенный период времени.

Ошибочно было бы полагать, что разные опции Oracle – это отдельный и никак не связанный функционал. Многие из них можно использовать совместно. Более того, они дополняют друг друга. Компания «Инфосистемы Джет» готова взять на себя работы по проектированию  и внедрению систем с использованием СУБД Oracle (в том числе и Oracle 11g с ее новыми возможностями).

В завершение разговора о СУБД Oracle в версии 11g, пополнившуюся четырьмя новыми опциями, описанными выше, отмечу, что три из них (Real Application Testing, Oracle Advanced Compression и  Active Data Guard) более интересны администраторам БД, в то время как Total Recall может быть полезна как администраторам, так и разработчикам приложений. Таким образом, нововведения призваны облегчить тестирование и настройку СУБД, повысить отказоустойчивость, помочь более рационально использовать ресурсы аппаратного обеспечения, а также осуществлять контроль над изменениями данных.

Вернуться к содержанию выпуска
Оставьте комментарий
Мы не публикуем комментарии: не содержащие полезной информации или слишком краткие; написанные ПРОПИСНЫМИ буквами; содержащие ненормативную лексику или оскорбления.
О журнале

Журнал Jet Info регулярно издается с 1995 года.

Узнать больше »
Подписаться на Jet Info

Хотите узнавать о новых номерах.

Заполните форму »
Контакты

Тел: +7 (495) 411-76-01
Email: journal@jet.su