IBM®
Перейти к тексту
    в России и странах СНГ [изменить]    Условия использования
 
 
   
    Главная страница    Продукты    Услуги и решения    Поддержка и загрузка    Мой профиль    
Перейти к тексту

developerWorks Россия  >  Information Management | XML | Open source  >

Введение в DB2 9: Улучшения, касающиеся разработки приложений

Изучите новый инструмент Developer Workbench, более глубокую интеграцию .NET, полную поддержку разработки XML и другие функции

developerWorks
Опции документа

Опции документа, требующие включения JavaScript, не отображаются

Обсудить


Выскажите мнение об этой странице

Помогите нам улучшить содержание


Уровень сложности: простой

Рав Ахуджа, менеджер по разработке и сопровождению DB2, IBM

06.06.2007

Новые усовершенствования для разработчиков в IBM® DB2® 9 для Linux®, UNIX®и Windows® включают новый инструмент Developer Workbench, более глубокую интеграцию со средой .NET, полную поддержку сред XML и SOA, новые драйверы и адаптеры для PHP и Ruby on Rails и новые примеры приложений. Эта статья, последняя в серии статей, рассказывающих о функциях DB2 9, предоставляет обзор этих усовершенствований

Введение

DB2 9 (бывшее рабочее название "Viper") предоставляет множество усовершенствований, которые упрощают разработку приложений баз данных, сокращают время разработки и повышают производительность труда разработчика. Кроме того, что DB2 9 предоставляет платформу для надежных корпоративных приложений, этот программный пакет также оптимизирован для быстрой разработки нового поколения приложений "Web 2.0" на основе Web-сервисов, потоков XML, синдикации данных и так далее.



В начало


Новый инструмент Developer Workbench

Developer Workbench - это инструмент визуального проектирования, который предназначен для быстрой разработки бизнес-объектов DB2; поставляется без дополнительной оплаты. Этот новый инструмент построен на инфраструктуре Eclipse и является заменой DB2 Development Center (который строился на архитектуре Swing).

Developer Workbench упрощает решение следующих задач:

  • Создание, просмотр и редактирование объектов базы данных (таких, как таблицы и схемы);
  • Изучение и редактирование данных в таблицах и строках;
  • Визуальное построение инструкций SQL и XQuery;
  • Разработка и размещение хранимых процедур, определяемых пользователем функций (UDF), подпрограмм и сценариев;
  • Отладка хранимых процедур™ SQL и Java;
  • Разработка приложений SQLJ;
  • Разработка запросов и подпрограмм для работы с данными XML;
  • Перемещение данных (например, загрузка и извлечение);
  • Сотрудничество и совместная работа над проектами с другими членами коллектива;
  • Миграция проектов из DB2 Development Center;
  • и другие...
Некоторые функции Developer Workbench поддерживаются не на всех платформах. Более ранние версии DB2 могут не поддерживаться в оригинальной версии Developer Workbench.

Кроме интерфейса для разработки приложений и объектов для DB2 9 в среде Linux, UNIX и Windows, Developer Workbench предоставляет также общий интерфейс для работы с DB2 на других платформах -- DB2 для iSeries™ и DB2 для z/OS®. Developer Workbench можно использовать также с IBM Cloudscape™ или Apache Derby.

Developer Workbench -- установка

Дистрибутивы Developer Workbench и DB2 9 находятся в одном комплекте носителей, но на разных дисках. Поскольку Developer Workbench доступен для использования на различных платформах и серверах данных IBM, его можно загрузить и через интернет. Процесс установки довольно прост; достаточно выполнить несколько нажатий мышью в программе установки с графическим интерфейсом. Для установки необходимо дисковое пространство около 400 Мбайт (размер может отличаться для разных платформ); дистрибутив включает независимый образ Eclipse, что позволяет устранить часть проблем, связанных с управлением версиями других инструментов Eclipse, установленных в системе. Справочное и учебные руководства по Developer Workbench доступны в информационном центре, который устанавливается вместе с Developer Workbench.

Developer Workbench -- компоновка

