Блог Александра Божко
Архивы
Рубрики
Поделись с другими!
  •  
  •  
  •  
  •  
  •  
  •  
  •  
  •  
  •  
  •  

В сегодняшнем посте я хочу сделать краткий обзор инструмента ER Studio, который позиционируется как комплексное решение для моделирования, разработки архитектуры и создания проектов физических баз данных. Сразу оговорюсь, что существует довольно много редакций продукта, которые отличаются функциональным набором и, соответственно, ценой. В состав Delphi XE3 Architect входит Developer редакция продукта. Именно ее я и использовал. Подробнее о ценах на продукт я планирую рассказать на сайте компании DC Link (реселлер продуктов Embarcadero на территории Украины).

Получение модели

После запуска ER Studio список возможных действий не поражает особым разнообразием. И единственное, если не считать немногочисленных настроек, что можно сделать это создать новую модель. Стандартный диалог предлагает три варианта.

Создать новую модель “с чистого листа”, импортировать модель ERWin или выполнить т.н. обратную инженерию существующей БД (построить модель по существующей базе)  Естественно реверсинжайн, оказался для меня самым интересным вариантом. Последовательность из пяти интуитивно понятных диалогов позволяет настроить модель, выбрать ее нотацию, объекты, которые следует включать и определить другие настройки.

Те, кто читают мой блог, возможно помнят, что в проекте, над которым я работаю, используется база MS Access. Именно из рабочей базы я и построил модели. В процессе создания модели ER Studio построила лог и выявила несколько потенциальных ошибок в модели, о чем честно меня уведомила (повод пересмотреть структуру БД). На выходе я получил,  как и заказывал, логическую и физическую модели. Здесь я ее стану сосредотачиваться на том, чем отличаются эти модели друг от друга, очевидно, что те, кто работал c БД, должны это себе представлять. Для остальных – ссылка на матчасть.

Несмотря на то, что у нас достаточно строго отслеживается и документируется структура БД, визуальных моделей мы не строили.

ER Studio предлагает несколько предустановленных схем размещения сущностей в диаграмме (круговая, иерархическая, древовидная, ортогональная, симметричная). Довольно удобная система масштабирования и другие атрибуты современных редакторов диаграмм имеют место. Для каждой из сущностей предусмотрен довольно функциональный диалог редактирования.

Обратите внимание на количество закладок. Несмотря на то, что кнопки снабжены картинками, как в старых добрых продуктах от Borland (что даже вызвало у меня некоторую ностальгию), все контролы работают во вполне современном стиле.

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

Что же можно сделать с существующей моделью?

Функциональность.

Логическая модель

Набор функциональных возможностей продукта зависит от редакции. Здесь я лишь вкратце опишу возможности Developer Edition.

Что касается модели логической, то тут все относительно просто.

Прежде всего, на основе логической модели можно создать физическую. Понятно, что последняя привязана к конкретной СУБД, а это, в свою очередь, означает, что ER Studio может стать неплохим конвертером структур баз данных. Особенно, с учетом всего разнообразия поддерживаемых СУБД.

Пару слов о поддерживаемых СУБД. Для некоторых баз (Oracle, Sybase, Interbase) предусмотрена нативная поддержка. Доступ к остальным обеспечивается с помощью ODBC драйверов.

Я проверил возможность генерации физической модели в формате MySQL 5. Весь процесс прошел относительно быстро и не вызвал никаких серьезных затруднений.

Кроме того, есть возможность сравнивать логические модели на предмет модификации (что тоже весьма удобно).

Физическая модель

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

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

Для решения своих задач, мы приобрели специальный инструмент, генерирующий на основе имеющейся БД MS Access скрипты, сравнивающий структуру и непосредственно данные. Эта программа “заточена” под MS Access и выполняет свои задачи практически идеально. Теоретически часть этих функций могла бы взять на себя и ER Studio. Особенно, если дело касается различных СУБД.

