(495) 925-0049, ITShop интернет-магазин 229-0436, Учебный Центр 925-0049
  Главная страница Карта сайта Контакты
Поиск
Вход
Регистрация
Рассылки сайта
 
 
 
 
 

Информационный фундамент предприятия

Источник: Intelligent Enterprise
Тим Куинлан (Tim Quinlan)

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

Именно такая ситуация наблюдается сейчас в сражении гигантов мира СУБД. Начиная с 1980-х годов, IBM и Oracle регулярно пытались потеснить друг друга на рынке реляционных баз данных. Microsoft, включившаяся в борьбу почти на десять лет позже, выступает здесь в качестве юниора, к тому же ориентируется лишь на одну платформу. Да, она уверенно набирает вес, демонстрируя очевидные успехи. Однако IBM и Oracle конкурируют на всех основных платформах и находятся в пике спортивной формы.

В этой статье мы проанализируем продукты DB2 Universal Database (UDB) v.7.2 корпорации IBM и Oracle9i производства Oracle - стратегические платформы для критически важных бизнес-приложений, а также рассмотрим некоторые параметры Microsoft SQL Server 2000. Сейчас мы остановимся на решениях указанных производителей в области средств бизнес-аналитики (business intelligence, BI), а в дальнейших публикациях рассмотрим инструментарий для электронного бизнеса.

Принципы и фундаментальные различия

С общей точки зрения предложения IBM и Oracle очень похожи. Новейшие усовершенствования - как в DB2 UDB v.7.2, так и в Oracle9i - касаются трех основных областей: управления данными, BI и электронного бизнеса. Обе системы претендуют на роль центра вашей вселенной корпоративных данных, разница - в деталях реализации. Oracle требует, чтобы в ее СУБД располагались все корпоративные данные, в том числе и файлы, не относящиеся к базам данных и, как правило, базирующиеся на созданной Oracle файловой системе Internet File System. IBM ставит перед собой такую же общую цель, но ее подход основан на интегрированной, но разнородной архитектуре, в которой возможен доступ к гетерогенным источникам данных.

Весьма интересно сравнивать эти системы с точки зрения затрат. Существует по крайней мере два весьма субъективных и противоречащих друг другу отчета, посвященных оценке совокупной стоимости владения (Total Cost of Ownership, TCO). В каждом из отчетов утверждается, что один из продуктов существенно превосходит другой по критерию TCO* (причем речь идет о разных продуктах). Интересно, что в середине июня Oracle решила снизить цену на свою базу данных (цена тем не менее остается выше, чем у IBM). По-видимому, Oracle показалось, что у заказчиков складывается неверное впечатление о TCO. Совокупная стоимость владения - сложный показатель, и чтобы его оценить, нужно обладать очень точными и подробными сведениями об ИТ- и бизнес-требованиях конкретной организации.
--------------------------------------------------------------------------------

  1. * Buyers Guide to Database Servers Based on Cost of Ownership and Effectiveness, by Analyst Firm Input; http://www.input.com/buyers_guide/yntco/yntco_main.cfm.
  2. DB2 UDB vs. Oracle8i: Total Cost of Ownership. D.H. Brown and Associates: http://www-4.ibm.com/software/data/oracledb2.pdf.

Совместимость архитектур систем

Многие ошибочно полагают, что технологии баз данных давным-давно превратились в стандартный потребительский товар. Тот, кто утверждает, что в этой области ничего нового не происходит, не вполне понимает революционные достижения последних лет. Между тем с 1995 года произошел переход от объектно-ориентированных СУБД, оптимизаторов и блокировки на уровне строк к реализации в базах данных объектно-ориентированных функций, обеспечению доступа к большей части корпоративных данных, технологиям Java, ETL (extract, transform and load - «извлечение, преобразование и загрузка») и интерактивной аналитической обработке (Online Analytic Processing, OLAP). Новые СУБД сложны и требуют солидной специальной подготовки.

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

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

По существу самый важный параметр, который приходится учитывать при покупке, - это влияние СУБД на общую системную архитектуру. Необходимо подумать о совместимости разнообразных подсистем, таких, как Web-серверы, серверы приложений, промежуточное ПО поддержки обмена сообщениями (Message-Oriented Middleware, MOM), наборы корпоративных приложений и инструментальных средств. Анализ совместимости иногда позволяет быстро и однозначно определиться с выбором базы данных.

Не стоит беспокоиться по поводу совместимости с операционной системой, обе корпорации сегодня поддерживают ведущие UNIX-платформы, мэйнфреймы IBM OS/390, а также Windows 95/98/NT/2000.

Экскурс в BI

BI-средства в базах данных делятся на семь категорий: средства управления информационными хранилищами, средства оптимизации производительности, OLAP-инструменты, средства доступа к внешним данным, инструментарий ETL, инструменты извлечения данных (Data Mining) и средства сопряжения между объектно-ориентированными языками и реляционной БД (Object/Relational, O/R).

Управление информационным хранилищем. И Oracle, и IBM подчеркивают наличие в своих системах функций управления информационными хранилищами, критически важных для столь сложных продуктов.

Подсистема DB2 Warehouse Manager and Query Patroller управляет запросами, анализирует затраты и следит за использованием ресурсов. Другой модуль DB2, Data Warehouse Center, объединяет набор инструментальных средств, обеспечивающих ETL, контроль качества и очистку данных с помощью технологий компании Trillium Software, а также средство моделирования схем, позволяющее передавать метаданные в OLAP-подсистему. Оно управляет авторизацией и отображает в графическом виде процессы и потоки данных. Метаданные предоставляются средствами диспетчера Information Catalog Manager, который в числе прочего способен отображать исходные и преобразованные данные, а также выдавать подробные сведения о преобразовании данных.