Developer Workbench имеет несколько представлений для разработки бизнес-объектов DB2:

  • Представление Database Explorer -- показывает, какие объекты имеются в базе данных (таблицы, хранимые процедуры, пользовательские функции, зависимости, удаленные серверы) и позволяет выполнять операции с этими объектами (например, создание, выполнение и просмотр свойств);
  • Представление Data Project Explorer -- позволяет выполнять действия по разработке процедур, пользовательских функций и инструкций SQL при помощи простых операций, таких, как перетаскивание мышью, копирование и вставка, работа с мастерами, контекстно-зависимые функции завершения ввода;
  • Представление Data Output -- позволяет просмотреть отчеты о действиях по разработке данных в базе данных.

Рисунок 1. Окно DB2 Developer Workbench с несколькими представлениями
Окно DB2 Developer Workbench с несколькими представлениями

Developer Workbench -- подпрограммы для разработки и размещения

Developer Workbench позволяет легко разрабатывать подпрограммы SQL и Java (хранимые процедуры и пользовательские функции). Эти объекты базы данных на стороне сервера могут помочь инкапсулировать бизнес-логику и снизить сетевой трафик. Используя эти подпрограммы в Developer Workbench, можно выполнить следующие типы действий:

  • Отобразить существующие на сервере базы данных подпрограммы;
  • Cоздать новые подпрограммы с помощью мастера;
  • Импортировать исходный файл подпрограммы или скопировать существующую процедуру в проект разработки;
  • Изменить исходный код и свойства процедуры с помощью редактора подпрограмм;
  • Упаковать процедуры Java в несколько JAR-файлов;
  • Разместить процедуры на других серверах (например, разместить подпрограмму, разработанную для DB2 для Windows-сервера на DB2 для System z™);
  • Снизить стоимость выполнения инструкций на DB2 для z/OS;
  • Параллельное сравнение и редактирование подпрограмм;
  • Экспорт процедур для независимого от интегрированной среды разработки размещения пакета;
  • Выполнение подпрограммы (пробный вызов);
  • Отладка хранимой процедуры посредством прохождения кода, установки контрольных точек и просмотра изменяющегося содержимого;
  • Перетаскивание подпрограмм из соединения с базой данных в проект.

Рисунок 2. Использование Developer Workbench для разработки хранимых процедур
Использование Developer Workbench для разработки хранимых процедур


В начало


Более глубокая интеграция с .NET

DB2 была самым первым из крупных серверов данных, предоставившим встроенную поддержку инфраструктуры .NET Framework от Microsoft®, даже раньше, чем это сделала сама Microsoft в SQL Server. Разработчики DB2 9 пошли еще дальше, предоставив более полную и глубокую интеграцию с .NET и Visual Studio, чтобы помочь пользователю в более короткие сроки разрабатывать мощные приложения. Усовершенствования DB2 в этой сфере:

  • Расширенный инструментарий и подключаемые модули для Visual Studio 2005;
  • Обновленный поставщик данных для .NET framework версии 2.0.

Расширенные подключаемые модули для Visual Studio 2005.

DB2 предоставляет подключаемые модули для Visual Studio, которые помогают в разработке .NET-приложений, Web-сайтов, Web-сервисов и бизнес-логики базы данных на стороне сервера с незначительным использованием кода C# или Visual Basic или вообще без него, не покидая среды Visual Studio. Эти подключаемые модули в DB2 9 значительно улучшены благодаря нескольким уникальным возможностям, для использования которых другим серверам данных обычно необходимо применять подключаемые модули сторонних разработчиков.

Функции этого улучшенного инструментария DB2 для Visual Basic включают:

