Watch, Follow, &
Connect with Us

Vsevolod Leonov

DB Optimzier XE для разработчиков Delphi и C++Builder

Одна из предыдущих публикаций была посвящена мультиплатформенному средству администрирования баз данных DBArtisan XE. Этот инструмент является классическим примером «все-в-одном» и «все-что-нужно» для управления базами данных на различных платформах «из-одного-окна».

Но поистине животрепещущей проблемой (или просто задачей) для разработчиков систем на основе СУБД является оптимизация производительности. При современных аппаратных мощностях  оптимизировать код клиентского приложения можно и нужно, но такая задача достаточно просто решается за счет а) правильного программирования б) привлечения средств профилирования и журналирования программного кода, таких как AQTime и CodeSite в составе Delphi XE и C++Builder XE.

Под «правильным программированием» подразумевается выполнение более-менее продуманных запросов с точки зрения объема возвращаемых наборов данных, а также ограничение числа открытых запросов/хранимых процедур. Следует также запускать «долгоиграющие» запросы в отдельном потоке и соблюдать типовые правила создания эргономичного интерфейса. Если прогнозируемая операция требует определенного времени на выполнение, то нужно эту ситуацию предвидеть и сделать правильное интерфейсное оформление:
1) песочные часы
2) анимированный индикатор прогресса выполнения
3) подтверждение на запуск
(сортировано по мере увеличения времени ожидания).

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

Представленный видео-обзор продукта DB Optimizer XE (14 минут) как раз и демонстрирует, как использовать профессиональное средство для повышения производительности баз данных, включая ситуации, когда используется несколько платформ баз данных одновременно.

Нагрузки на базу данных неравномерны, причем непредсказуемо неравномерны вследствие значительной масштабируемости системы. Вот тут поистине DB Optimizer XE оказывает неоценимую помощь за счет возможности простой организации нагрузочного тестирования и последующего визуального анализа «кривой профилирования» и интерактивного плана выполнения. Кроме того, автоматически генерируются более производительные планы выполнения как за счет внедрения подсказок (hint injection), так и перефразирования проблемных SQL-запросов.

Кстати, хотел рассказать вполне себе интересную историю. Она про разработчиков. Помимо разработки приходится еще и «присматривать» за чужими системами, внедренными в компанию. Как-то раз выяснилось, что система стала выносить мозг простым пользователям крайней неспешностью, вальяжностью и разнузданностью. Сами понимаете - та еще задачка. Одно дело - свою базу данных анализировать на предмет наличия отсутствия, а другое - чужая. Гений российских программистов победил, а большинство хранимых процедур были навсегда избавлены от курсоров, а наиболее нагруженные таблицы разжились индексами. Улучшенная система дала прикурить предыдущему варианту в полный рост: шутка ли - увеличение производительности на два порядка!

Но зачем же проявлять свой гений, талант и смекалку в утомительном застировании чужой базы? DB Optimizer XE сразу даст вам рейтинг обнаглевших SQL-запросов, покажет «левые» индексы, предложит хорошие hint-ы и т.д. Вот уж тут учить DB Optimizer XE не надо: всё, что человечество считает эффективным способом повышения производительности баз данных, найдется без труда.

Скачайте trial-версию DB Optimizer XE и попробуйте. Одна из четырех основных платформ (Oracle, DB2, Sybase, SQL Server) обязательно найдется в вашем распоряжении :)

Posted by Vsevolod Leonov on April 19th, 2011 under and |



14 Responses to “DB Optimzier XE для разработчиков Delphi и C++Builder”

  1. Vsevolod Leonov » DBArtisan для разработчиков на Delphi и C++Builder Says:

    [...] с DBA, то покажите ему, как оптимизировать базы данных видео-обзор продукта DB Optimizer XE. Posted by Vsevolod Leonov on April 6th, 2011 under and [...]

  2. Vsevolod Leonov » Семинар Embarcadero, Санкт-Петербург, 27 апреля 2011 г. Says:

    [...] БД; DB Optimizer - повышение производительности БД (видео-обзор на 14 мин.); DB ChangeManager - управление изменениями; Rapid SQL - [...]

  3. Vsevolod Leonov » Embarcadero на DevCon’11 компании Microsoft Says:

    [...] Данное решение сочетает в себе ряд продуктов DBArtisan, DB Optimizer, Rapid SQL, DB Change [...]

  4. Vsevolod Leonov » MacbookPro17, открыл крышку Says:

    [...] дармоеды (привет моему бывшему шефу), кто-то на оптимизации запросов к базам данных (контекстная реклама, ну вы понимаете). Нам же [...]

  5. My Homepage Says:

    … [Trackback] …

    [...] There you will find 13583 more Infos: blogs.embarcadero.com/vsevolodleonov/2011/04/19/dboptimzierxedelphicbuilder/ [...] …

  6. Read more on Herbal Incense Says:

    … [Trackback] …

    [...] Read More here: blogs.embarcadero.com/vsevolodleonov/2011/04/19/dboptimzierxedelphicbuilder/ [...] …

  7. visit Says:

    … [Trackback] …

    [...] Read More here: blogs.embarcadero.com/vsevolodleonov/2011/04/19/dboptimzierxedelphicbuilder/ [...] …

  8. medical assistant training Says:

    … [Trackback] …

    [...] Read More Infos here: blogs.embarcadero.com/vsevolodleonov/2011/04/19/dboptimzierxedelphicbuilder/ [...] …

  9. garden services north london Says:

    … [Trackback] …

    [...] Find More Informations here: blogs.embarcadero.com/vsevolodleonov/2011/04/19/dboptimzierxedelphicbuilder/ [...] …

  10. beurette Says:

    … [Trackback] …

    [...] Read More Infos here: blogs.embarcadero.com/vsevolodleonov/2011/04/19/dboptimzierxedelphicbuilder/ [...] …

  11. Landscape Gardening North London Says:

    … [Trackback] …

    [...] Informations on that Topic: blogs.embarcadero.com/vsevolodleonov/2011/04/19/dboptimzierxedelphicbuilder/ [...] …

  12. photovoltaik Says:

    … [Trackback] …

    [...] Read More: blogs.embarcadero.com/vsevolodleonov/2011/04/19/dboptimzierxedelphicbuilder/ [...] …

  13. film porno en streaming Says:

    … [Trackback] …

    [...] Read More here: blogs.embarcadero.com/vsevolodleonov/2011/04/19/dboptimzierxedelphicbuilder/ [...] …

  14. online games Says:

    … [Trackback] …

    [...] Informations on that Topic: blogs.embarcadero.com/vsevolodleonov/2011/04/19/dboptimzierxedelphicbuilder/ [...] …

Leave a Comment



Server Response from: BLOGS1