В версии Oracle 9i существенно улучшены процедуры управления информационными хранилищами. Диспетчер Data Resource Manager обеспечивает активное управление рабочей нагрузкой. В частности, вы можете создавать группы пользователей и ограничивать выделяемую им долю процессорных мощностей, степень параллелизма, число одновременно выполняемых запросов и время работы. Память и параллельные процессы выделяются динамически в соответствии с поступающими запросами и доступными ресурсами. Упрощение процесса сбора статистики позволило обойтись без средств управления сегментами отката, которые прежде представляли собой настоящий кошмар для администраторов информационного хранилища. Интегрированное администрирование выполняется с помощью диспетчера Oracle Enterprise Manager (OEM).

Производительность. На протяжении десяти с лишним лет DB2 являлась лидером в области оптимальности производительности. В версии 7 своей СУБД Oracle представила оптимизатор, основанный на подсчете вычислительных затрат, а в версии 9i он был существенно улучшен и теперь при оценке учитывает не только операции ввода/вывода, но также процессорные ресурсы и память.

В обеих СУБД реализованы развитые механизмы разбиения данных на разделы для повышения производительности путем распараллеливания запросов. Расширенная корпоративная версия DB2 UDB Extended Enterprise Edition (EEE) обеспечивает масштабирование вплоть до очень больших баз данных (Very Large Database, VLDB) благодаря архитектуре «shared-nothing» (то есть с отсутствием общих, разделяемых ресурсов). Традиционно сервер Oracle Parallel Server (OPS), основанный на использовании разделяемого дискового ресурса, по степени масштабируемости уступал EEE. Этот сервер присутствует и в версии Oracle 9i, теперь он называется Real Application Clusters (RAC) и отличается улучшенной масштабируемостью, производительностью и управляемостью. Кроме того, RAC поддерживает доступ к неоднородной памяти (NUMA) и серверным кластерам. Эти изменения призваны повысить популярность продуктов Oracle, аналогичных UDB EEE, - конкурентная борьба становится все более интересной.

Доходы от продажи лицензий на СУБД в 2000 году составили 8,8 млрд долл., что на 10% больше, чем в 1999 году. На трех ведущих поставщиков (Oracle, IBM и Microsoft) приходится 79% этой суммы, а первое место принадлежит Oracle.

Источник: компания Dataquest, май 2001

OLAP. Обе СУБД поддерживают функции OLAP, встроенные непосредственно в ядро базы данных. Обе позволяют применять аналитические процедуры с реляционными данными (Relational OLAP, ROLAP), используя звездообразные объединения (star joins) и аналитические функции (кубы, свертка, группировка и ранжирование). Поддерживаются и более сложные операции, например вычисление скользящих средних и сумм.

В DB2 имеется модуль Data Warehouse Center, оснащенный средствами моделирования схем, способными передавать метаданные в интегрированный набор OLAP-средств и модуль Star Schema Builder. Кроме того, корпорация IBM давно поддерживает партнерские отношения с корпорацией Hyperion Solutions, продукт которой, Essbase, используется в DB2 в качестве сервера многомерного OLAP (multidimensional OLAP, MOLAP).

В Oracle метаданные размещаются в каталоге OLAP, который описывает многомерную модель и управляется средствами OEM. В такой архитектуре существуют два интегрированных источника данных, управляемых посредством интегрированного каталога: РСУБД и рабочая среда Analytic (ранее называвшаяся Oracle Express). Последняя представляет собой базу данных MOLAP для прогнозирующих аналитических функций. Разрабатывать приложения можно либо с помощью основанного на Java API-интерфейса, либо используя компоненты BI Beans. Для разработки BI Beans можно применять JDeveloper, а для их развертывания - Oracle9iAS. Основанный на Java API-интерфейс предоставляет низкоуровневый доступ к серверу OLAP и, вероятнее всего, будет применяться сторонними поставщиками для создания специальных Java-приложений и апплетов. BI Beans представляют собой API более высокого уровня, включающий такие компоненты, как перекрестные таблицы и диаграммы, которые используются большинством внутрикорпоративных разработчиков. Оба вида компонентов поставляются в версии 9.0.1.

На протяжении многих лет система Essbase считалась лучшей в своем классе; подход Oracle в большей мере ориентирован на фирменные технологии корпорации. В этой области корпорация Oracle выступает в роли догоняющей. Essbase долго позиционировался как самостоятельный, не зависящий от базовой РСУБД сервер OLAP, в то же время довольно сложно представить себе компанию, использующую Express в среде, где Oracle не является основной РСУБД.

Доступ к внешним данным. Перечень поддерживаемых источников у обеих систем впечатляет. Оба комплекта ПО поддерживают данные о переходах между Web-страницами (clickstream), репликацию данных и MQSeries, хотя у Oracle есть собственное средство управления очередями, Advanced Queuing.

Oracle обращается к «плоским» файлам вне базы данных как к «внешним таблицам», которые доступны только для чтения и могут использоваться для преобразований. В продукте IBM доступ к файлам мультимедиа реализован посредством модуля Data Links, что дает серверу базы данных полный контроль над файлами и позволяет выполнять их синхронную репликацию.