Модуль IBM Server Explorer был удален из списка подключаемых модулей баз данных IBM для Microsoft Visual Studio 2005, но он сохранился для подключаемых модулей баз данных IBM для Microsoft Visual Studio 2003;
  • Новые конструкторы IBM, облегчающие работу с объектами базы данных (такими, как таблицы, представления, сценарии, процедуры и результирующие наборы);
  • Возможность сгенерировать и разместить Web-сервис на основе базы данных, не написав ни единой строки кода;
  • Интеграция в Microsoft Server Explorer для выполнения повседневных задач работы с базами данных (таких, как управление соединениями и просмотр объектов баз данных);
  • Возможность без лишних сложностей создать и выполнить отладку процедур SQL (в том числе, хранимых процедур общеязыковой среды выполнения CLR);
  • Возможность клонировать объекты базы данных;
  • Кэширование схемы для быстрого доступа к ее информации;
  • Расширенные возможности фильтрации объектов;
  • Возможность импорта и экспорта из сетки данных;
  • Интеграция с Microsoft Query Builder;
  • Поддержка сохраненных параметров для повторного выполнения подпрограмм;
  • Поддержка семейства серверов данных IBM, в том числе, Informix® Dynamic Server (IDS), DB2 для z/OS и DB2 для iSeries в дополнение к DB2 для Linux, UNIX и Windows;
  • Комплексная поддержка нового типа данных DB2 pureXML™ и функций.

Рисунок 3. Подключаемые модули DB2 для разработки хранимых процедур в Visual Studio 2005
Подключаемые модули DB2 для разработки хранимых процедур в Visual Studio 2005

Дополнительную информацию по интеграции DB2 9 и Visual Studio можно найти в разделе DB2 developerWorks zone for Visual Studio and .NET.

Обновленный собственный поставщик данных DB2 .NET

DB2 поставляется с собственным поставщиком данных .NET, который был обновлен для инфраструктуры .NET framework версии 2.0 и интегрирован в Visual Studio Server Explorer. Среди усовершенствований этого поставщика данных .NET следующие:

  • Поддержка стандартных классов System.Data.Common -- это позволяет разрабатывать приложения базы данных .NET общего назначения, не ссылаясь на какие-либо классы конкретного поставщика данных. Это особенно полезно, когда вы пишете код приложения, предназначенный для повторного использования на различных серверах (или поставщиках) данных. Где можно, классы поставщиков данных DB2 .NET наследуются от соответствующих классов в пространстве имен System.Data.Common namespace.
    DbProviderFactory myFactory = 
      DbProviderFactories.GetFactory("IBM.Data.DB2");

    В качестве альтернативы можно использовать класс DB2Factory для создания специфических для DB2 .NET-объектов.

    DB2Factory myFactory = DB2Factory.Instance;

  • Эквивалентность типов данных DB2 типам данных .NET -- пространство имен DB2Type имеет в.NET эквивалентный тип данных для всех типов данных DB2. Это представляет разработчикам возможность сохранить полное соответствие типов данных. Классы DB2Types также представляют средства для представления значений столбцов базы данных DB2 в виде отдельных объектов, которые могут быть равными нулю. Экземпляры классов DB2Types полезны также в качестве параметров хранимых процедур CLR или пользовательских функций;
  • Обновляемые результирующие наборы с возможностью прокрутки -- в существующий класс DB2Command были добавлены новые методы, которые позволяют создать результирующий набор с возможностью перехода по значениям. Это позволяет приложению обновить значения в отдельных столбцах или перемещаться по результирующим наборам вперед и назад;
  • Возможность организации страниц данных -- класс DB2Command теперь имеет метод ExecutePageReader, позволяющий приложению извлекать отдельные наборы строк из базы данных. Он позволяет приложению определить начальную строку извлечения и количество извлекаемых строк базы данных. Функция полезна при поиске определенного набора записей; это гораздо быстрее и проще, чем искать нужные строки, прокручивая весь результирующий набор;
  • Копирование из потока массовой загрузки -- новый класс DB2BulkCopyOperation предоставляет возможность копирования данных из потока массовой загрузки в таблицы DB2. Благодаря этому упрощается вставка записей из доступного источника, как, например, DataReader, или даже источника, не принадлежащего к DB2;
  • Пакетные обновления инструкций SQL -- свойство DB2DataAdapter, UpdateBatchSize, позволяет приложению определить, сколько инструкций SQL поместить в очередь, прежде чем выполнить их пакетом на сервере базы данных DB2. Это может повысить производительность, поскольку определяет меньшее количество отдельных передач данных между клиентским приложением и сервером базы данных.


