[an error occurred while processing this directive] [an error occurred while processing this directive]
[an error occurred while processing this directive]
Свободные мысли о свободном софте
[an error occurred while processing this directive]
Logo CitForum CITForum на CD Форумы Газета Море(!) аналитической информации!
[an error occurred while processing this directive]
[an error occurred while processing this directive]
[an error occurred while processing this directive]
IT-консалтинг Software Engineering Программирование СУБД Безопасность Internet Сети Операционные системы Hardware
[an error occurred while processing this directive] [an error occurred while processing this directive]
[an error occurred while processing this directive] [an error occurred while processing this directive] [an error occurred while processing this directive] [an error occurred while processing this directive] [an error occurred while processing this directive]

21.07.2018

Google
WWW CITForum.ru
[an error occurred while processing this directive]

Новости мира IT:

Архив новостей

[an error occurred while processing this directive] [an error occurred while processing this directive]
[an error occurred while processing this directive]
Пятнадцатая техническая конференция «Корпоративные базы данных-2010»
Москва, 22–23 апреля
С Новым годом!

Генеральный спонсор
Техническая конференция
Корпоративные базы данных – 2008
Москва, 24–25 апреля
При поддержке РФФИ

Спонсор
[an error occurred while processing this directive] [an error occurred while processing this directive]
На правах рекламы
2004 г

Unicenter SQL-Station – еще один путь повышения эффективности работы приложений

Д. Мендельсон, Корпоративные информационные системы
Статья была опубликована на сайте "Storage News" и на сайте компании Interface

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

Часто, особенно если дело связано с использованием баз данных, медленное функционирование приложений связано с использованием "неоптимизированного" программного кода. Любой опытный SQL-программист наверняка сможет привести не один пример из своей практики, когда изменение программного кода, иногда простая перестановка параметров SQL-выражения, приводила к заметному ускорению работы программного приложения.

Таким образом, еще один путь повышения эффективности работы приложений - это оптимизация программного кода. Но этот путь требует наличия у программистов, помимо глубоких знаний, еще и большого опыта и даже интуиции. Но не стоит отказываться от этого пути, если знаний, опыта и интуиции ваших программистов недостаточно для достижения требуемого результата, потому всегда можно прибегнуть к помощи специальных программных продуктов. Например, к Unicenter SQL-Station - из набора программных продуктов компании Computer Associates - Unicenter Database Management Solutions.

Программный комплекс Unicenter Database Management Solutions представляет собой универсальный набор интегрированных инструментов для широкого диапазона промышленных СУБД, включая DB2, Oracle, Microsoft SQL Server и Sybase, которые позволяют осуществлять непрерывный мониторинг "пестрой" смеси баз данных, работающих в гетерогенных информационных средах современных предприятий. Данные мониторинга фильтруются и коррелируются для выделения факторов, которые оказывают отрицательное влияние на эффективность функционирования сложных бизнес-приложений. Осуществляя детальные замеры и выполняя глубокую аналитику баз данных, этот комплекс предоставляет инструменты выполнения автоматических реакций для предотвращения потенциальных проблем и обеспечения высокопроизводительного использования баз данных на вашем предприятии.

Как уже говорилось, Unicenter SQL-Station помогает избежать опасности встраивания неэффективного программного кода в приложения на этапе их создания или при модернизации уже существующих на предприятии программных систем. Даже если написанный вами программный код не содержит явных ошибок, это не гарантирует оптимальную работу ваших приложений. Исследования показывают, что неоптимизированные SQL выражения являются причиной от 60 до 80% проблем с производительностью работы приложений. Unicenter SQL-Station предоставляет возможность формирования оптимального, эффективного SQL кода, а также идентификации программ, встроенных SQL выражений и объектов баз данных, которые наиболее отрицательно влияют на производительность системы. Обеспечивая помощь при создании, тестировании, отладке и настройке SQL кода, этот продукт может значительно ускорить процесс создания программных приложений.

Чтобы не быть голословными, давайте рассмотрим пример по отладке Oracle SQL отрывка с использованием одного из компонентов Unicenter SQL-Station под названием Plan Analyzer.

Этап I, Анализ. Plan Analyzer функционирует как эксперт, который отвечает на все ваши вопросы по настройке SQL кода и предоставляет вам план оптимизации с подробными комментариями, позволяя:

  • анализировать план оптимизации в привязке к вашей вычислительной среде;
  • выявлять SQL код, который потребляет наибольшее количество ресурсов;
  • находить часто используемые запросы, которые манипулируют данными на основе атрибутов без соответствующих индексов;
  • просматривать статистику выполнения кода посредством наглядных графических презентаций;
  • применять усовершенствованные технологии настройки Oracle, такие как "array binding" и "hints";
  • проверять на наличие и исправлять ошибки типа "outer join", "referential" и выражения, которые могут быть трансформированы.

