Технологии IBM
Часть 1. DB2 Universal Database
Где применяется DB2 Universal Database
Особенности DB2 Universal Database
Реализация нескольких редакций для нескольких платформ
Поддержка средств проектирования структуры данных, средств разработки и генераторов отчетов
Клиентские утилиты и их возможности
Поддержка создания хранилищ данных и OLAP
Создание Web-приложений и обмен данными через Internet
Другие технические особенности
Этой статьей мы начинаем цикл публикаций, посвященных продуктам одного из лидеров рынка программного обеспечения — корпорации IBM. Настоящая статья, первая в данном цикле, посвящена СУБД корпорации IBM — семейству DB2 Universal Database. Впервые появившаяся в 1997 году универсальная объектно-реляционная СУБД DB2 Universal Database соединила в себе функциональные возможности продуктов семейства DB2 фирмы IBM — DB2 Common Server, DB2 Parallel Edition (DB2 PE), Net.Data, Data Propagator — и технологии DataHub и предназначалась для платформ UNIX, OS/2 и Microsoft Windows NT.
Судя по общему количеству проданных лицензий, в настоящее время продукты семейства DB2 Universal Database относятся к числу самых популярных семейств СУБД.
Где применяется DB2 Universal Database
Мы уже неоднократно писали в нашем журнале, для чего обычно применяются СУБД (см., например, в серии статей «Введение в базы данных», КомпьютерПресс № 3, 5’2000) и сейчас лишь кратко напомним об этом.
Известно, что популярная в 70-е годы обработка данных с помощью мэйнфреймов и мини-ЭВМ имела одно неоспоримое преимущество по сравнению с настольными СУБД, которое заключалось в централизации хранения и обработки данных. Настольные СУБД, ставшие популярными в 80-е годы, как известно, такой возможности предоставить не могут, поэтому их применение в целом ограничено небольшими объемами данных, малым числом пользователей и невысокой интенсивностью запросов. Именно этим объясняется повсеместный переход в 90-е годы к архитектуре «клиент-сервер», позаимствовавшей многие достоинства старой мэйнфреймовской модели вычислений, в частности — централизацию хранения и обработки данных.
В простейшем случае клиент-серверная информационная система состоит из двух основных компонентов: сервера баз данных, управляющего данными и выполняющего поступающие от клиентских приложений запросы, и самих клиентских приложений, обеспечивающих интерфейс пользователя и посылающих запросы к серверу. Именно сервер баз данных, использующий какую-либо серверную СУБД, к которым относится и DB2 Universal Database, и представляющий собой приложение либо сервис операционной системы, может манипулировать файлами, в которых хранятся данные, выполнять пользовательские запросы, поддерживать ссылочную целостность данных, обеспечивать доступ к данным, осуществлять резервное копирование данных, протоколировать операции, связанные с изменением данных.
Помимо собственно средства хранения данных современные СУБД обычно предоставляют дополнительный набор сервисов, связанных с обслуживанием хранения, обработки и анализа данных. Такие СУБД, как правило, реализованы для нескольких платформ, обладают повышенной надежностью и отказоустойчивостью, содержат удобные утилиты администрирования, позволяют осуществлять резервное копирование данных, поддерживают несколько сценариев репликаций, реализуют параллельную обработку данных в многопроцессорных системах, поддерживают OLAP и создание хранилищ данных, обеспечивают выполнение распределенных запросов и транзакций, позволяют использовать различные средства проектирования данных для создания объектов баз данных, поддерживают средства разработки и генераторы отчетов как собственного производства, так и сторонних производителей, а также позволяют публиковать данные в Internet и создавать Web-приложения.
Ниже мы рассмотрим, какие из этих особенностей характерны для DB2 Universal Database и как они реализованы в последних версиях этого продукта — 7.1 и 7.2.
Особенности DB2 Universal Database
Реализация нескольких редакций для нескольких платформ
DB2 Universal Database, как и многие современные серверы баз данных, существует в нескольких версиях для различных платформ.
Семейство DB2 функционирует на операционных платформах от IBM, таких как AS/400AIX, S/390, на операционных платформах Windows NT/2000, Windows 95/98, OS/2, AIX, HP-UX, SCO UnixWare, Linux, NUMA-Q и Sun Solaris. DB2 поддерживает портативные устройства под управлением Windows CE и Palm OS, для этой цели служит продукт DB2 Everywhere — СУБД для Palm OS и Windows CE, обеспечивающая SQL-функции и синхронизацию данных с другими реляционными базами данных, с данными Lotus Notes/Domino и c персональными информационными менеджерами.
DB2 Universal Database выпускается в следующих редакциях: DB2 Universal Database Enterprise — Extended Edition (платформы AIX, Solaris и Windows NT), DB2 Universal Database Enterprise Edition (платформы AIX, HP-UX, Linux, OS/2, Solaris, Windows NT/2000), DB2 Universal Database Workgroup Edition (платформы Linux, OS/2 и Windows NT) и DB2 Universal Database Personal Edition (платформы OS/2, Linux, Windows 9x и Windows NT).
Отметим, что при переносе DB2 на платформы, отличные от платформ IBM, компания IBM старается максимально использовать их уникальные функциональные возможности. Так, в DB2 for Windows 2000 для обеспечения безопасности используется Windows NT LAN Manager, полностью поддерживаются Windows Performance Monitor, Systems Management Server, существует интеграция с Active Directory для каталогизации баз данных, а также имеются универсальные механизмы доступа к данным ODBC, ADO и OLE DB. Кроме того, DB2 for Windows 2000 поддерживает Component Services (COM+) в качестве координатора при создании приложений, использующих распределенные транзакции.
Поддержка средств проектирования структуры данных, средств разработки и генераторов отчетов
Проектировать данные для DB2 Universal Database, равно как и осуществлять обратное проектирование, можно с помощью практически всех наиболее популярных средств проектирования данных — ERwin (Computer Associates), Visible Analyst (Visible Systems Corporation), PowerDesigner (Sybase), System Architect (Popkin Software), Visio Enterprise (Microsoft). Первые два из них помимо генерации обычных сценариев создания таблиц, индексов, серверных ограничений, триггеров и процедур позволяют генерировать для DB2 DDL-скрипты, учитывающие такие специфические особенности организации физической памяти этой СУБД, как управление табличным пространством и сегментами отката, а также режимами блокировки данных.
Создавать клиентские приложения, использующие данные DB2 Universal Database, можно с помощью различных средств разработки. В состав клиентской части DB2 Universal Database 7.1 входят также IBM OLE DB Provider for DB2 Servers и ODBC-драйвер, что позволяет осуществлять доступ к данным посредством универсальных механизмов доступа к данным ODBC и ADO/OLE DB из всех наиболее популярных средств разработки и генераторов отчетов.
Для разработчиков, использующих Microsoft Visual Studio, становятся доступными дополнительные модули, в частности Stored Procedure Builder, включаемый непосредственно в среду Visual Studio. Windows-версии DB2 Universal Database 7.2 позволяют также создавать хранимые процедуры на языке Visual Basic.
У IBM имеются собственные средства разработки, например IBM VisualAge for Java, для создания приложений, работающих с данными в DB2. Возможно также создание хранимых процедур на языке Java с помощью Java Stored Procedure Builder.
Отметим, что средства разработки Borland (Delphi, C++Builder, Kylix), весьма распространенные в нашей стране, поддерживают доступ к DB2 не только с помощью ADO/OLE DB и ODBC, но и с помощью универсальных механизмов доступа к данным — Borland Database Engine и dbExpress.
Доступ к DB2 из Java-приложений может быть осуществлен с помощью механизма доступа к данным JDBC.
Клиентские утилиты и их возможности
Наличие удобных утилит администрирования, как ни странно, порой оказывается одним из решающих факторов при выборе СУБД. Именно поэтому современные СУБД, как правило, поставляются с подобными утилитами. Ниже мы рассмотрим, какие утилиты входят в состав клиентской части DB2 Universal Database.
Control Center представляет собой утилиту администрирования баз данных, управляемых сервером DB2 Universal Database, и обладает типичным для таких утилит интерфейсом, напоминающим Windows Explorer (рис. 1). Посредством Control Center можно создавать новые базы данных, а также табличные пространства, таблицы, индексы, триггеры, представления, организовывать репликации между различными серверами DB2, манипулировать пользователями и группами.
Утилита Client Configuration Assistant, предназначенная для настройки доступа клиентской части DB2 к локальным и удаленным серверам, позволяет манипулировать списком доступных соединений с базами данных DB2, описывать их как ODBC-источники данных, изменять пароли доступа к ним.
Утилита Event Monitor предназначена для сбора сведений о том, что происходит в базах данных в течение эксплуатации. Она позволяет регистрировать заранее определенные события, например соединение с базой данных, выполнение SQL-запросов и т.д., и связанные с ними данные, в частности, время загрузки процессора, время наложения блокировки, имя приложения, инициировавшего событие, и др. В дальнейшем данные, записанные этим приложением, можно проанализировать с помощью утилиты Event Analyser с целью получения статистических данных и оценки производительности сервера баз данных.
Утилита Command Center позволяет управлять всеми административными задачами, в том числе запускать описанные выше административные утилиты, а также создавать и выполнять SQL-запросы с помощью визуального средства создания запросов SQL Assist.
Кроме того, с помощью Command Center можно просмотреть план выполнения запроса и получить подробные сведения о каждой операции, производимой во время его выполнения.
Помимо перечисленных утилит в состав клиентской части DB2 Universal Database могут входить:
- DB2 Query Patroller — набор средств для создания запросов и управления ресурсами для систем принятия решений. DB2 Query Patroller получает ODBC-запросы от клиента, анализирует и динамически распределяет их по различным узлам;
- DB2 Connect — средство для управления соединениями различных клиентов с DB2 и AS/400;
- DB2 Relational Connect — средство для доступа к реляционным и нереляционным данным, расположенным на различных платформах, как к единому «образу» данных;
- DB2 Data Links Manager — средство для управления дополнительными файлами, подключаемыми к СУБД.
Также доступны и бесплатные средства для миграции данных из Microsoft Access в DB2, а также из CУБД Oracle, Microsoft, Sybase и Informix.
Поддержка создания хранилищ данных и OLAP
Для многих отечественных предприятий создание хранилищ данных стало насущной потребностью, так как многие из них уже обладают огромными объемами накопленных данных, ценность которых очень высока. Эти данные нужно грамотно использовать при принятии дальнейших управленческих решений, и именно поэтому их помещают в хранилища данных, представляющие собой базу данных, с такой структурой, которая оптимизирована с точки зрения выполнения запросов на выбор данных и поэтому существенно отличается от структуры обычной оперативной базы данных. Поэтому поддержка создания хранилищ данных является одним из важных факторов при принятии решения о выборе СУБД.
DB2 Universal Database поддерживает создание хранилищ данных и помимо обычных средств осуществления переноса данных в хранилище содержит в составе клиентской части Data Warehouse Center, позволяющий управлять всеми процессами, связанными с созданием и поддержкой хранилищ данных, включая создание хранилища, построение схем хранилищ данных типа «звезда», определение источников исходных данных для него, а также создание расписаний, согласно которым обновляются данные в хранилищах (рис. 2).
Начиная с версии DB2 Universal Database 7.2, Data Warehouse Center также поддерживает возможность проверки и исправления некорректных данных.
Нередко для принятия решений используются результаты аналитической обработки данных. В этих целях применяется OLAP (On-Line Analytical Processing) — технология создания многомерных наборов агрегатных данных, являющихся результатом обработки содержимого хранилища данных.
OLAP-хранилища в последнее время широко распространены в системах поддержки принятия решений.
Для поддержки OLAP в состав сервера DB2 Universal Database входит OLAP Starter Kit, позволяющий создавать многомерные базы данных. OLAP Starter Kit, как и поставляемый отдельно DB2 OLAP Server, интегрирует ядро OLAP-сервера Hyperion Essbase с семейством DB2 Universal Database.
Сервер Essbase основан на многозвенной архитектуре и предназначен для многопользовательского доступа к OLAP-данным и проведения аналитических расчетов. Он может быть использован совместно с различными источниками данных и аналитическими приложениями. Открытая архитектура Hyperion Essbase поддерживает доступ к OLAP-данным этого сервера с помощью самых разнообразных средств — электронных таблиц, построителей запросов, генераторов отчетов, позволяя этим средствам выступать в роли клиентских приложений. Essbase поддерживает более 50 клиентских продуктов, в частности Crystal Reports и Crystal Info (Crystal Decisions), средства просмотра OLAP-данных, такие как Business Objects и Cognos PowerPlay, электронные таблицы ведущих производителей.
Создание Web-приложений и обмен данными через Internet
Cегодня практически ни одна СУБД не обходится без поддержки публикации данных в Internet или без получения данных от удаленных Internet-клиентов. Кроме публикации данных в Web некоторые СУБД позволяют осуществлять их удаленное администрирование через Internet, обмен XML-данными с клиентскими приложениями и другими серверами, что позволяет создавать приложения для электронной коммерции, основанные на обмене XML-данными.
В DB2 Universal Database 7.2 имеются специальные типы данных, позволяющие хранить XML-документы, равно как и раскладывать их на компоненты для хранения в нескольких столбцах. В обоих случаях возможен поиск документов по их элементам и атрибутам, поскольку поддерживается создание соответствующих индексов. Существуют также модули расширения, для текстового поиска в столбцах, содержащих XML-документы.
С помощью протокола SOAP (Simple Object Access Protocol) можно обращаться к Web-сервисам, предоставляющим доступ к хранимым процедурам и данным DB2 Universal Database. Сами Web-сервисы могут управляться сервером приложений IBM WebSphere.
Для создания динамических приложений, предоставляющих доступ к данным DB2 Universal Database через Internet, служит средство Net.Data, которое поддерживает XML и HTML.
Другие технические особенности
К важнейшим техническим характеристикам DB2 Universal Database следует отнести:
- поддержку реляционных и комплексных данных с помощью объектных расширений;
- возможность работы на мультипроцессорных платформах;
- поддержку кластеров;
- 64-битную архитектуру памяти;
- распараллеливание запросов;
- наличие средств для гетерогенного администрирования и обработки данных;
- поддержку выполнения распределенных транзакций.
Отметим, что возможность параллельной обработки запросов, поддержка нескольких процессоров и кластеров, а также поддержка распределенных транзакций повышают скорость обработки транзакций и масштабируемость информационных систем, созданных на базе DB2 Universal Database, а средства гетерогенного администрирования позволяют упростить их сопровождение и поддержку.
Заключение
В настоящей статье мы рассмотрели особенности СУБД корпорации IBM — IBM DB2 Universal Database. Мы узнали, что СУБД этого семейства реализованы для большого количества платформ. Они обладают удобными утилитами администрирования (включая гетерогенное администрирование), позволяют осуществлять резервное копирование и репликацию данных, поддерживают параллельную обработку данных в многопроцессорных системах, параллельное выполнение запросов, применение кластеров, распределенные транзакции. Кроме того, СУБД семейства DB2 Universal Database поддерживают создание хранилищ данных и OLAP, позволяют использовать различные средства проектирования данных, поддерживают широкий спектр средств разработки и генераторов отчетов, а также обладают широким возможностями создания Web-приложений и обмена данными через Internet. Иными словами, возможности СУБД этого семейства отражают современные тенденции развития информационных систем, такие как использование многопроцессорных систем и распределенной обработки данных, создание распределенных систем (в том числе с использованием технологий Internet), применение средств быстрой разработки приложений, создание систем поддержки принятия решений с использованием аналитической обработки данных.
В следующих номерах мы рассмотрим другие продукты IBM — WebSphere, Lotus Notes, Domino и MQSeries.
Подробную информацию о продуктах IBM можно получить на Web-сайте по адресу: http://www.ibm.ru.
Материалы и программное обеспечение для написания данной статьи предоставлены компанией НЕТКОМ (IBM Distributor). 117036 Москва, ул. Дм. Ульянова, д. 26, корп. 2, офис 57. Контактное лицо — Вячеслав Глушков. e-mail: vglushkov@interprocom.ru тел.: (095) 129-8988, 129-6736 факс: (095) 129-8188. |
КомпьютерПресс 9'2001