В начало


Полная поддержка XML-разработки

DB2 9 использует технологию pureXML, которая предоставляет уникальный набор функций для управления и обслуживания XML-данных высокоэффективным способом. Технология pureXML включает чистый тип данных XML (который хранит XML в свойственном ему иерархическом формате, а не в виде больших объектов или разбитым на реляционные столбцы), XML-индексацию, поддержку текстового поиска XML, поддержку SQL/XML и XQuery, гибкое эволюционирование схем и несколько других функций, о которых можно прочитать в статье "What’s new in DB2 Viper: XML to the Core" (Новое в DB2 Viper - XML в центре внимания) (сайт developerWorks, февраль 2006 г.).

В качестве неотъемлемой части технологии pureXML, DB2 9 включает полную поддержку разработки ориентированных на XML и гибридных приложений, что способствует упрощению написания кода, снижению временных затрат на разработку и более быстрому внесению изменений в приложения. Поддержка разработки XML в DB2 9 включает следующие моменты:

  • Поддержка различных языков программирования и интерфейсов приложений;
  • Поддержка запросов к данным при помощи XQuery и SQL/XML (или сочетания обоих языков);
  • Комплексные функции работы с XML в Developer Workbench (в том числе, построитель запросов XQuery builder);
  • Тесная интеграция pureXML, Visual Studio и .NET;
  • Новые примеры кода разработки XML и улучшения базы данных DB2 SAMPLE.

Поддержка типа данных XML для языков программирования и интерфейсов

В клиентские интерфейсы DB2 были добавлены новые специфические для различных языков типы и привязки данных, чтобы обеспечить приложениям возможность работать с типом данных XML DB2 эффективно и без сбоев. В результате, для типа данных DB2 XML поддерживаются следующие популярные языки программирования и прикладные интерфейсы:

  • Языки -- C/C++, Java, C#, Visual Basic, Cobol, PHP;
  • Интерфейсы -- JDBC, CLI / ODBC, .NET, Embedded SQL, SQLJ.

Возьмем, например, поддержку DB2 для XML в JDBC. Новый драйвер DB2 для JDBC был улучшен для работы с XML-данными XML-данные для результатов запросов, а также входных и выходных параметров могут быть связаны при помощи таких типов данных Java, как: строки, байтовые массивы и потоки. Поскольку JDBC 3.0 пока не описывает собственный тип данных XML, DB2 предоставляет расширение типа XML, известное как com.ibm.db2.DB2Xml. Расширение DB2Xml extension имеет несколько очень полезных методов, которые облегчают работу с XML-данными. В приведенном ниже примере столбец извлекается в виде объекта DB2Xml. Затем метод getDB2String возвращает упорядоченное представление значения XML (не объявляя XML) в виде строкового объекта. Метод getDB2XMLBinaryStream("UTF-16") затем возвращает поток двоичных данных со значением XML в кодировке UTF-16 вместе с подходящей декларацией XML.

com.ibm.db2.jcc.DB2Xml xml1 = 
	(com.ibm.db2.jcc.DB2Xml) rs.getObject ("xml_stuff");
String s = xml1.getDB2String();
InputStream is = xml2.getDB2XMLBinaryStream("UTF-16");

Дополнительные примеры можно найти в статье "Разработка Java-приложений для работы с данными DB2 XML"(сайт developerWorks, май 2006 г.).

Поддержка XML в Developer Workbench