На рис. 1 изображено окно интерфейса Unicenter SQL-Station Plan Analyzer. Открыв файл нашего примера, мы видим в верхней части окна интерфейса наш SQL код, в центральной части - план выполнения нашего кода при условии использования "Hint Rule". План состоит из последовательности шагов, имеющих интуитивно понятную расцветку и комментарии, прочитать которые можно в нижней части окна при выборе соответствующего шага. В правой части окна можно посмотреть количественные данные и параметры, связанные с выбранным шагом плана. Данные и параметры объектов в контексте данного плана можно посмотреть, выбрав закладку "Objects" в центральной части экрана (рис. 2). Или, выбрав закладку "Execution Stats", можно увидеть точную количественную и временную статистику выполнения кода и использовать эти данные для анализа эффективности данного плана выполнения (рис. 3).

Рис. 1. Интерфейс Unicenter SQL-Station Plan Analyzer. Hint Rule.

Рис. 2. Интерфейс Unicenter SQL-Station Plan Analyzer. Hint All Rows.

Рис.3. Интерфейс Unicenter SQL-Station Plan Analyzer. Execution Stats.

Этап II, Оптимизация-1. Оптимизацию кода мы выполняем, используя технологию настройки Oracle "hints". Для сравнения результатов использования различных "hints" мы нажимаем на закладку в верхней части экрана "Hint All Rows" и получаем новый план (рис. 4), который можем проанализировать таким же образом, как и предыдущий.

Рис. 4. Интерфейс Unicenter SQL-Station Plan Analyzer. Hint All Rows.

Проведя предварительный анализ, мы решили создать собственный "Hints 1" и, проделав несложные манипуляции, получили еще один план (рис. 5). Эти эксперименты продолжились созданием "Hints2" и закончились на "Hints3".

Рис. 5. Интерфейс Unicenter SQL-Station Plan Analyzer. Hints1.

Попытавшись исправить SQL код, мы засомневались в правильности наших действий и решили их проверить, используя закладку "Check SQL" (рис. 6). В правой части этого окна отобразились все "некорректные", с точки зрения логики выполнения, элементы нашей программы.

Рис. 6. Интерфейс Unicenter SQL-Station Plan Analyzer. Check SQL.

Попытавшись исправить SQL код, мы засомневались в правильности наших действий и решили их проверить, используя закладку "Check SQL" (рис. 6). В правой части этого окна отобразились все "некорректные", с точки зрения логики выполнения, элементы нашей программы.

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

Рис. 7. Окно SQL Comparison. Plan Operation.

Рис. 8. Окно SQL Comparison. Execution Stats.

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

В заключение хотелось бы отметить, что наибольший результат в повышении эффективности удается достичь на высоконагруженных базах данных, в которых число транзакций в секунду измеряется тысячами и на кодах составленных программистами, не имеющими специального опыта. В этих случаях повышение производительности может улучшаться в несколько раз и даже на порядок. В нашем примере мы умышленно не стали делать акцент на точные значения полученных результатов. Целью было продемонстрировать еще один способ повышения эффективности работы приложений, используя специальные программные продукты. Описанный в нашем примере продукт принадлежит к обширному семейству программных продуктов компании Computer Associates — Unicenter Database Management Solutions. Этот программный комплекс позволяет решить большинство основных проблем, связанных с управлением распределенными базами данных, а именно:

  • управление производительностью баз данных;
  • администрирование баз данных;
  • резервное копирование и восстановление баз данных.

Дополнительная информация

За дополнительной информацией обращайтесь в компанию Interface Ltd.

[an error occurred while processing this directive]
[an error occurred while processing this directive]
[an error occurred while processing this directive] [an error occurred while processing this directive]

Планирование сроков проекта и вопросы осуществления лидерством проекта рассматриваются на сайте по управлению проектами.

[an error occurred while processing this directive]
[an error occurred while processing this directive]
[an error occurred while processing this directive] [an error occurred while processing this directive] [an error occurred while processing this directive] [an error occurred while processing this directive] [an error occurred while processing this directive]

Размещение рекламы — тел. +7 495 6608306, ICQ 232284597

[an error occurred while processing this directive] [an error occurred while processing this directive]
[an error occurred while processing this directive] [an error occurred while processing this directive] [an error occurred while processing this directive] [an error occurred while processing this directive] [an error occurred while processing this directive]

Редакция рекомендует:

Последние комментарии:

Что мы знаем об iPhone 4G? (7)
16 июля, 20:25

