СТАТЬЯ |
23.10.01
|
Oracle и Microsoft SQL Server: прошлое, настоящее и будущее
© Наталия Елманова
© Алексей Федоров
КомпьютерПресс #7 2001
Статья была опубликована в КомпьютерПресс
Немного истории
Некоторые важные особенности Oracle и SQL Server
Поддержка различных платформ
Настольные и однопользовательские версии
Полная стоимость владения
Инструменты и утилиты
Производительность
Краткий обзор особенностей СУБД
Oracle8i и Oracle9i
Поддержка Internet
Администрирование
Разработка приложений
Безопасность данных
Прочее
Microsoft SQL Server 2000
Сервер баз данных
Утилиты
Репликация
Службы трансформации данных (DTS)
Средства анализа данных
Заключение
Не секрет, что Oracle и Microsoft SQL Server, разработанные лидерами мирового рынка программного обеспечения, сегодня являются одними из наиболее широко используемых СУБД. В настоящей статье мы расскажем, как развивались оба этих продукта, прежде чем приобрели особенности, характерные для их последних версий.
Корпорация Oracle была основана в 1977 году (в то время она носила название Software Development Laboratories, а в 1978 году она была переименована в Relational Software, Inc.) как компания, специализирующаяся на создании реляционных СУБД, и предсказать, как она будет развиваться в течение последующих трех десятилетий, было в то время непросто. Нынче Oracle поставляет на мировой рынок огромное количество продуктов, услуг и решений, ее штат насчитывает более 43 тыс. человек, и доход этой компании, превысивший в 2000 году 10 млрд. долл., определяется не только продажами СУБД. На сегодняшний день это вторая по величине доходов компания, специализирующаяся на производстве программного обеспечения.
Корпорация Microsoft также была основана в середине 70-х годов. Ее история хорошо известна, впрочем, как и тот факт, что до 1987 года эта компания не имела никакого отношения к производству серверных СУБД. Сейчас SQL Server — один из сотен продуктов, производимых Microsoft. Штат этой компании насчитывает 32 тысячи человек, а ее доход за 2000 год превысил 22 млрд. долл.
Ниже мы перечислим основные события, относящиеся к развитию СУБД Oracle и Microsoft SQL Server, начиная со времени основания обеих компаний.
1975 — основана компания Microsoft.
1977 — основана компания Software Development Laboratories (ныне — Oracle
Corporation).
1978 — Software Development Laboratories переименована в Relational Software,
Inc.
1979 — выпущена первая официальная версия СУБД Oracle — V2.
1980 — выпущена версия Oracle 2 для операционной системы VAX/VMS.
1982 — выпущена версия Oracle 3, которая стала первой СУБД, поддерживающей
обработку транзакций и способной выполняться на разных платформах, в том числе
на мэйнфреймах и мини-ЭВМ.
1983 — Relational Software, Inc. переименована в Oracle Corporation.
1984 — выпущена и перенесена на несколько различных платформ версия Oracle
4.
1986 — выпущена версия Oracle 5, поддерживающая возможности создания приложений
в архитектуре «клиент-сервер», распределенную обработку данных, кластеры VAX.
1987 — заключено соглашение между Microsoft и Sybase о лицензировании СУБД
Sybase (Sybase DataServer). Oracle становится крупнейшим в мире производителем
СУБД.
1988 — выпущена версия Oracle 6, а чуть позже объявлено, что Oracle 6.2
будет поддерживать симметричные кластеры с применением Oracle Parallel Server.
Oracle выпустила Unix Relational Financial Applications. В том же году Microsoft
и Ashton-Tate анонсировали первую версию Microsoft SQL Server — реляционную СУБД
для локальных вычислительных сетей. Новый продукт носил название Ashton-Tate/Microsoft
SQL Server и представлял собой версию Sybase DataServer для OS/2. Роль Ashton-Tate
заключалась в том, что эта фирма предоставила dBASE IV, используемую для разработки
приложений.
1989 — Oracle реализовала поддержку OLTP, продукты фирмы стали доступны
в 86 странах мира. В мае этого года увидела свет первая версия Ashton-Tate/Microsoft
SQL Server.
1990 — выпущен SQL Server v1.1 с поддержкой как OS/2, так и новой графической
оболочки фирмы — Microsoft Windows 3.0.
1991 — Microsoft получила доступ к исходному коду SQL Server и начала работу
над новой версией продукта. В мае Microsoft и IBM объявили о завершении совместной
работы над OS/2.
1992 — выпущена версия Oracle 7 для Unix. Эта СУБД поддерживала распределенные
запросы, удаленное администрирование, осуществляла поддержку различных сетевых
протоколов. В этом же году был выпущен SQL Server 4.2 — 16-разрядная СУБД, результат
совместной работы Microsoft и Sybase. В этой СУБД были реализованы клиентские
библиотеки для MS-DOS, Windows и OS/2, помимо этого в нее впервые были включены
средства администрирования с графическим интерфейсом под управлением Windows.
Компания Microsoft приняла решение сосредоточиться на развитии версий SQL Server
только для Windows NT и остановить развитие версий для Unix. В октябре была выпущена
бета-версия SQL Server для Windows NT.
1994 — выпущена версия Oracle 7 для IBM PC (до этого времени компания Oracle
не рассматривала данную платформу как серверную, ограничиваясь лишь созданием
для нее клиентских частей своих СУБД). В этом же году году закончилось сотрудничество
Microsoft и Sybase, и далее эти две компании стали разрабатывать свои серверные
СУБД независимо друг от друга. В конце года был выпущен сервер Sybase SQL Server
System 10.
1995 — в начале года выпущен Microsoft SQL Server 6.0. Oracle объявила
о выпуске Discoverer2000 — набора средств для анализа корпоративных данных.
1996 — выпущен SQL Server 6.5, обладавший встроенной поддержкой Web-приложений,
средствами распределенного администрирования, наличием динамических блокировок.
Oracle выпустила Oracle 7.3 Universal Server.
1997 — выпущена версия Oracle 8, основными особенностями которой стали
более высокая надежность по сравнению с предыдущей версией, а также поддержка
большего числа пользователей и больших объемов данных. Выпущены версии Oracle
Designer/2000 2.1 и Oracle Developer/2000, которые существенно облегчили создание
приложений, работающих с базами данных, а также Oracle Applications for theWeb.
1998 — выпущен Microsoft SQL Server 7.0 с радикально измененной архитектурой.
Это была первая версия SQL Server, не содержавшая унаследованного кода, оставшегося
со времен сотрудничества с Sybase. Особо стоит отметить появление в этой версии
OLAP-служб в составе продукта (до этого серверные OLAP-средства, производимые
поставщиками серверных СУБД, включая и Oracle, продавались исключительно как отдельные
продукты и относились к категории весьма дорогостоящего программного обеспечения).
1999 — выпущена версия Oracle8i (Oracle 8.1), которая во многом была основана
на применении Java: виртуальная Java-машина находится в самой СУБД, на этом же
языке написаны клиентские утилиты, инсталлятор, средства администрирования. В
конце того же года выпущена вторая версия Oracle 8i (Oracle 8.1.6), поддерживающая
XML и содержащая некоторые новшества, связанные с созданием хранилищ данных.
2000 — выпущена третья версия Oracle8i (Oracle 8.1.7), содержащая Java
Virtual Machine Accelerator, а также Internet File System (об этой особенности
мы расскажем ниже). В этом же году выпущен Microsoft SQL Server 2000, поддерживающий
Web-приложения, XML, а также содержащий множество нововведений в административных
утилитах.
2001 — анонсирована Oracle9i (возможно, она уже будет выпущена к тому моменту,
когда вы будете читать эту статью). Эта СУБД отличается новыми средствами для
обеспечения масштабируемости (Oracle9i Real Application Clusters), упрощения администрирования
(в частности, для автоматизации конфигурирования серверов, управления ресурсами
используемых компьютеров, мониторинга загрузки и производительности), обеспечения
безопасности данных, восстановления данных после сбоев (в том числе из-за ошибок
персонала), новыми средствами интеграции приложений. Кроме того, в составе СУБД
имеется OLAP-сервер (ранее серверные OLAP-средства Oracle, такие как Oracle Express,
поставлялись в виде отдельных продуктов, но, похоже, теперь в этом отношении Oracle
последовала примеру Microsoft).
Некоторые важные особенности Oracle и SQL Server
А теперь рассмотрим некоторые особенности СУБД обеих фирм, которые, на наш взгляд, наиболее важны при принятии решения о том, какую из СУБД выбрать.
Одним из главных событий, определивших дальнейшую судьбу Microsoft SQL Server, стало решение Microsoft сосредоточить усилия исключительно на поддержке только платформы Windows NT. Можно найти немало аргументов, подтверждающих как правильность, так и ошибочность такого решения. В результате его принятия популярность SQL Server определяется в первую очередь популярностью платформы, которую он поддерживает, в данный момент — Windows 2000 и ее будущих потомков. Эта СУБД настолько связана с операционной системой, что ее надежность, масштабируемость и производительность определяются надежностью, масштабируемостью и производительностью самой платформы, и положение SQL Server на рынке будет зависеть от выпуска новых версий Windows
Подход Oracle к поддержке различных операционных систем радикально отличается от подхода Microsoft — СУБД этой фирмы существуют для огромного количества платформ. Хотя поддержка большого количества платформ (а не нескольких наиболее прибыльных, как это характерно для других производителей СУБД) требует немалых вложений, переход к широкому применению Java, который сейчас происходит в Oracle, позволяет существенно сократить затраты на разработку и поддержку продуктов.
Настольные и однопользовательские версии
Чем шире используются распределенные вычисления, тем более важной оказывается возможность хранить данные где угодно, в частности на рабочей станции или переносном компьютере. Несмотря на утверждения некоторых аналитиков о том, что в эпоху Интернет-приложений настольные СУБД уже не нужны, они по-прежнему широко применяются во всех областях бизнеса.
И Oracle, и Microsoft многое делают для поддержки настольных версий своих СУБД или применения их в указанном режиме. SQL Server можно применять на любых Intel-совместимых компьютерах под управлением Windows 9x, Windows NT, Windows 2000, но SQL Server более не поддерживает компьютеры на базе процессора Alpha (видимо, ввиду ухудшения отношений между Microsoft и Digital Equipment Corporation). Имеется также версия SQL Server 2000 для Windows CE, предназначенная для применения в мобильных устройствах.
Microsoft Data Engine (MSDE) — это продукт фирмы Microsoft, специально предназначенный для настольных приложений. Эта СУБД по существу представляет собой ограниченный вариант SQL Server, который можно применять в Windows 9x, NT, Windows 2000 и администрировать с помощью Microsoft Access. Подобно Access на рынке MSDE позиционируется как однопользовательская СУБД. Отметим также, что Microsoft встроила в этот продукт специальные средства, снижающие его производительность при попытке одновременной работы с ним более пяти пользователей.
Среди продуктов Oracle также имеются две СУБД, позиционируемые в качестве настольных. Продукт Personal Oracle, известный уже много лет, представляет собой однопользовательскую, но полнофункциональную версию Oracle, требующую некоторых навыков администрирования при ее применении. Вторая настольная СУБД этой компании, Oracle Lite, может применяться в качестве однопользовательской СУБД на обычных рабочих станциях, но в действительности она предназначена для применения в мобильных устройствах. В отличие от других СУБД этот продукт поддерживает только язык Java, но не поддерживает PL/SQL (язык, на котором создается серверный код в других СУБД Oracle).
Когда IT-менеджеры и руководители компаний сравнивают те или иные программные продукты, их всегда интересует такая важная характеристика, как полная стоимость владения (total cost of ownership, TCO). Полная стоимость владения включает не только стоимость приобретения самого продукта и необходимого для его эксплуатации аппаратного обеспечения, но и стоимость сопровождения, технической поддержки, обучения пользователей и технического персонала.
Взгляды Oracle и Microsoft на пути снижения полной стоимости владения их СУБД существенно различаются. Oracle рассматривает этот вопрос с позиции надежности продукта, в то время как Microsoft — с позиции цен на отдельные продукты, дополнительные утилиты, сервисы и услуги. Цена на продукты Oracle обычно намного превышает цены на аналогичные продукты Microsoft, особенно с учетом того, что в составе Microsoft SQL Server имеются утилиты и сервисы, которые при выборе Oracle следует приобретать отдельно (и, разумеется, за дополнительную плату). Считается, что надежность СУБД Oracle может быть выше, нежели надежность SQL Server, особенно при эксплуатации Oracle под управлением операционной системы с высокой надежностью и отказоустойчивостью. На практике вычислить полную стоимость владения тем и другим продуктом можно, только сведения о том, что представляет собой конкретное предприятие, в чем заключается его деятельность и какова его инфраструктура, то есть необходимо всесторонне рассмотреть использование продукта в контексте проекта, в котором он будет применяться.
Одним из преимуществ SQL Server является простота его применения, в частности администрирования. SQL Server Enterprise Manager, входящий в состав всех редакций Microsoft SQL Server (за исключением MSDE), представляет собой полнофункциональное и достаточно простое средство для администрирования этой СУБД. Oracle Enterprise Manager во многих отношениях превосходит SQL Server Enterprise Manager по своим возможностям, однако процесс его установки довольно сложен, к тому же, что более существенно, он входит в состав далеко не всех редакций СУБД Oracle, а некоторые его компоненты можно приобрести только как отдельные продукты. Эта ситуация несколько улучшилась с появлением одной из последних версий Oracle Enterprise Manager — DBA Studio для Oracle8i Release 2, то есть версий 8.1.6 и 8.1.7).
Административные утилиты и другие инструменты для ранних версий Oracle обычно производились независимыми компаниями (выпускались как дорогие продукты, так и бесплатные), а основные усилия самой корпорации Oracle были сосредоточены на разработке самой СУБД. Однако сейчас ситуация существенно изменилась, и в настоящее время Oracle поставляет на рынок немалое количество разнообразных инструментов, среди которых помимо средств администрирования имеются средства разработки приложений, проектирования данных, моделирования бизнес-процессов, серверы приложений, корпоративный портал. Впрочем, и в арсенале Microsoft также имеются многие из подобных продуктов, правда, не все они позиционируются как таковые (например, Microsoft Visio Enterprise, обладающий функциональностью средства моделирования бизнес-процессов и проектирования данных, но позиционируемый как средство создания диаграмм).
Трудно ответить на вопрос, какая из СУБД обрабатывает запросы быстрее, — слишком многое здесь зависит от того, на каком оборудовании производится тестирование, каков состав выполняемых запросов. По данным Transaction Processing Performance Council (TPC;http://www.tpc.org/), SQL Server сейчас является рекордсменом по производительности, однако и Oracle стабильно входит в пятерку лидеров. Отметим, однако, что подобного рода тесты не могут дать однозначного ответа на вопрос, какая из СУБД будет производительнее при решении конкретной задачи: в одних случаях производительность СУБД Oracle превосходит производительность SQL Server, а в других наоборот. Реально проверить это можно только с помощью тестирования, основанного на запросах, типичных именно для конкретной задачи.
Краткий обзор особенностей СУБД
Ниже мы кратко рассмотрим особенности последних версий обеих СУБД, как появившиеся недавно, так и унаследованные от прежних версий. В связи с этим следует отметить, что лидерство того или иного продукта, если смотреть на это с точки зрения поддержки тех или иных технологий либо других технологических особенностей, во многом определяется тем, продукт какой фирмы был выпущен последним. Это вполне понятно, поскольку производители программного обеспечения внимательно изучают продукты конкурирующих компаний и нередко заимствуют друг у друга какие-либо идеи. Поэтому говорить о стабильном лидерстве в этой области довольно сложно.
Последние три вышедшие на момент написания данной статьи версии Oracle носят
общее официальное название — Oracle8i (в маркетинге они позиционируются как СУБД
для Internet). Oracle8i Release 1 (версия 8.1.5) была выпущена в 1999 году, Release
2 — в начале 2000-го, Release 3 — в конце прошлого года. Их предшественница, Oracle8,
была выпущена в 1998 году, но в мире до сих пор имеется немало пользователей Oracle7:
многим из них просто не нужна поддержка больших баз данных и объектных типов,
отличающая Oracle8 от Oracle7, равно как и новшества, появившиеся в Oracle8i.
Ниже перечислены основные особенности последних версий Oracle.
Для поддержки Internet в Oracle8i существенно расширено применение языка Java. В частности, в состав серверной части этой СУБД входит виртуальная Java-машина, в дополнение к имевшимся ранее средствам выполнения кода на языках SQL и PL/SQL.
Версия Microsoft SQL Server 2000 построена на основе ядра Microsoft SQL Server 7.0. Ее отличительными особенностями являются повышенная масштабируемость, производительность и интеграция с Internet. Ниже мы рассмотрим некоторые нововведения, появившиеся в данной версии (более подробно о нововведениях в SQL Server 2000 можно прочесть в статьях «Microsoft SQL Server 2000. Краткий обзор новинок» и «Microsoft SQL Server 2000 Analysis Services», КомпьютерПресс № 9’2000).
Службы трансформации данных (DTS)
Как мы уже отмечали, в Microsoft SQL Server 7 были впервые включены средства
анализа данных (OLAP) в качестве компонента сервера. В SQL Server 2000 эти средства
получили дальнейшее развитие: компонент Analysis Services включает как средства
анализа данных, так и средства поиска закономерностей (Data Mining).
Среди основных новшеств в средствах анализа данных можно отметить следующие:
В данной статье мы рассмотрели историю развития двух лидирующих СУБД и ознакомились с основными характеристиками новейших версий. Мы рассказали вам, как постепенно каждый продукт, начавшись с небольшого, но амбициозного проекта, превращался в то, с чем пользователи имеют дело сегодня. Основные функции в последних версиях продуктов еще раз подтверждают тот факт, что и Oracle, и Microsoft продолжают развивать свои продукты, стараясь удовлетворить возрастающие требования потребителей.
Дополнительную информацию Вы можете получить в компании Interface Ltd.
Обсудить на форуме
Отправить ссылку на страницу по e-mail
Interface Ltd. Отправить E-Mail http://www.interface.ru |
|
Ваши замечания
и предложения отправляйте
автору По техническим вопросам обращайтесь к вебмастеру Документ опубликован: 23.10.01 |