Developer Workbench включает комплексную поддержку XML, в том числе:

  • Поддержку типа данных XML -- этот тип данных считается в Developer Workbench привилегированным; он позволяет работать с типом данных XML в запросах и подпрограммах. Можно также просматривать, изменять и обновлять содержимое XML-документов в базе данных;
  • Поддержку хранимых процедур -- можно создавать и выполнять хранимые процедуры, которые содержат параметры типа данных XML (входные и выходные) или возвращают XML-данные;
  • Представление Data Output -- Вы можете просматривать столбцы с типом данных XML на странице результатов и отображать содержимое столбцов XML в виде дерева или текста документа;
  • Поддержку XML-схем -- можно загрузить существующие XML-схемы и документы XML-схемы из репозитория XML-схем в базе данных и просмотреть такие свойства, как целевое пространство имен или размещение схемы. Можно также зарегистрировать новые XML-схемы (и соответствующие документы XML-схем) или удалить их;
  • Проверку корректности документов XML -- можно выполнить проверку корректности значений XML для XML-документов в соответствии с зарегистрированной схемой XML;
  • Построитель запросов XQuery builder -- с помощью XQuery builder можно создавать законченные запросы, при этом не нужно даже понимать семантику XQuery. Запросы XML можно строить визуально, выбрав образцы результирующих узлов из представления дерева схемы или XML-документа и перетащив эти узлы мышью в сетку возвращаемых результатов. После того, как узел окажется в сетке, можно углубить запрос, добавив предикаты и параметры сортировки. Можно углубить запрос на несколько уровней, чтобы задать вложенные предикаты, предложения и выражения. Например, можно выбрать какой-либо узел, а затем в нем добавить предикат. В этом предикате можно добавить еще один предикат. После того, как запрос будет создан, можно протестировать его, выполнив непосредственно в Developer Workbench.

Рисунок 4. Построитель запросов XQuery builder в Developer Workbench
Построитель запросов XQuery builder в Developer Workbench

Поддержка pureXML для Visual Studio

Подключаемые модули DB2 для Visual Studio включают полную поддержку технологии pureXML, в том числе, функции для выполнения следующих действий:

  • Использование типа данных XML для столбцов и процедур;
  • Предоставление индекса XML для столбцов XML;
  • Возможность наглядного отображения XML-данных;
  • Обновление, импорт и экспорт XML-данных;
  • Проверка корректности базы данных XML по зарегистрированной XML-схеме;
  • Регистрация и отмена регистрации XML-схем;
  • Генерация образцов данных в соответствии с XML-схемой;
  • Создание и регистрация аннотированных схем XML;
  • Выполнение и наглядное отображение сценариев XQuery и SQL/XML;
  • Применение XSLT к XML-данным для настройки отображения в соответствии с предпочтениями пользователя.


В начало


Улучшенный драйвер DB2 для PHP

PHP становится одним из самых популярных языков разработки web-приложений. Этот язык сценариев с открытым исходным кодом несложен для изучения и поставляется вместе с множеством полезных функций, которые позволяют разработчикам легко организовать взаимодействие с HTML. С поддержкой и инструментарием от такой компании, как Zend, PHP также завоевал популярность в корпоративных средах и широко используется в сочетании с базами данных.

Хотя поддержка PHP для DB2 доступна уже некоторое время, драйвер для PHP, в разработке которого приняла участие корпорация IBM, появился в 2005 году. Наряду с прочими улучшениями, в DB2 9 расширение PHP (ibm_db2) было улучшено благодаря поддержке технологии pureXML. Последнюю версию драйвера можно бесплатно загрузить с web-сайта PECL, репозитория расширений для PHP, ссылку на который можно найти в разделе Ресурсы данной статьи.

Этот драйвер DB2 для PHP включен также в состав Zend Core для IBM --не требующей предварительной настройки, простой в установке среды разработки и производственной среды с поддержкой PHP, которая адаптирована для серверов данных DB2, IBM Cloudscape или Apache Derby. Дополнительную информацию по Zend Core для IBM можно найти в разделе Ресурсы данной статьи.



В начало


Добавление в DB2 поддержки Ruby on Rails

Ruby on Rails, web-инфраструктура с открытым исходным кодом, становится лидирующей технологией для очень быстрого создания приложений, использующих интернет. Поддерживая философию "соглашение выше конфигурации" и принципы динамичной разработки, Rails способна радикально снизить время и затраты ресурсов на создание web-приложений.