В DB2 возможны распределенные запросы к серверам Microsoft SQL Server, Sybase Adaptive Server и Oracle с помощью встроенных в базу данных средств DB2 RelationalConnect (раздел DataJoiner). Распределенный доступ на уровне запросов теперь доступен непосредственно из SQL-процедур. Обмен метаданными с такими системами IBM, как Data Warehouse Center и Information Catalog Manager, обеспечивается через XML-объекты Common Warehouse Metamodel и систему ERwin. В Oracle для этой цели применяются шлюзы доступа к внешним данным, теперь также реализована возможность распределенных запросов.

И IBM, и Oracle активно играют на руку разработчикам Microsoft. Обе базы данных поддерживают технологию Object Linking and Embedding (OLE) DB. Кроме того, СУБД Oracle9i поддерживает доступ к Microsoft Transaction Services и Internet Information Service (IIS). А самая большая неожиданность заключается в том, что в DB2 теперь можно работать с хранимыми процедурами на Visual Basic.

Для доступа к таким источникам данных, как приложения i2 TradeMatrix BPI или SAP R/3, могут применяться «соединители» DB2 UDB Data Warehouse Manager Connectors. Подключение выполняется простым перетаскиванием объектов SAP в окно среды моделирования процессов. DB2 UDB также превосходит конкурента в возможностях доступа к гетерогенным источникам данных. Для доступа к другим интегрированным в общую среду СУБД здесь применяются упаковщики (wrappers), для обращения к MQSeries с инструкциями - SQL-функции. Эти функции позволяют объединять и анализировать разнородные данные, обеспечивая видимость почти однородной среды.

ETL. Реализация ETL-операций в самой СУБД является огромным шагом вперед, в том числе и в нашем представлении о базах данных. Эти процессы представляют собой наиболее сложную часть BI, так как в них зачастую требуется выполнять объединение несовместимых данных, источником которых являются несопоставимые модели. Разработчики обычно предпочитают фокусироваться на более наглядных и продуктивных звездообразных схемах, упуская из виду и недооценивая архитектуру и процессы ETL. Действительно, выполнение ETL и объединения данных разных систем иногда похоже на складывание головоломки-мозаики из двух абсолютно несовместимых наборов кусочков. В DB2 UDB встроено средство Visual Warehouse, предусматривающее более 100 различных видов сложных операций для очистки и преобразования данных.

ETL-функциональность в Oracle - это, скорее, набор функций, а не единый инструментарий. В числе этих функций - унаследованный от Carleton модуль Warehouse Builder, обеспечивающий конструирование ETL-процессов и управление ими, а также механизм преобразования для сквозной ETL-обработки. Имеются и другие, вспомогательные функции, например, средство многотабличной вставки, новая инструкция Merge для вставки и обновления за один проход, а также возможность доступа к внешним таблицам и табличным функциям, которые принимают и возвращают наборы строк. Функция «захвата» изменившихся данных Change Data Capture позволяет обрабатывать изменения данных в БД Oracle без обращения ко всему набору исходных строк.

Извлечение данных. Это критически важный компонент BI, который помогает обнаруживать структуры (patterns) в данных и прогнозировать поведение объектов. Этот компонент встроен в обе СУБД. Имеющееся в UDB средство извлечения текстовых данных Intelligent Miner for Text поддерживает выполнение оценок для развертывания инструментария извлечения данных. Оно реализовано как средство расширения. Для представления аналитических моделей используется язык разметки прогнозирующих моделей PMML (Predictive Model Markup Language), а доступ к логике модели обеспечивается через стандартный интерфейс SQL API. Процесс оценки можно создать как SQL-представление и использовать его при работе в БД Oracle.

С помощью комплекта Oracle9i Data Mining Suite и алгоритмов data mining, унаследованных от компании Darwin, можно исследовать деятельность клиентов, профилировать их, моделировать отклик и изменения доходности. Имеются также алгоритмы Transactional Naive Bayes для контролируемого обучения с целью определить ожидаемые значения или классы, а также прогнозирующие ассоциативные правила для неконтролируемого обучения и обнаружения кластеров и взаимозависимостей в данных. Для прогнозирования результатов можно использовать оценки, а алгоритмы «просеивания» данных встроены в API-интерфейс на основе Java.

Подсистема 9i Personalization применяется для динамического предоставления рекомендаций конечным пользователям на базе результатов извлечения данных. Например, клиентам, повторно посещающим Web-страницу, можно предлагать товары, выбор которых основан на «просеивании» данных о предыдущих посещениях сайта.

O/R и управление содержанием. И у UDB, и у Oracle перечень O/R-функций обширен. В обеих системах реализованы фирменные алгоритмы индексации, которые можно достраивать в соответствии с задачами BI. В продукт IBM включены средства расширения (Extenders) для работы с пространственной или текстовой информацией, а также соединитель Life Sciences для подключения к источникам данных, относящимся к биотехнологиям. В Oracle для доступа к обычным данным имеются похожие на Extenders «картриджи» Data Cartridges, а для работы с мультимедиа (в том числе с изображениями, звуком и видео) служит модуль Oracle InterMedia.

Различия

Обе компании предусмотрели в своих СУБД основные средства бизнес-аналитики (BI). IBM предпочитает объединять лучшие в своих классах специализированные продукты (пример - интеграция Essbase и ERwin). Oracle, хотя и поддерживает открытые стандарты, однако стремится в своих решениях размещать все виды данных в СУБД Oracle, а для работы с ними заказчикам рекомендуется применять инструментальные средства Oracle (такие, как JDeveloper и Oracle9iAS).

