Обзор

SQLab Xpert 3.1 находит и исправляет ошибки в SQL-коде, но ему недостает средств генерации отчетов

Берт Скальзо (для PC Week Labs)

Выявление недостатков в SQL-коде для СУБД Oracle зачастую напоминает поиск иголки в стоге сена, но пакет SQLab Xpert 3.1 фирмы Quest Software (www.quests.com) позволяет выполнить эту работу легко и быстро.

Новейшая версия этого ПО настолько хорошо зарекомендовала себя в ходе испытаний в Тестовом центре PC Week Labs, что мы присудили ей почетное звание Analyst’s Choice (“Выбор аналитика”) и советуем приобрести ее каждому администратору СУБД.

В версии 3.1 - множество новшеств; наибольшее впечатление производит возможность использования результатов серверной трассировки в клиентских сеансах настройки кода.

Нынешняя версия SQLab Xpert, поступившая в продажу в январе, по ряду показателей намного превосходит конкурирующие продукты, такие, как Plan Analyzer фирмы Platinum Technology и Enterprise Manager Tuning Pack корпорации Oracle.

SQLab Xpert 3.1 может работать в среде Windows 95, Windows 98 или Windows NT. Этот продукт совместим со всеми версиями СУБД Oracle; в частности, полностью поддерживаются новые объекты Oracle8.

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

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

SQLab Xpert способен составлять описания планов, отражая в них оператор WHERE

Новый флажок exclude SYS/SYSTEM на экране запроса особенно полезен на этапе идентификации проблемного кода. Он позволяет исключить из рассмотрения деятельность пользователей SYS и SYSTEM - обычно она не требует постороннего вмешательства.

Не все администраторы БД находят приемлемым для себя ручной поиск ошибок. Им должны понравиться “коллекторы” SQLab Xpert - определяемые пользователем процессы, которые осуществляют мониторинг работы БД и берут на заметку некорректно работающий SQL-код. У них есть два режима работы: интерактивный и фоновый. В первом сбор данных продолжается все время, пока открыто клиентское окно “коллектора”, во втором процессы помещаются в очередь серверных заданий.

В версии SQLab 3.1 появилась возможность сконфигурировать коллектор только для контроля запросов, обрабатываемых СУБД Oracle в определенном режиме оптимизации. Более того, SQLab может запоминать режим оптимизации для каждого запроса и автоматически использовать его во всех сеансах настройки, независимо от того режима, который задан в БД по умолчанию.

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

SQLab обладает уникальной способностью отображать в описании плана SQL-оператор WHERE (см. фотографию экрана). Кроме того, SQLab Xpert выводит на панели статистики трассировочную информацию СУБД Oracle. Это позволяет определить точное число записей БД, обработанных на каждом отраженном в плане шаге исполнения.

Следующий этап - корректировка, или настройка неудовлетворительного SQL-кода - реализован в SQLab Xpert удачнее, чем в других инструментах аналогичного назначения.

Вместо того чтобы вручную вводить информацию о версии и конфигурации СУБД, об оптимизаторе и рассматриваемых объектах, таких, как таблицы и индексы, администратору достаточно воспользоваться кнопкой Advise. SQLab Xpert предложит свои рекомендации по внесению изменений в SQL-код и по модификации объектов БД. Если администратор согласится с этими предложениями, SQLab Xpert поместит получившийся вариант в окно сеанса настройки в качестве одного из сценариев для сравнения.

Спектр рекомендаций SQLab Xpert существенно расширен в версии 3.1. Теперь этот продукт может помочь с факторизацией, соединением и сегментацией таблиц, устранением коррелированных подзапросов, параллелизмом, оптимизацией таблиц с индексами и поэтапных объединений. К сожалению, рекомендации SQLab Xpert рассчитаны больше на традиционные схемы БД, предназначенные для оперативной обработки транзакций (online transaction processing, OLTP), нежели на звездообразные схемы, широко распространенные в мире хранилищ данных. По словам представителей Quest, к концу года этот недостаток должен быть устранен.

Новый генератор отчетов Report Generator из состава SQLab Xpert производит полезные с точки зрения настройки отчеты по статистике исполнения, данным из репозитория, состоянию среды Oracle и сеансам настройки, но имеет и некоторые недостатки: пользователь не может по своему усмотрению изменять формы отчетов, к тому же возможности вывода отчетов в файл ограниченны.

Лучший репозиторий

В новой версии SQLab Xpert значительно улучшено администрирование интегрированного репозитория, используемого для хранения данных сеансов настройки под задаваемыми пользователями именами. Теперь можно, например, сохранять сеансы как версии уже сохраненных сеансов. Кроме того, можно сохранять данные сеанса настройки одной БД в репозитории, связанном с другой БД.

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

Еще одна новинка версии 3.1 - пункты Install Repository и Drop Repository меню File/Admin, появление которых упростило инсталляцию и деинсталляцию репозитория.

Со специалистом по СУБД Oracle, старшим администратором БД в корпорации Electronic Data Systems (Даллас, шт. Техас) Бертом Скальзо можно связаться по E-mail: bscalzo@aol.com.