IBM создала DB2 9 для Ruby on Rails и выпустила драйвер Ruby и адаптер Rails для DB2. Стартовый набор Starter Toolkit for DB2 on Rails, который включает DB2 Express-C (бесплатный для разработки, размещения, распределения сервер данных), учебные руководства, примеры, обучающие флэш-ролики; доступны также другие обучающие материалы. Дополнительную информацию или ссылки на загружаемые файлы, относящиеся к DB2 on Rails, представлены в наборе alphaWorks Starter Toolkit, который можно найти в разделе Ресурсы данной статьи.



В начало


Заключение

В этой статье мы познакомились с некоторыми усовершенствованиями DB2, которые имеют отношение к разработке приложений и позволяют повысить эффективность нового поколения динамичных приложений и производительность труда разработчиков. Теперь вы можете попробовать поработать с DB2 9 и на практике познакомиться со всеми преимуществами.



Ресурсы

Научиться
  • Оригинал статьи Introducing DB2 9: Application development enhancements;

  • Зона управления информацией сайта developerWorks: developerWorks Information Management zone: Узнайте больше о DB2. Здесь вы найдете техническую документацию, обучающие статьи, информацию о курсах, продукты для загрузки, информацию о продуктах и многое другое;

  • Страница ресурсов сайта developerWorks по DB2 для Linux, UNIX и Windows Прочитайте статьи и практические руководства и подключитесь к другим ресурсам, чтобы углубить ваши знания DB2;

  • Получите дополнительную информацию о бесплатной версии DB2 Express С для сообщества разработчиков;

  • Что нового в DB2 Viper: XML - в центр (сайт developerWorks, февраль 2006 года): Найдите подробное описание новых функций работы с XML в DB2 9;

  • Develop Java applications for DB2 XML data (Разработка Java-приложений для работы с данными DB2 XML) (сайт developerWorks, февраль 2006 года): Откройте для себя полезные примеры разработки Java-приложений с помощью новых функций работы с XML в DB2 9;

  • Посетите раздел сайта developerWorks Visual Studio .NET zone, чтобы получить дополнительную информацию об использовании инструментария .NET для разработки приложений DB2;


Получить продукты и технологии
  • Загрузите пробную версию DB2 9;

  • Теперь у вас есть возможность использовать DB2 бесплатно. Загрузите DB2 Express-C, бесплатную версию DB2 Express Edition для сообщества разработчиков, которая предлагает все основные возможности работы с данными платной версии DB2 Express Edtion, что обеспечивает солидное основание для создания и размещения приложений;

  • Создайте свой проект разработки с помощью пробного ПО IBM , которое можно загрузить непосредственно с сайта developerWorks;

  • Загрузите бесплатно самую свежую версию драйвера IBM PHP driver с сайта http://pecl.php.net/;

  • Получите самую новую версию драйвера DB2 для PHP в составе Zend Core for IBM;

  • Загрузите Ruby on Rails Starter Toolkit с сайта alphaWorks.

Обсудить


Об авторе

Рав Ахуджа (Rav Ahuja) работает в лаборатории IBM Toronto Lab в должности менеджера по разработке и сопровождению DB2 в различных странах мира. Он занимается DB2 для Linux, UNIX и Windows с первой версии, в течение этого времени Рав занимал различные должности, связанные с разработкой, технической поддержкой, маркетингом и товарной стратегией DB2. Работает с клиентами и партнерами по всему миру, помогая им создавать и использовать решения на основе DB2 и сервисов. Рав часто принимает участие в написании технических обзоров, статей и книг по DB2. Имеет ученую степень в области информационных технологий от университета Мак-Гилла и звание магистра в области управления бизнесом от университета Западного Онтарио.




Выскажите мнение об этой странице


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



ДаНетНе знаю
 


 


12345
 


В начало


IBM обладает всеми авторскими правами касательно информации, расположенной на developerWorks. Использование информации приведенной на этом ресурсе без явного письменного разрешения от IBM или первоначального автора запрещены. Если Вы желаете использовать информацию с developerWorks, пожалуйста воспользуйтесь регистрационной формой для того, чтобы связаться с нами запрос на использование материалов developerWorks Россия.

    IBM в России Конфиденциальность Контакты