Говоря о DB2 UDB, нельзя не упомянуть поглощения корпорацией IBM компании Informix. На момент написания этих строк официальная позиция IBM заключается в продолжении поддержки продуктов Informix (в частности, Red Brick Decision Server) в обозримом будущем. Вполне вероятно, что так и будет, хотя трудно оценить, сколько продлится эта поддержка и что будет дальше.

Обе базы данных оборудованы обширным набором BI-средств. Однако следует с осторожностью отнестись к новейшим возможностям Oracle9i - может выйти несколько обновлений версии, прежде чем завершится отладка новшеств. Что касается IBM, то некоторые функции UDB доступны лишь на ограниченном числе платформ. Например, с Visual Basic можно работать лишь в версии UDB для Windows. Следует также учесть, что далеко не все перечисленные функции прилагаются к соответствующим базам данных бесплатно.

Ваша задача заключается в подсчете реальной совокупной стоимости владения в вашей организации. Не забудьте учесть все дополнительные лицензионные платежи, зарплату персоналу и оплату услуг консультантов. Затем следует определить, как каждая из баз данных вписывается в общую архитектуру компании. Например, организации, активно использующей приложения Oracle, РСУБД Oracle для доступа к OLTP и сервер приложений Oracle Application Server, целесообразно использовать и BI-решения корпорации Oracle. А вот компании, не успевшей вложить в технологии Oracle крупные средства, но использующей WebSphere, AIX, MQSeries, CORBA и набор разнообразных баз и источников данных в качестве РСУБД для OLTP, можно порекомендовать UDB. Естественно, что большинство компаний находится в этой классификации где-то посередине, тем не менее решающими факторами выступают совокупная стоимость владения и архитектурная совместимость.

Взлет Microsoft SQL Server

Схема объединения программ в «бандлы», вероятно, принесла Microsoft много неприятных минут в прошлом, но сегодня она создала базу для резкого взлета СУБД этой компании. В результате конкуренты вынуждены применять такие же методы.

Начиная с версии 7, Microsoft стала включать в Microsoft SQL Server в качестве стандартных компонентов многие BI-средства - OLAP (в том числе ROLAP, MOLAP и HOLAP), инструментарий извлечения данных Analysis Services, ETL-решение Data Transformation Services, а также модуль запросов на английском языке, совместно используемые метаданные и удобные средства управления информационными хранилищами. IBM и Oracle не стали рассматривать это объединение как попытку недобросовестной конкуренции, а предпочли перенять у Microsoft ее тактику.

Достигнутое Microsoft лидерство в интеграции, схеме ценообразования и удобстве использования продукта ставят IBM и Oracle в положение догоняющих.

По словам Джона Энга, ведущего менеджера Microsoft, ответственного за BI-средства сервера Microsoft SQL Server, стратегия Microsoft направлена на "упрощение" технологии информационных хранилищ. Таким образом, подход компании состоит в создании своими силами полноценной платформы, которая характеризуется быстротой продвижения на рынке, удобством в использовании и легкостью развертывания.

Самостоятельное создание ПО отличает Microsoft от других компаний, которые интегрировали в свои базы данных приобретенные технологии. Другая отличительная черта сервера Microsoft SQL Server - его ориентированность на фирменные технологии Microsoft, такие, как COM, .NET и ActiveX Data Objects. Oracle и IBM больше ориентируются на открытые технологии, в частности CORBA и Java.

В будущем следует ожидать, что разработчики станут все больше внимания уделять простоте программирования БД и облегчению доступа к прикладным функциям. Кроме того, Microsoft будет стремиться к увеличению своей доли на рынке терабайтных БД. Соревнование будет захватывающим, ведь Microsoft успешно доказала, что ее база данных является комплексной и простой в работе. Однако она должна доказать скептикам, что масштабируемость и доступность сервера Microsoft SQL Server и Windows существенно выросли и сравнялись по этим показателям с платформами UNIX и мэйнфреймами.

Базы данных - наиболее важные технические компоненты, определяющие успех электронного бизнеса. Это довольно громкое утверждение, и, чтобы пояснить свою точку зрения, я предлагаю ближе познакомиться с природой электронного бизнеса.

Прежде всего электронный бизнес - это электронная коммерция, основу которой составляют приложения для взаимодействия с внешними заказчиками, поставщиками и партнерами. Эта часть очевидна и понятна, но ею все не ограничивается - электронный бизнес охватывает также внутренние фоновые процессы, поддерживающие указанное взаимодействие, в частности, электронный обмен данными (electronic data interchange, EDI), планирование ресурсов предприятия (ERP), управление цепочками поставок (SCM), интеграцию приложений предприятия (EAI), управление отношениями с клиентами (CRM) и порталы.

В последнее время электронный бизнес все теснее интегрируется со средствами бизнес-аналитики (business intelligence, BI), например, при проведении исследований электронной коммерции. Оперативные данные и BI-данные зачастую оказывают друг на друга взаимное влияние; таким образом, целые области BI подпадают под влияние электронного бизнеса. Точнее, почти все критически важные данные располагаются под «крышей» электронного бизнеса и должны постоянно соответствовать предъявляемым к ним высоким требованиям.