Подписка на новости CITForum.ru

Новые публикации:

7 июля

  • Управление параллелизмом с низкими накладными расходами для разделенных баз данных в основной памяти

  • Рекурсивные запросы в Oracle

  • Жесткий диск WD10EARS с сектором 4 КБ. Подготовка к эксплуатации в Linux.

    Обзоры журнала Computer:

    Газета:

  • Московские пробки - исследование IBM

  • От Osborne до iPad: эволюция портативных компьютеров

    19 мая

  • Прозрачный механизм удаленного обслуживания системных вызовов

  • Система моделирования Grid: реализация и возможности применения

    Газета:

    Майкл Стоунбрейкер:

  • Ошибки в системах баз данных, согласованность "в конечном счете" и теорема CAP

  • Дискуссия по поводу "NoSQL" не имеет никакого отношения к SQL

    29 апреля

  • Материалы конференции "Корпоративные Базы Данных-2010"

  • Разные облики технологии баз данных (отчет о конференции)

    14 апреля

  • MapReduce: внутри, снаружи или сбоку от параллельных СУБД?

  • Научные вызовы технологиям СУБД

    Обзоры журнала Computer:

    31 марта

  • Рационализация согласованности в "облаках": не платите за то, что вам не требуется

  • Взаимные блокировки в Oracle

  • Архитектура среды тестирования на основе моделей, построенная на базе компонентных технологий

  • Объектное представление XML-документов

    Газета:

  • Microsoft для российских разработчиков: практика с элементами фундаментальности

    10 марта

  • HadoopDB: архитектурный гибрид технологий MapReduce и СУБД для аналитических рабочих нагрузок

  • Классификация OLAP-систем вида xOLAP

  • BGP. Три внешних канала. Балансировка исходящего и входящего трафиков

    Газета:

  • Что мы знаем об iPhone 4G?

    17 февраля

  • MapReduce и параллельные СУБД: друзья или враги?

  • Объектно-ориентированное программирование в ограничениях: новый подход на основе декларативных языков моделирования данных

  • Системологический подход к декомпозиции в объектно-ориентированном анализе и проектировании программного обеспечения

    Газета:

  • Эволюция Wine

    3 февраля

  • Дом на песке

  • Реальное переосмысление "формальных методов"

  • Интервью с Найджелом Пендзом

    Газета:

  • iPad. Первый взгляд на долгожданный планшет от Apple

  • Я не верю в iPad [an error occurred while processing this directive]

    20 января

  • SQL/MapReduce: практический подход к поддержке самоописываемых, полиморфных и параллелизуемых функций, определяемых пользователями

  • Данные на лету: как технология потокового SQL помогает преодолеть кризис

    Обзоры журнала Computer:

    2 декабря

  • Сергей Кузнецов. Год эпохи перемен в технологии баз данных

    18 ноября

  • Генерация тестовых программ для подсистемы управления памятью микропроцессора

  • Сравнительный анализ современных технологий разработки тестов для моделей аппаратного обеспечения

    Все публикации >>>


    [an error occurred while processing this directive]
  • [an error occurred while processing this directive] [an error occurred while processing this directive]
    Купить сотовые телефоны в М.Видео
    Отличные цены на сотовые телефоны. Бесплатная доставка. Заказ в интернет-магазине и по телефону (495) 644-28-51
    www.mvideo.ru [an error occurred while processing this directive]

    Регистрация доменов в зонах .ru, .com, .net. Компания Rusonyx.

    IT-консалтинг Software Engineering Программирование СУБД Безопасность Internet Сети Операционные системы Hardware

    [an error occurred while processing this directive]
    Информация для рекламодателей PR-акции, размещение рекламы — тел. +7 495 6608306, ICQ 232284597 Пресс-релизы — pr@citforum.ru
    Послать комментарий
    Информация для авторов

    Редакция раздаёт котят!

    Rambler's Top100 TopList liveinternet.ru: показано число просмотров за 24 часа, посетителей за 24 часа и за сегодня This Web server launched on February 24, 1997
    Copyright © 1997-2000 CIT, © 2001-2009 CIT Forum
    Внимание! Любой из материалов, опубликованных на этом сервере, не может быть воспроизведен в какой бы то ни было форме и какими бы то ни было средствами без письменного разрешения владельцев авторских прав. Подробнее...
    [an error occurred while processing this directive]


    [an error occurred while processing this directive] [an error occurred while processing this directive] реклама:
    Производство и продажа серверов | забронировать гостиницу Санкт Петербурга | платный хостинг | IBM Rational. Аналитика и инструменты
    [an error occurred while processing this directive] [an error occurred while processing this directive]