Кроме всего прочего, у ER Studio есть API, позволяющий автоматизировать операции и получать доступ к моделям извне. Как по мне, это очень важное достоинство продукта.

Отчеты

То, какие отчёты делает ER Studio меня (и не только меня) просто восхитило. Отчет может быть сгенерирован в формате html или rtf. Я не буду много рассказывать, я просто покажу отчет, построенный по физической модели базы от установленного WordPress движка.

Как вы можете видеть, отчет можно легко разместить на хостинге, что очень удобно при удаленной разработке.

Поддержка кириллицы

Кириллица в ER Studio поддерживается на уровне локали. С одной стороны это весьма удобно. Нет необходимости для каждого типа объектов применять отдельные настройки, более того, нет необходимости вообще что-то настраивать. С другой стороны, по определенным причинам я использую US English в качестве локали, и для меня это может быть проблемой. Хотя я не являюсь сторонником русификации процесса разработки, что в полной мере относится и к моделированию.

Общее впечатление

В принципе, даже в developer редакции ER Studio полноценный инструмент моделирования, предоставляющий разработчикам практически все необходимое для разработки и сопровождения моделей данных. Отчеты, аналитика, сравнение моделей – все это делает инструмент весьма удобным в использовании и расширяет спектр решаемых задач.

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

Что касается графического отображения самих моделей, то, на мой взгляд все очень наглядно и доступно. К тому же, если кому то, не нравится стандартное оформление модели, есть возможность настроить ее по собственному усмотрению.

Дополнительно

Если вы заинтересовались продуктом, то рекомендую посмотреть запись вебинара Андрея Совцова, посвященного рассматриваемому продукту.

К сожалению, возможно рассматриваемый продукт не имеет должной популярности на отечественном рынке. Однако, это достойный конкурент таким монстрам как тот же ERWin и на американском рынке ER Studio вполне востребованный продукт.

Вы можете прочитать детальное описание продукта на официальном сайте и посмотреть чем отличаются редакции.

Понятно, что в полной редакции продукт представляет собой нечто большее, чем просто инструмент для моделирования данных.

Так же хочу напомнить, в настоящий момент компания Embarcadero проводит сразу несколько акций. И вы можете выгодно приобрести RAD Studio Architect, в состав которого входит ER Studio Developer Edition.

Цена (updated)

Стоимость продукта существенно отличается от редакции.

Цена ER/Studio XE2 составляет 184463.75 руб.

Купить ER/Studio XE2 online.

 

Реклама

Новогодняя распродажа от Paragon Software со скидками до 60%!

Только до 27 декабря 2012 г. скидки до 60% на все бестселлеры Paragon Software:

1. Hard Disk Manager 12 Professional со скидкой 60% ( 2490,00 руб 996,00 руб.)

2. Partition Manager 12 Professional со скидкой 40% ( 590,00 руб.  354,00 руб.)

3. Migrate OS to SSD3 со скидкой 30% (390,00 руб. 273,00 руб.)

4. Paragon Backup & Recovery 10.5 Professionalсо скидкой 50% (890,00 руб.  445,00 руб.)

5. Drive Copy 11 Professional со скидкой 40% (490,00 руб.  294,00 руб.)

Поделись с другими!
  •  
  •  
  •  
  •  
  •  
  •  
  •  
  •  
  •  
  •  