Обратимся к характеристикам систем электронного бизнеса и посмотрим, как они реализованы в Oracle9i и IBM DB2 Universal Database (UDB). Перечень этих характеристик слишком обширен, и нам не удастся рассмотреть их все, поэтому мы остановимся лишь на наиболее важных. Кроме того, многие из них уже освещены в первой части этой статьи.

Производительность и масштабируемость: RAC против EEE

Масштабируемость - чрезвычайно популярная тема, что обусловлено исключительной ее важностью для электронного бизнеса. Невозможность наращивания информационной системы означает потерю клиентов. Для обеспечения максимальной производительности и масштабируемости Oracle предлагает систему Oracle9i Real Application Clusters (RAC), а IBM - UDB Enterprise Extended Edition (EEE).

В RAC предусмотрено «прозрачное» масштабирование приложений с помощью усовершенствованной архитектуры Cache Fusion, поддерживающей прямую передачу данных между кэшами. Благодаря этому число операций ввода-вывода сокращается, а изменение параметров системы при масштабировании ближе к линейному, чем в предыдущих решениях, обеспечивающих масштабируемость. Как следствие, можно ожидать, что популярность RAC на рынке OLTP-систем (online transaction processing) будет расти.

RAC базируется на архитектуре с совместно используемыми дисками и общим программным кэшем, связи в котором обеспечиваются средствами Cache Fusion. Масштабируемость, основанная на этой архитектуре, не является действительно линейной, хотя и близка к ней. Огромное преимущество заключается в «прозрачности» архитектуры с точки зрения приложений. Кроме того, рассматриваемая архитектура, похоже, устранит хорошо известную пользователям Oracle проблему с контрольными сигналами (ping), которые применяются в механизмах распределенной блокировки (улучшение в этой области заметно уже в Oracle8).

СУБД UDB EEE довольно долго демонстрировала замечательную линейную масштабируемость благодаря архитектуре shared-nothing (т. е. с отсутствием каких-либо общих ресурсов). EEE чаще всего используется в качестве BI-системы; кроме того, она обеспечивает высокую производительность в промышленных системах и в тестах TPC-C (моделирование OLTP) и TPC-W (моделирование Web и электронной коммерции). Высокая производительность и линейная масштабируемость этой системы неоднократно подтверждены, однако привязка к узлам с данными в UDB EEE выполняется на уровне приложения, что требует дополнительных усилий. Далее мы посмотрим, как аналогичная функциональность реализована в RAC.

Некоторые чрезвычайно полезные встроенные трассировочные утилиты, например, tkprof и Statspack, поставляются вместе с системой Oracle бесплатно. Усовершенствованные средства Parallel Query позволяют выполнять запросы между узлами в кластерах или на оборудовании с интенсивной параллельной обработкой на базе RAC. Oracle также улучшила свой оптимизатор нагрузки, который теперь учитывает не только информацию об операциях ввода-вывода, но и сведения о работе процессора и памяти. В UDB лучше реализована оптимизация, которая уже довольно давно охватывает указанные три параметра. Еще одна особенность, появившаяся в UDB 7.1, - Net Search Extender, средство оптимизации сетевого поиска, которое реализовано на основе технологии отображения в памяти (in-memory). Оно применяется для высокоскоростного поиска текстов в Интернете и способно одновременно обслуживать очень большое число пользователей.

DB2 содержит много других усовершенствований, в том числе функции параллельного архивирования и восстановления, а также контроля нагрузки, дискового ввода-вывода, ссылочной целостности и индексов. Кроме того, можно упомянуть утилиты для создания разделов и управления приоритетами задач, диспетчер производительности, асинхронную запись, последовательное упреждающее чтение, улучшенную структуру индексов, поддержку пулов буферов и многое другое. Большинство этих функций реализовано и у Oracle. Обе компании повысили производительность практически всех компонентов БД, включая Java, XML и работу в сети.

Несмотря на все эти усовершенствования, Oracle придется еще доказать на деле, что по производительности Oracle9i сравнялась с UDB или превзошла ее.

Высокая доступность

У обеих систем в этом аспекте имеются существенные улучшения. UDB теперь обеспечивает полную, накопительную и разностную архивацию, поддерживает резервные базы данных и средства повышения доступности на уровне архитектуры, например, зеркалирование, которое позволяет создать копию объекта и разместить ее для обработки на другом сервере. СУБД может на короткое время приостановить операции ввода-вывода для оперативного формирования зеркала основной базы данных. На зеркальной копии поддерживается работа утилиты db2inidb, которая, кроме прочего, позволяет создавать моментальный снимок для восстановления при сбое, для отчетности и архивирования. Утилита db2inidb также позволяет определять зеркало как резервную базу данных путем применения к нему журналов (log) основной БД (зеркало находится в режиме постоянной готовности, roll-forward pending).

IBM наконец обеспечила поддержку двойной регистрации отдельных каталогов в журнале. UDB поддерживает восстановление при сбое в кластерах серверов под управлением таких операционных систем, как AIX HACMP, Sun Solstice и Microsoft Cluster Server. Теперь UDB очищает файлы журналов после онлайнового архивирования, а также поддерживает восстановление на определенный фиксированный момент времени, динамическое выделение дискового пространства и параллельное восстановление. Кроме того, поддерживаются аппаратные архитектуры высокой доступности.

Oracle поддерживает полные и разностные архивы, а также резервные базы данных (начиная с версии Oracle8i). Средство защиты данных Oracle Data Guard поддерживает управление резервными базами данных, в том числе перенос файлов журналов из основной в резервную БД и внесение данных в резервную БД немедленно или с предопределенной задержкой. Data Guard часто применяется для перехода на резервную базу данных после сбоя основной. Кроме того, Data Guard обеспечивает прямое и обратное переключение между базами данных при обслуживании. RAC с механизмом Cache Fusion применяется не только для повышения производительности, но и для поддержки кластерных архитектур и быстрого восстановления при сбое в системах под управлением UNIX, а также в отказоустойчивых Oracle-кластерах из четырех узлов под управлением Windows 2000 и Windows NT. Администраторы баз данных получают возможность реализовать процедуры восстановления с быстрым запуском и через заданное время. В этом случае после аварийного сбоя база данных перезапускается через определенное администратором время. Средство быстрого создания моментального снимка БД и восстановления работы позволяет администраторам быстро выполнить диагностику при возникновении неполадки и восстановить работоспособность системы.

В Oracle9i практикуется политика сохранения информации о предыдущих состояниях (retention) в файлах журналов, применяются архивы с функцией автоописания. Ретроспективные (flashback) запросы дают пользователям возможность получать данные на момент, предшествующий пользовательской ошибке, а средство Logminer - анализировать файлы журнала и определять историю изменения строк на основании журнала повторных операций. Возобновляемые инструкции позволяют приостановить вызывающие ошибки операции, выявить и устранить неполадки и возобновить работу.

Разработчики затратили значительные усилия, чтобы достичь высокой доступности. Oracle представила резервные базы данных на UNIX и Intel-платформах, но следует помнить, что IBM еще с начала 90-х поддерживает подобные технологии в своей системе OS/390 Remote Recovery Data Facility, в которой данные журналов непрерывно переносятся в ресурс, используемый в случае неполадки. Вот пример того, как конкуренты IBM используют представленное корпорацией новшество раньше, чем она реализует его сама.

Безопасность

В обеих базах данных предусмотрены надежные средства безопасности, в частности, шифрование и расшифровка строковых данных, что особенно важно при работе с такими конфиденциальными данными, как номера кредитных карточек. В числе интересных особенностей продукта Oracle - подсистема Virtual Private Database and Label, которая обеспечивает BI и Web-системам более высокую степень безопасности на уровне данных с помощью меток в отдельных приложениях. Но даже без учета этой возможности обе базы данных обеспечивают устойчивую защиту как во внутренних сетях, так и при работе с Интернетом.

Microsoft SQL Server и электронный бизнес

В мире UNIX-систем и мэйнфреймов пакеты UDB и Oracle - явные фавориты. Чтобы обеспечить своему продукту такое же положение на рынке серверов БД, Microsoft должна доказать, что SQL Server может конкурировать с лидерами по производительности, масштабируемости и степени доступности. Каковы же нынешние показатели Microsoft SQL Server?

Для обеспечения высокой производительности и масштабируемости в SQL Server 2000 предусмотрена поддержка до 32 процессоров в SMP-среде, а также объединение в кластеры с архитектурой shared-nothing (с отсутствием общих ресурсов). На момент написания этой статьи SQL Server 2000 продемонстрировал наилучшие показатели в обычной и кластерной конфигурации в тестах TPC-C, ориентированных на OLTP. Для оценки систем электронного бизнеса, возможно, лучше подходит тест TPC-W (электронная коммерция в Web), в котором SQL Server показывает себя с наилучшей стороны, не опускаясь ниже пятого места при обработке 10 тыс. объектов и не ниже четвертого места - при обработке 100 тыс. объектов. В обеих указанных категориях SQL Server имеет наилучшее соотношение цена/производительность. Тесты TPC отличаются от реальной практики, но они тем не менее позволяют дать определенную оценку производительности базы данных, и Microsoft использует их для подтверждения высокой производительности SQL Server 2000.

В SQL Server высокая доступность обеспечивается теми же средствами, что и в UDB и Oracle9i. Непрерывность бизнес-процессов достигается благодаря кластеризации с перераспределением нагрузки при сбое (нет необходимости восстановления после сбоя). Версия SQL Server Enterprise Edition позволяет применять кластеры с двумя узлами при работе под управлением Windows 2000 Advanced Server и с четырьмя узлами - под управлением Windows 2000 Datacenter Server. Поддерживаются оба режима кластеров с передачей процесса при сбое: active-passive, в котором пассивный узел ожидает команду на передачу, и active-active, в котором оба сервера активны и могут при сбое "перехватывать" задачи друг у друга. В механизме восстановления после сбоя поддерживается доставка файлов журналов, что позволяет пересылать их на удаленные узлы и использовать для восстановления. Microsoft утверждает, что готовность критически важных сайтов, обслуживаемых ее системами, составляет 99,99%. Готовность, конечно же, во многом определяется стабильностью базовой ОС Windows.

Microsoft решает вопросы производительности, масштабируемости и высокой готовности так же, как IBM и Oracle. Однако есть ряд отличий, на которых следует остановиться. В SQL Server доступ к внешним данным предоставляется не через шлюзы, а средствами компонентов Microsoft Data Access Components, которые поставляются в составе многих продуктов Microsoft. В реализации Java-технологий в базе данных Microsoft отстала от IBM и Oracle. Теперь ей приходится уступать требованиям рынка и обеспечивать доступ к данным SQL Server из Java. В настоящее время SQL Server поддерживает ANSI SQL-92. Следует надеяться, что в следующих версиях SQL Server будет предусмотрена поддержка SQL-99.