9 комментариев: ER Studio (краткий обзор) upd.

  • Гибкий шаблон это конечно хорошо, но картинки сейчас у меня страшно за границы вылезают.

  • Вот мне даже интересно стало, как эта штука обработала бы мою рабочую базу в 500 таблиц и 900 хранимых процедур и что бы посоветовала.

    • Так попробуй, Алексей.
      Там же триалка доступна

    • Я вот пару лет назад пробовал (тоже порядка 500 таблиц, сейчас даже больше) – посмотрел да плюнул. Связи между таблицами в графическом виде – это интересно до определённого уровня…
      И интуитивно мне кажется, что для большИх БД (по кол-ву объектов) нужно что-то другое.

      P.S.: я ни в коем случае не ругаю утилиту, у нас в компании очень долго использовался аналог от Sybase.

      • А мне, наоборот, кажется, что чем сложнее структура, тем преимущества моделирования выглядят очевиднее. Но только модель должна быть первичной.
        А все 500 сущностей нет смысла отображать на одном экране. Естественно, модель нужно укрупнять и строить подмодели.

        А вообще, не далее как сегодня строил очередной запрос. Взял отчет вместо того, что бы рыскать по базе. Очень быстро и удобно.
        А при изменении структуры БД по модели сразу видно, что к чему привязано, и какие последствия влекут за собой изменения.

    • Интересно, а что за СУБД, какая нагрузка и какие объемы данных обрабатываете? И что за предметная область на 500 таблиц и 900 хп? :)

      • На моем прошлом месте работы нашей основной обязанностью была обработка медиа-измерений (социологических данных), которые мы получали от компании TNS (в прошлом – Gallup). База была большая по объему: примерно 2-2.5 млн. новых записей ежедневно, и по структуре: > 600 таблиц, вся “логика” на хранимых процедурах, целостность на триггерах, пакеты и процедуры Java.
        Чтобы весь этот информационный “бегемот” работал быстро, использовался Oracle. Я работал там более 10 лет, а база была спроектирована и реализована еще за несколько лет до меня. Модель БД, распечатанная на склеенных листах A4, занимала всю стену. Главное, в чем помогли нам модели и средства, аналогичные ER/Studio это:
        1) Начальный проект и то, что работало в последний год – мало походили друг на друга. Изменения в структуре БД затрагивали такое количество элементов всей системы, что прежде, чем начать реализацию этих изменений, надо было оценить степень их влияния, оценить выполнимость и составить реалистичный план проекта.
        2) С этой БД работало несколько групп сотрудников: разработчики разных подсистем, разработчики
        аналитических программ, инженеры ETL, и т.п. Возможность для каждой группы всякий раз работать только с подмоделью, включающей только важные и необходимые элементы БД – дала колоссальный выигрыш во времени и в качестве реализации приложений.
        3) Первый вариант БД был на MS SQL Server, затем, по мере усложнения, перешли на Oracle, причем некоторое время оба варианта “жили” одновременно. В течение всего срока неоднократно мигрировали на более новые версии СУБД. Сделать это без уже созданной модели было бы в несколько раз медленнее.
        4) Потом появились филиалы в разных городах с их локальными вариантами БД. Да, на базе центральной, но у каждого филиала была своя специфика. Хуже того, на разных СУБД и их версиях. Не знаю, что бы мы делали без возможности проектировать БД на логическом уровне моделей с последующей автоматизированной реализацией физической модели для указанного типа СУБД!
        Это только для примера, поскольку я не могу поставить подход к использованию моделей данных в моей старой компании в пример всем, как идеальный. Наверняка, можно было бы получить от их использования гораздо больше пользы, как для разработчиков, так и для наших бизнес-пользователей.

        • Для меня проектирование БД является полетом души :) Я пробовал DB Architect на MySQL, но пришлось отказаться от него в пользу dbForge, т.к. последний позволял напрямую вносит изменения в БД из диаграммы. Т.е. я менял диаграмму в редакторе, а изменения тут же отображались в БД. DB Architect же выдавал скрипт, который необходимо было выполнить через клиентскую программу MySQL. Вообще DB Architect достаточно богат по возможностям построения/анализа диаграмм и это хорошее решение для проектирования объемных баз на промышленных СУБД.

Оставить комментарий

Ваш email не будет опубликован. Обязательные поля отмечены *

Вы можете использовать это HTMLтеги и атрибуты: <a href="" title=""> <abbr title=""> <acronym title=""> <b> <blockquote cite=""> <cite> <code> <del datetime=""> <em> <i> <q cite=""> <strike> <strong>

Продукты DevArt
Купить онлайн:



Читай русскоязычные Delphi блоги
Каталог блогов Blogdir.ru
Яндекс.Метрика