Нельзя не отметить у SQL Server замечательные показатели цена/производительность и TCO. Теперь требуется время, чтобы доказать клиентам, что преимущества этого продукта ориентированы на долгосрочную перспективу. Кстати, следующая этапная версия SQL Server получила кодовое название Yukon. По словам Джефа Ресслера, ведущего менеджера по продукту SQL Server, Microsoft планирует выпустить ее к 2003 году.

Управление системой

В UDB имеется модуль Control Center, в котором предусмотрено множество средств управления базой данных. Назначение многих средств вполне стандартно. К примеру, Command Center позволяет строить SQL-инструкции и отображать результаты их выполнения, а также изменять объекты базы данных. Script Center применяется для создания, планирования и управления сценариями. Средство ведения журналов служит для наблюдения за выполнением сценариев, отслеживает информацию о заданиях, ошибках и предупреждающих сообщениях, а также извещает администраторов БД, помогая управлять заданиями. Помимо этого имеется центр оповещения для просмотра уведомлений о превышении системных порогов. Система включает и построитель хранимых процедур. Среди других заслуживающих внимания утилит - средство «визуальных подсказок» Visual Explain и монитор производительности Performance Monitor. В целом это вполне достойный набор функций.

В Oracle имеется центр управления Oracle Enterprise Manager (OEM), который также применяется для управления производительностью, диагностики, настройки и управления изменениями. Просмотр и изменения объектов базы (схем), отображение оповещений и планирование сценариев обеспечиваются другими механизмами. Появилось новое средство графических пояснений к SQL-инструкциям, напоминающее Visual Explain.

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

Управление приложениями и данными

Обе базы данных поддерживают основные стандарты Интернета, в частности, Java 2 Enterprise Edition, XML, SOAP (Simple Object Access Protocol), UDDI (Universal Description, Discovery, and Integration) и UML (Unified Modeling Language). Кроме того, они обеспечивают превосходную интеграцию приложений на базе таких стандартов и платформ, как Java Messaging System, ORB-брокеры, включая CORBA и Enterprise JavaBeans (EJB), EDI и IBM MQSeries. Обе СУБД поддерживают Java, JDBC и SQLJ.

В DB2 поддержка EJB и Java-сервлетов осуществляется за счет интеграции с WebSphere; в Oracle они реализованы в самой базе данных. Это очень характерный пример различия подходов двух компаний - IBM ориентирована на совместную работу первоклассных компонентов, а Oracle предлагает решение типа «все в одной СУБД». Другое интересное различие - способ реализации виртуальных Java-машин (Java virtual machine, JVM). В Oracle они встроены, а в системе IBM используются платформонезависимые JVM. Преимущество Oracle в том, что при внедрении решений этой компании вы гарантированно получите встроенные виртуальные Java-машины, а недостаток - не факт, что это лучшая JVM для вашей платформы.

В прошлом году поставщики приложений неоднократно демонстрировали свою точку зрения на данный вопрос. В частности, Siebel Systems, SAP и PeopleSoft активно поддерживают DB2. Некоторые крупные разработчики (например, Siebel) используют ее в качестве внутрикорпоративной базы данных. Это большой успех для IBM, но его значение существенно умаляется тем фактом, что на большинстве сайтов в качестве платформы уже функционирует СУБД Oracle.

XML-документы - новый тип данных, реализованный в обоих конкурирующих продуктах. XML в них можно разбить на разделы и хранить в реляционных таблицах или реализовать в виде больших двоичных объектов (BLOB). Поддерживается и текстовый поиск с учетом особенностей XML. Oracle позаботилась о средствах расширения своей СУБД и возможностях ее универсального использования в качестве ORDBMS (object/relational DBMS). Предусмотрено также хранение мультимедиа-объектов и таких данных, как текст, звук и видео.

IBM предлагает универсальные ORDBMS с 1995 года и сейчас лидирует в данной области. Универсальность реализована на базе средств расширения Relational Extenders. Подход IBM свидетельствует о наличии у корпорации четкого видения перспектив отрасли, он максимально соответствовал стандартам того времени (до появления спецификации SQL-99). Relational Extenders позволяет работать со многими типами данных мультимедиа.

Модуль Net.Data, используемый для управления подключениями в продуктах IBM, обеспечивает постоянные подключения Web-серверов к базе данных и позволяет сократить количество прямых подключений к БД. Другая утилита, Web Application Builder, предназначена для доступа приложений к UDB. Она также обеспечивает вывод данных в формате XML, совместимость с XHTML и вложение SQL-инструкций.

Особо следует обратить внимание на уникальную особенность и интересную технологию Oracle - ее файловую систему для Интернета, iFS. Эта система позволяет использовать базу данных Oracle как обыкновенный диск в Windows Explorer, копируя на него файлы, которые реально будут храниться в базе данных в виде объектов BLOB. Кроме того, iFS предусматривает доступ к документам из браузера, имеет собственную подсистему безопасности и механизм управления версиями.

В общем пакете программ Oracle также предоставляет набор Internet Developer Suite, в который входят многочисленные средства для создания интеллектуальных Web-приложений и BI-инструментов - XML Developer's Kit, Portlet Developer Kit, Jdeveloper, Forms Developer, Designer, Reports Developer, Discoverer, Repository и Oracle Warehouse Builder.

До настоящего времени в DB2 недоставало определенных функциональных возможностей в области создания приложений. К той же категории функций, которыми IBM пора было бы уже обзавестись, следует отнести хранимые процедуры на процедурном SQL, доступные из любого модуля DB2, а также триггеры, основанные на процедурах. Процедурный SQL в DB2 базируется на стандартах SQL-99. Язык PL/SQL компании Oracle - это фирменная разработка, однако он отличается большей зрелостью, чем имеющийся в DB2 процедурный SQL. PL/SQL обеспечивает хорошую производительность, удобен в работе, проверен практикой - для разработчиков приложений на платформе Oracle это очень ценное средство.

Итак, победителем объявляется...

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

Кроме того, следует оценить совокупную стоимость владения (total cost of ownership, TCO). Компании, изучающие возможность внедрения базы данных, обычно понимают, что принимать решение лишь на основании ценовых показателей недальновидно и неразумно. В определенной степени они правы, хотя цена все же очень важна. Но главное - определить совокупную стоимость владения в масштабах предприятия. В расчетах следует учесть компоненты, которые придется приобретать за дополнительную плату. Также желательно оценить, как изменится цена выбранных систем через год или два.

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

Сравниваем две системы

Перечислим основные соображения, которые следует учесть, сравнивая Oracle9i и UDB 7.2.

  • В пакете Oracle Real Application Clusters (RAC) устранены недостатки, имевшиеся в Oracle Parallel Server (OPS). Линейная масштабируемость UDB EEE проверена практикой, однако для полной ее реализации необходимо глубокое и детальное проектирование.
  • IBM - безусловный лидер в области обслуживания и поддержки, однако в последнее время и Oracle существенно продвинулась в этой области.
  • Поддерживаемый Oracle язык PL/SQL - гибкое, простое в изучении, многофункциональное и высокопроизводительное средство.
  • В Oracle все функции встраиваются в базу данных, тогда как разработчики UDB ориентируются на совместную работу разнородных высококачественных функциональных модулей.
  • Обе базы данных поддерживают широкий спектр стандартов, однако UDB в меньшей степени ориентирована на фирменные, "патентованные" решения.
  • Свойства, обеспечивающие высокую доступность, практически одинаковы, но в отдельных аспектах Oracle продвинулась дальше, чем IBM, если говорить о платформах Intel и UNIX.
  • IBM лидирует в плане производительности. Продукт Oracle пока не участвует в тесте TPC-W (поддержка операций электронной коммерции) и показывает неудовлетворительные результаты в тесте TPC-C (OLTP). В этом отношении Oracle придется существенно поработать над RAC. Согласно последним данным по измерению производительности в эталонном тесте TPC-W, UDB продемонстрировала устойчивую круглосуточную работу, обрабатывая свыше 6 млрд транзакций в день.
  • На рынке систем на базе Intel и UNIX Oracle занимает значительно большую долю, чем IBM.
  • UDB дешевле, чем продукт Oracle, однако здесь есть свои подводные камни - многие модули не поставляются в составе основной системы и их приходится приобретать за дополнительную плату. Таким образом, конечная стоимость может оказаться существенно выше, чем предполагалось.
  • Платформа Oracle пользуется более широкой поддержкой со стороны независимых разработчиков инструментальных средств. Однако компании Precise Software Solutions и Quest Software не так давно добавили в свои продукты поддержку UDB, так что отставание IBM может со временем и сойти на нет.
  • Существуют различия между версиями UDB для платформ OS/390, AS/400, Wintel и UNIX. Версии совместимы на уровне API, тем не менее такое деление может существенно затруднить работу администраторов базы данных.
  • Некоторые независимые поставщики ПО (ISV), скажем, Siebel и SAP, отдают предпочтение UDB, но в целом Oracle все еще пользуется более широкой поддержкой ISV.

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



 Распечатать »
 Правила публикации »
  Написать редактору 
 Рекомендовать » Дата публикации: 12.09.2002 
 

Магазин программного обеспечения   WWW.ITSHOP.RU
IBM Domino Messaging Server Processor Value Unit (PVU) License + SW Subscription & Support 12 Months
Microsoft Office 365 Персональный 32-bit/x64. 1 ПК/MAC + 1 Планшет + 1 Телефон. Все языки. Подписка на 1 год.
Microsoft Office 365 Бизнес. Подписка на 1 рабочее место на 1 год
Microsoft Office 365 Профессиональный Плюс. Подписка на 1 рабочее место на 1 год
Microsoft Office 365 для Дома 32-bit/x64. 5 ПК/Mac + 5 Планшетов + 5 Телефонов. Подписка на 1 год.
 
Другие предложения...
 
Курсы обучения   WWW.ITSHOP.RU
 
Другие предложения...
 
Магазин сертификационных экзаменов   WWW.ITSHOP.RU
 
Другие предложения...
 
3D Принтеры | 3D Печать   WWW.ITSHOP.RU
 
Другие предложения...
 
Новости по теме
 
Рассылки Subscribe.ru
Информационные технологии: CASE, RAD, ERP, OLAP
Безопасность компьютерных сетей и защита информации
Новости ITShop.ru - ПО, книги, документация, курсы обучения
Программирование на Microsoft Access
CASE-технологии
Мир OLAP и Business Intelligence: новости, статьи, обзоры
Все о PHP и даже больше
 
Статьи по теме
 
Новинки каталога Download
 
Исходники
 
Документация
 
 



    
rambler's top100 Rambler's Top100