Субд (мировой рынок). Обоснование выбора технических средств

Вайбер на компьютер 01.08.2019
Вайбер на компьютер

1. Какие тренды в развитии серверных СУБД вы бы могли отметить в 2015–2016 годах?

Виталий Чесноков , QSOFT
Самые главные тренды в развитии современных СУБД: использование виртуализации и GRID-технологии, самодиагностика и автоматическое исправление, использование NoSQL-СУБД в Big Data, использование NewSQL-СУБД, выполнение C/C++ кода в адресном пространстве СУБД.

За последние несколько лет многократно выросли объемы данных, подходящих для обработки и хранения в БД. Был принято изменение закона «О персональных данных», гласящее, что персональные данные граждан РФ необходимо хранить на территории РФ. В некоторых западных странах так же действуют подобные законы. Все это приводит нас к необходимости кластеризации и разбиения данных на части.

Повсеместно растет процент использования NoSQL-СУБД, где это возможно, ввиду высокой скорости работы с данными и возможности сравнительно простой кластеризации. Получает распространение новый тип СУБД - NewSQL. В основные беспрецедентные функции NewSQL входят: возможность асинхронной мастер-мастер репликации, заменяющей классическую master-slave схему и обеспечивающей большую гибкость для высоконагруженных проектов; упрощение администрирования и обеспечение динамического управления базой; поддержка хранимых процедур на C/C++ и возможность выполнения C/C++ кода в адресном пространстве СУБД (обеспечивают практически неограниченную расширяемость и невероятный прирост в производительности); улучшение средств диагностики и отладки.

К тому же использование виртуализации в СУБД дает необходимую отказоустойчивость и возможность масштабирования.

Николай Фетюхин , MST
Переход к NoSQL и специализация баз данных. Например, можно обратить внимание на Redis и Tarantool. Последний содержит даже свой сервер приложений. Интересный тренд - совмещенные СУБД и backend, как Parse от Facebook. Также плавная миграция баз данных в облака.

Петр Урваев , SimbirSoft
Функции, успешно себя зарекомендовавшие в одних СУБД, через некоторое время реализуются и в других продуктах. Например, материализованные представления, вначале появившиеся в Oracle DBMS, через некоторое время были реализованы в MS SQL Server, а затем появились и в PostgreSQL. Преимущества, которые предоставляют NoSQL-решения постепенно также реализуются в реляционных СУБД. Например, в последних версиях PostgreSQL реализована поддержка работы с данными в формате JSON.

Евгений Гусев , ITECH
Изменения последних лет в сегменте СУБД носили как частный - применительно к отдельным лидирующим продуктам, так и структурный характер, так что трендов множество. Во-первых, гетерогенность. Переход к модели микросервисов дал возможность гибко подбирать средства решения задачи хранения данных, не ограничиваясь одним. Во-вторых, развитие NoSQL, in-memory storages. В-третьих, Big Data - революция, потребовавшая переосмыслить как методику хранения данных, так и само понятие «данные». В-четвертых, колоночные (column-oriented) БД.

2. По-вашему мнению, существует ли тенденция перехода СУБД в «облака»? Какие существуют плюсы и минусы данного подхода?

Виталий Чесноков , QSOFT
Да, безусловно такая тенденция существует. Для начала нужно разделять два принципиальных подхода в работе СУБД в облаке.

Первый - разворачивание в облаке виртуальной машины с СУБД. Можно загрузить на нее собственный образ или воспользоваться заранее заготовленным, с уже оптимизированной СУБД. По сути такая виртуальная машина принципиально не отличается от обычного физического сервера. Основным преимуществом по сравнению с физическим сервером является легкость масштабирования, как вертикального (можно в любой момент выделить для данной «виртулки» больше ресурсов), так и горизонтального (создание новой «виртуалки» занимает всего несколько минут). Еще один существенный плюс - высокая доступность облачных виртуальных машин (99,9%–99,99%). Также облачные хостеры предоставляют множество дополнительных услуг, таких как мониторинг, резервное копирование, панель управления сервером и т.д.

Принципиально иным подходом является облачная СУБД. В данном случае клиент покупает не сервер, а просто услугу использования СУБД. Текущий рынок публичных облачных СУБД, составляющий $400 млн, к 2017 году увеличится до $1,2 млрд. Основные плюсы данного подхода: оплата не предоставленных ресурсов (которые могут и «простаивать»), а лишь реально использованных: объем хранимых данных, количество обрабатываемых СУБД операций; нет необходимости настраивать и администрировать СУБД - эти задачи полностью лежат на хостере; нет необходимости задумываться о масштабировании; хостер предоставляет множество удобных и интуитивно понятных инструментов для управления СУБД; высокая доступность. Основным минусом является отсутствие возможности тонкой настройки СУБД.

Также можно отдельно выделить такой подвид облачной СУБД как DbaaS (Database as a Service). Практически всегда конкретный DbaaS - это одна определенная СУБД, предоставляемая в облаке непосредственными разработчиками. Отсюда очевидно выводится и разница в бизнес-моделях: облачные СУБД подходят для масштабных типовых задач, а DbaaS - для специализированных, под конкретную марку движка БД, с возможностью прямого общения с его разработчиками. Кроме того, DbaaS позволяет значительно точнее подобрать систему под нужную нагрузку, в частности за счет регулирования количества клиентских подключений.

Николай Апурин , Artwell
Тенденция существует. Большинство крупных (общероссийских) систем уже используют облачные БД.

Николай Фетюхин , MST
Тенденция слабая. Использование облаков хоть и снижает некоторые издержки, но приводит к новым расходам. Использование облака может быть выгодно лишь для проектов со слабой посещаемостью.

Плюсы облаков: легкая масштабируемость, высокая отказоустойчивость, доступность серверов во всем мире, легкое клонирование и разворачивание данных. Минусы: пока облака, как продукт, «сырые» - невозможно физически контролировать данные, так как они находятся под управлением поставщика облака.

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

Евгений Гусев , ITECH
Существует и является одной из первичных. Плюсов у размещения БД в облаке масса: простота шардинга и репликации, возможность эффективно в контексте производительности отделить данные от бизнес-логики, легкое и понятное управление вычислительными мощностями и целый ряд других. Критичных минусов, основываясь на опыте, мы не видим. Чем большими объемами данных приходится оперировать, чем больше требуется горизонтального масштабирования, тем более оправданным становится использование облаков.

3. Какие факторы влияют на выбор СУБД? Для каких проектов больше подходят SQL базы данных, а для каких - NoSQL?

Виталий Чесноков , QSOFT
Основным фактором при выборе между SQL и NoSQL-СУБД являются нужды приложения. Для одних задач лучше подходит SQL, для других - NoSQL.

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

В итоге NoSQL лучше подходит для проектов с большим объемом данных, который можно легко разделить на отдельные самостоятельные объекты. Дает высокую скорость и масштабируемость. SQL подходит для проектов, где различные данные имеют сложные логические связи друг с другом и крайне важна их целостность.

Николай Апурин , Artwell
NoSQL - для нестандартных вычислений с огромным объемом данных. Но как показала практика, объемы до 20 миллионов записей отлично перерабатываются SQL-базами.

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

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

Евгений Гусев , ITECH
В современном состоянии SQL / NoSQL - скорее не конкурирующие, а дополняющие друг друга сущности. Использование в одном приложении SQL-решений, когда требуется работать со сложными данными в их взаимосвязи, и NoSQL, когда на передний план выходит скорость работы с неструктурированной информацией, - совершенно естественная практика.

4. Как вы оцениваете степень распространения платных лицензий СУБД среди пользователей? В каких случаях имеет смысл покупать лицензию?

Виталий Чесноков , QSOFT
Есть два различных варианта разделения СУБД па платные и бесплатные.

Первый - бесплатные версии коммерческих СУБД (есть у MS SQL, Oracle и т.д.) По сути это урезанная версия СУБД, в которой отсутствует часть функционала. Здесь основной фактор выбора очень прост - нужен ли данному проекту данный функционал. Реже бывает бесплатная версия, которая не отличается от коммерческой по функционалу, но реже обновляется (Couchbase Server).

Второй - бесплатные СУБД, для которых есть аналогичные коммерческие продукты (MySQL от Oracle, Percona Server или MariaDB). В данном случае преимущество коммерческого продукта обычно заключается в наличии более серьезной технической поддержки. С точки зрения функционала платные и бесплатные СУБД мало отличаются друг от друга, хотя и у тех, и у других могут быть свои инструменты, отсутствующие в других версиях.

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

Николай Апурин , Artwell
Зачем платить, если есть бесплатные? Тем не менее, много решений, которые могут работать только с платными БД. В основном, это иностранные практики.

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

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

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

Какими бывают системы управления базами данных

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

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

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

Однако корпоративные приложения для крупных и даже для средних предприятий, как правило, используют серверные СУБД в силу их большей надежности и масштабируемости. В простейшем случае информационная система, основанная на архитектуре «клиент-сервер», состоит из двух основных компонентов: сервера баз данных, управляющего данными и выполняющего поступающие от клиентских приложений запросы, и самих клиентских приложений, обеспечивающих интерфейс пользователя и посылающих запросы к серверу. Именно сервер баз данных может манипулировать файлами, в которых хранятся данные, выполнять пользовательские запросы, поддерживать ссылочную целостность данных, обеспечивать доступ к ним, осуществлять резервное копирование данных и протоколировать операции, связанные с их изменением. В более сложных случаях между клиентом и сервером может располагаться приложение промежуточного звена (middleware), функции которого весьма разнообразны — от разграничения доступа к данным до реализации достаточно сложной бизнес-логики.

Требования к современным СУБД

современным СУБД предъявляются следующие требования:

  • масштабируемость — отсутствие существенного снижения скорости выполнения пользовательских запросов при пропорциональном росте количества запросов и аппаратных ресурсов используемых данной СУБД (таких как объем оперативной памяти, количество процессоров и серверов);
  • доступность — возможность всегда выполнить запрос;
  • надежность — минимальная вероятность сбоев, наличие средств восстановления данных после сбоев, инструментов резервного копирования и дублирования данных (в последнее время производители СУБД нередко предлагают инструменты, позволяющие осуществлять подобные операции, не прерывая работу пользователей);
  • управляемость — простота администрирования, наличие средств автоматического конфигурирования (типичный современный набор средств администрирования включает средства создания баз данных и их объектов, инструменты описания правил репликации данных между различными серверами, утилиты управления пользователями, группами и их правами, средства мониторинга событий, средства просмотра планов выполнения запросов, утилиты миграции из других СУБД);
  • наличие средств защиты данных от потери и несанкционированного доступа;
  • поддержка доступа к данным с помощью Web-служб;
  • поддержка стандартных механизмов доступа к данным (таких как ODBC, JDBC, OLE DB, ADO .NET), позволяющая создавать приложения для СУБД с помощью различных средств разработки.

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

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

СУБД ведущих производителей

огласно данным ряда аналитических отчетов (см., например: Strange K. Magic Quadrant for Data Warehouse DBMSs// Gartner Research Note M-22-2154. 2004), лидерами рынка СУБД на данный момент являются давно и успешно представленные на российском рынке компании IBM, Oracle, Microsoft, Sybase и Teradata, а также относительно молодая компания Netezza, которая на отечественном рынке практически неизвестна. Далее мы кратко рассмотрим особенности продуктов этих компаний.

DB2 Universal Database (IBM)

Семейство серверных СУБД фирмы IBM, известное под названием DB2 Universal Database (DB2 UDB), впервые появилось в 1996 году и предназначалось для платформ UNIX, OS/2 и Microsoft Windows NT. Последняя версия этого продукта, DB2 UDB 8.2, функционирует под управлением операционных систем AIX, AIX, Linux, HP-UX, Sun и Windows.

Особенностями данной СУБД являются развитые средства самовосстановления и автоматического выполнения операций, связанных с поддержкой базы данных (таких как создание резервных копий и дефрагментация данных). Из механизмов доступа к данным DB2 UDB поддерживает ODBC, JDBC, ADO/OLE DB, ADO .NET. Данная СУБД позволяет создавать серверный код на CLR-совместимых языках, таких как C# и Visual Basic .NET.

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

К другим важнейшим техническим характеристикам DB2 Universal Database следует отнести поддержку реляционных и комплексных данных с помощью объектных расширений, возможность работы на мультипроцессорных платформах, поддержку кластеров, 64-разрядную архитектуру памяти, распараллеливание запросов, наличие средств для распределенного администрирования и обработки данных, поддержку выполнения распределенных транзакций. Некоторые из указанных технологий были заимствованы из СУБД Informix Dynamic Server, приобретенной IBM вместе с компанией Informix несколько лет назад.

Oracle 10g (Oracle)

Oracle, появившаяся в 1979 году, была первой коммерческой реляционной СУБД, которая поддерживала язык SQL, ставший ныне индустриальным стандартом. Ранние версии этой СУБД создавались для мэйнфреймов, однако в 1985 году появились версии Oracle, предназначенные для использования в архитектуре «клиент-сервер». Это была первая СУБД, использовавшая предоставляемые некоторыми серверными платформами средства параллельных вычислений.

В настоящее время последней ее версией является Oracle 10g. Эта СУБД отвечает самым строгим требованиям к качеству обслуживания, обладает возможностями кластеризации (для этого предназначен модуль Oracle Real Application Clusters), развитыми средствами безопасности.

СУБД Oracle 10g предоставляет средства параллельной обработки запросов, встроенные средства OLAP, средства быстрого извлечения, преобразования и загрузки данных, служб порталов, средств бизнес-анализа, распространения отчетов и анализа действий пользователей, инструменты анализа производительности СУБД, обеспечивает поддержку кластеров.

Из механизмов доступа к данным Oracle 10g поддерживает ODBC, JDBC и ADO/OLE DB, кроме того, для этой СУБД существует.NET-провайдер и соответствующий набор классов от Microsoft. Клиентская часть Oracle содержит также набор COM-объектов для доступа к данным (Oracle Objects for OLE). Отметим, что и многие другие компании производят ODBC-драйверы и OLE DB-провайдеры для доступа к Oracle — эту СУБД поддерживают все ведущие производители средств разработки, генераторов отчетов, средств аналитической обработки данных.

И на Западе, и в России нередко используются готовые корпоративные решения от Oracle Corporation, объединенные под общим названием Oracle Applications, такие как Oracle Financials, Oracle Human Resources, Oracle Market Management, Oracle Project Systems и др., — собственно, продажа и поддержка именно этих приложений и составляют основную часть бизнеса компании.

SQL Server 2000 и SQL Server 2005 (Microsoft)

Первая версия Microsoft SQL Server — совместный продукт компаний Microsoft и Sybase, выпущенный в 1988 году, — была разработана для платформы OS/2. Последующие версии этого сервера баз данных предназначались для платформы Windows и со временем были тесно интегрированы с этой операционной системой. Для других платформ версии данного сервера не выпускались и не выпускаются.

Наиболее часто используемая версия этой СУБД — Microsoft SQL Server 2000 — отличается повышенной масштабируемостью и производительностью. Она позволяет использовать на одном компьютере несколько одновременно работающих серверов, поддерживает создание кластеров, параллельные вычисления в многопроцессорных системах, распределенные запросы. Средства администрирования Microsoft SQL Server 2000 считаются одними из наиболее простых и удобных. Помимо средств решения стандартных задач администрирования, таких как создание баз данных и их объектов, управление привилегиями пользователей и групп, резервное копирование и восстановление, репликация данных, они включают утилиты обмена данными с другими СУБД и хранилищами данных. В состав этого продукта входит OLAP-сервер — именно с его появления в составе SQL Server началось включение OLAP-средств в состав СУБД других производителей и перемещение их из категории дорогостоящих, элитных продуктов в категорию продуктов, широко применяемых даже в небольших компаниях.

Из механизмов доступа к данным этот продукт поддерживает ODBC, OLE DB/ADO, ADO .NET. Имеется также JDBC-драйвер производства компании Microsoft. Нельзя не отметить великолепные средства интеграции этой СУБД с Microsoft Office, вплоть до инструментов манипуляции OLAP-данными из этих приложений.

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

Еще одним из основных технологических новшеств ожидаемой версии SQL Server является интеграция с Microsoft .NET Framework 2.0 на уровне Common Language Runtime в самой СУБД, что позволит создавать серверный код на любом CLR-совместимом языке программирования, например на C# или на Visual Basic. Отметим также существенное расширение аналитических возможностей данной СУБД, например появление новых алгоритмов Data Mining.

SQL Server 2005 будет создана в виде не только 32-, но и 64-разрядной версии, поддерживающей процессоры Intel Itanium и AMD Opteron. А для решения относительно несложных задач, использующих небольшие базы данных, будет выпущена бесплатная версия Microsoft SQL Server 2005 Express Edition.

Adaptive Server Enterprise и Adaptive Server IQ (Sybase)

Серверные продукты компании Sybase происходят от одной из ранних версий Microsoft SQL Server, созданной совместно Microsoft и Sybase. Начиная с 1994 года Microsoft и Sybase разрабатывают свои серверные продукты независимо друг от друга, и результатом деятельности компании Sybase в этом направлении является продукт Adaptive Server Enterprise (ASE), последняя версия которого, 12.5.2, существует для Windows NT/2000 и некоторых версий UNIX и Linux.

В настоящее время Adaptive Server Enterprise поддерживает упреждающее асинхронное чтение, что повышает скорость выполнения сложных запросов; создание кластеров; наличие 64-разрядной версии; распределенную обработку запросов, в том числе к базам данных других производителей; расширенные хранимые процедуры, позволяющие осуществлять легкий доступ к функциям, которые написаны на языках, отличных от SQL; параллельную обработку запросов в многопроцессорных системах; параллельную работу утилит администрирования; динамическую конфигурацию сервера и резервное копирование данных с компрессией. Особо стоит отметить службы Sybase Real-Time Data Services, предназначенные для организации передачи сообщений в реальном времени при возникновении каких-либо событий в базах данных, в том числе в базах данных, управляемых СУБД других производителей.

Из универсальных механизмов доступа к данным ASE поддерживает ODBC, JDBC, OLE DB/ADO. Отметим, что нередко вместе с ASE используются средства разработки и проектирования данных самой компании Sybase.

Для создания многомерных хранилищ данных у Sybase существует еще один серверный продукт — Adaptive Server IQ, позволяющий создавать хранилища на основе данных из СУБД производства не только Sybase, но и других производителей. Высокая скорость выполнения запросов в этом продукте обусловлена нестандартным способом хранения данных. Отметим также, что существует ряд продуктов под общим названием Sybase Industry Warehouse Studio, ориентированных на обслуживание конкретных предметных областей.

Teradata Database V2R6.0 (Teradata)

В течение последних нескольких лет СУБД компании Teradata считаются лидирующими продуктами среди СУБД, предназначенных для создания хранилищ данных. Последняя версия этой СУБД, Teradata Database V2R6.0, доступна для Microsoft Windows, OS/2 и ряда версий UNIX и Linux.

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

Для создания клиентских приложений, использующих Teradata Database, существуют ODBC-драйвер, документированный клиентский API, совместимый с IBM DB2, и ряд других программных интерфейсов. Средства администрирования этой СУБД включают средства резервного копирования и восстановления, просмотра и редактирования данных, мониторинга производительности и нагрузки, а также утилиту администрирования для управления всеми перечисленными задачами, доступную для различных версий Windows.

Netezza Performance Server 8000 Series (Netezza)

Netezza Performance Server — это аппаратно-программное решение, представляющее собой сервер с системой хранения данных и предустановленной на нем операционной системой Linux , а также СУБД с открытым кодом, созданной на основе Postgress. Компания Netezza заявляет, что данное решение не уступает по производительности решениям на основе Teradata при заметно меньшей стоимости. В числе особенностей данного аппаратно-программного решения — поддержка параллельной обработки данных, разделение задач за счет разделения частей базы данных между подзадачами, высокая масштабируемость.

Из программных интерфейсов данным решением поддерживаются универсальные механизмы доступа к данным ODBC и JDBC.

***

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

Обзор современных СУБД

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

В наиболее полном варианте пакеты СУБД должны иметь следующие компоненты:

1. Среда пользователя, дающая возможность непосредственно управления БД.

2. Алгоритмический язык для программирования прикладных систем обработки данных.

3. Компилятор для придания завершенной программе готового коммерческого вида, в виде exe-файла.

4. Программы- утилиты быстрого программирования рутинных операций, такие как FORM, MENU.

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

Основная особенность СУБД - это наличие процедур для ввода и хранения не только самих данных, но и описаний их структуры. Файлы, снабженные описанием хранимых в них данных и находящиеся под управлением СУБД, стали называть банки данных, а затем "Базы данных" (БД).

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

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

Известно много программных продуктов, позволяющих создавать и работать с БД, например, Access, Clipper, Excel и другие. Среди большого разнообразия программ наибольшей популярностью пользуется СУБД FoxPro, которая по своим характеристикам удовлетворяет самым высоким требованиям, предъявляемым такого типа системам как по уровню и объему, так и по скорости обработки информации.

На данный момент разработано и широко используется Visual FoxPro для Windows версий 3.0 и 5.0. Однако, работа с этими пакетами для непрограммистов представляет собой довольно сложную задачу. Поэтому для создания БД для пользователей, имеющих небольшой опыт в программировании, очень удачными являются версии 2.5 и 2.6 под Windows и 2.0 под DOS.

Структура Базы данных:

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

Типичным примером “бумажной” базы данных является каталог библиотеки- набор бумажных карточек, содержащий информацию о книгах. Информация в этой базе однородная (содержит сведения только о книгах) и упорядоченная (карточки расставлены в алфавитном порядке фамилий авторов). Другими примерами бумажной базы данных являются телефонный справочник и расписание движения поездов.

Компьютерная база данных представляет собой файл (или набор связанных файлов), содержащий информацию, который часто называют файлом данных. Файл данных состоит из записей, каждая из которых содержит информацию об одном экземпляре. Записи состоят из полей. Каждое поле содержит информацию об одной характеристике экземпляра. Следует обратить внимание, что каждая запись состоит из одинаковых полей. Некоторые поля могут быть не заполнены, однако все равно присутствуют в записи. На бумаге базу данных удобно представлять в виде таблицы. Информацию компьютерных баз данных обычно выводят на экран в виде таблиц. Поэтому часто вместо словосочетания “файл данных” используют словосочетание “таблица данных” или просто “таблица”.

Среда разработки Borland С++ Builder.

Для создания автономного рабочего места можно выбрать программные средства языка « С++ Builder» , которое является одной из наиболее известных СУБД. На рынке программных продуктов есть много средств для автоматизации программирования. Но по мощности и удобству использования со средой Builder может соперничать лишь Borland Delphi и Microsoft Visual Basic.

« С++ Builder» является мощной системой визуального объектно-ориентированного программирования, которая позволяет работать как с простыми локальными удаленными БД, так и с многозвенными распределенными БД. Она сама и поставляемые с ней программные продукты позволяют решать следующий круг задач:

1. Быстро создавать профессионально выглядящие оконные интерфейсы для приложений даже начинающих программистов.

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

3. Создавать удобный интерфейс любым ранее созданным программам.

4. Создавать собственные библиотеки DLL- компонентов, которые потом можно использовать в других языках программирования.

5. Создавать системы работы с локальными и удаленными БД любых типов.

6. Создавать БД различных типов с помощью инструментария С++ Builder (DataBaseDesktop).

7. Форматировать и печатать из приложения сложные отчеты, включающие в себя таблицы, графики, самого разного обозначения.

8. Связываться со своего приложения с такими продуктами Microsoft как Word, Excel и др.

9. Создавать систему помощи, как для своих приложений, так и для других.

Borland C++Builder 6 - это программа, созданная для управления данными - каталогизации, поддержки, обработки информации и многое другое. Хотя Вы можете производить многие операции базы данных через систему меню и интерфейс, овладение обширными возможностями Borland C++Builder 6 требует некоторого знания лежащего в основе языка программирования.

Приложения в среде Borland С++ Builder 6 строятся в виде специальных конструкций - проектов, которые выглядят для пользователя как совокупность нескольких файлов. Ни одна программа не может существовать вне структуры-проекта. Действия по управлению проектами осуществляет специальный программный комплекс - Менеджер проектов.

Обоснование выбора технических средств

Минимальные системные требования:

2. Операционная система Microsoft Windows 98, Windows Millennium (Me), Windows 2000 и поздние версии операционных систем Microsoft Windows.

3. объем оперативной памяти должен составлять не менее 128 Mb (256 Mb рекомендуется).

4. 115 Mb свободного места на жестком диске.

5. VGA или более высокое разрешение монитора.

6. Мышь, клавиатура.

7. Пространство на жестком диске, необходимое для полной установки: 675 Mb (Enterprise edition); 580 Mb (Professional); 480 Mb (Personal)

Функционирование практически любого современного предприятия немыслимо без манипуляции данными, связанными с его производственной деятельностью. Нередко эффективность его деятельности и конкурентоспособность на рынке товаров или услуг непосредственно связаны с тем, актуальны ли эти данные и доступны ли они обращающимся к ним пользователям (причем нередко не только пользователям локальной сети, но и посетителям корпоративного Web-сервера и сотрудникам, обращающимся к ним с помощью мобильных устройств). С этой целью применяются различные архитектуры физического хранения данных, такие как Storage Area Network (SAN) или Network Attached storage (NAS), а также системы управления базами данных, предназначенные для логической организации данных и осуществления доступа к ним. Корпоративные данные большинства компаний сейчас хранятся в реляционных СУБД, о которых и пойдет речь в данной статье.

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

Требования к корпоративным СУБД

Современным реляционным СУБД предъявляются следующие требования:

  • масштабируемость, то есть способность одновременно обслуживать большее количество пользовательских запросов с той же скоростью при пропорциональном этому количеству увеличении объема предоставляемых ресурсов (процессоров, оперативной памяти и т.д.);
  • доступность, то есть постоянная возможность получения ответа на запрос;
  • надежность, то есть минимальная вероятность сбоев, а также наличие средств восстановления данных после сбоев, резервирования и дублирования;
  • управляемость, то есть простота администрирования и конфигурирования, а нередко и наличие средств автоматического конфигурирования (обычно набор средств администрирования включает средства создания баз данных и их объектов, инструменты репликации данных между различными серверами, утилиты управления пользователями и группами, средства мониторинга событий, средства просмотра планов выполнения запросов, утилиты миграции из других СУБД);
  • наличие средств защиты данных от потери и несанкционированного доступа;
  • поддержка стандартных механизмов доступа к данным (сегодня это главным образом ODBC, JDBC, OLE DB, а в ближайшее время можно будет говорить и об ADO .NET).

Как правило, отсутствие какого-либо из этих признаков приводит к тому, что даже у неплохой по другим потребительским свойствам СУБД область применения оказывается весьма ограниченной. Так, СУБД с плохой масштабируемостью, успешно применявшаяся при небольшом обрабатываемом объеме данных, оказывается непригодной при его росте и нередко ее приходится заменять на другую; при этом неизбежны определенные затраты на переписывание серверного кода. Лишние затраты на администрирование обычно тоже никому не нужны. Плохие масштабируемость и доступность влекут за собой дополнительные затраты рабочего времени сотрудников, простои, а также потерю компанией клиентов, отчаявшихся дождаться нужных данных на корпоративном сайте и вынужденных обратиться на сайт конкурента.

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

Говоря о различном назначении реляционных баз данных, в первую очередь отметим, что существует два их типа:

  • оперативные, или OLTP-базы данных (OLTP - On-Line Transaction Processing) - обычно в эти базы данных осуществляется интенсивный ввод данных, а вот число адресованных к ним запросов невелико;
  • хранилища данных, применяемые, как правило, в аналитических приложениях и системах поддержки принятия решений - к ним обычно адресуется большое число запросов, но ввод данных в них не столь интенсивен.

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

DB2 Universal Database и Informix Dynamic Server (IBM)

Семейство серверных СУБД фирмы IBM, известное под названием DB2 Universal Database (DB2 UDB), впервые появилось в 1996 году и предназначалось для платформ UNIX, OS/2 и Microsoft Windows NT. Последняя версия этого продукта, DB2 UDB 7.2, функционирует под управлением операционных систем AS/400AIX, S/390, Windows NT/2000, Windows 95/98, OS/2, AIX, HP-UX, SCO UnixWare, Linux, NUMA-Q и Sun Solaris.

Из механизмов доступа к данным DB2 UDB поддерживает ODBC, JDBC и ADO/OLE DB, а для пользователей Microsoft Visual Studio доступны включаемые в среду дополнительные модули, такие как Stored Procedure Builder. Windows-версии DB2 Universal Database 7.2 позволяют также создавать хранимые процедуры на языке Visual Basic. Cредства разработки Borland поддерживают доступ к DB2 не только с помощью ADO/OLE DB и ODBC, но и посредством собственных универсальных механизмов доступа к данным - Borland Database Engine и dbExpress.

DB2 Universal Database поддерживает создание хранилищ данных и, помимо средств переноса данных в хранилище, содержит в составе клиентской части Data Warehouse Center, позволяющий управлять всеми процессами, связанными с созданием и поддержкой хранилищ данных, включая создание схемы хранилища, определение источников исходных данных для него, создание расписаний обновления данных в хранилище, проверку и исправление некорректных данных. Для поддержки OLAP-хранилищ в состав сервера DB2 Universal Database входит OLAP Starter Kit, основанный на OLAP-сервере Hyperion Essbase.

DB2 UDB 7.2 поддерживает хранение и поиск XML-документов по их элементам и атрибутам. С помощью протокола SOAP можно обращаться к Web-сервисам, предоставляющим доступ к хранимым процедурам и данным DB2 Universal Database (сами Web-сервисы могут управляться сервером приложений IBM WebSphere).

К другим важнейшим техническим характеристикам DB2 Universal Database следует отнести поддержку реляционных и комплексных данных с помощью объектных расширений, возможность работы на мультипроцессорных платформах, поддержку кластеров, 64-разрядную архитектуру памяти, распараллеливание запросов, наличие средств для гетерогенного администрирования и обработки данных, поддержку выполнения распределенных транзакций.

Ведущим продуктом фирмы Informix до приобретения ее компанией IBM являлся Informix Dynamic Server (IDS), поддерживающий платформы UNIX и Microsoft Windows NT и обеспечивающий эффективную работу как на одно-, так и на многопроцессорных системах, а также в кластерах. Этот продукт обладает мощными средствами параллельной обработки данных. В числе основных характеристик Informix Dynamic Server следует отметить следующие: использование для управления дисковым пространством как средств операционной системы; так и собственных функций, позволяющих обойти ограничения операционной системы, управление разделением памяти; динамическое управление потоками; поддержку фрагментации таблиц и индексов на нескольких дисках; распараллеливание запросов; зеркалирование данных. IDS поддерживает двухфазное завершение транзакций, а также гетерогенные транзакции (в этом случае в транзакциях может принимать участие и не-Informix сервер). Особо следует отметить поддержку этим сервером временных рядов, что делает его незаменимым в биржевых системах, а также в приложениях для брокеров и трейдеров.

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

Из механизмов доступа к данным IDS поддерживает ODBC, JDBC и ADO/OLE DB. Cредства разработки Borland поддерживают доступ к IDS с помощью механизмов Borland Database Engine и dbExpress. В ближайшее время ожидается появление поддержки Microsoft .NET.

После приобретения корпорацией IBM части бизнеса компании Informix, связанного с созданием систем управления базами данных, была выпущена версия 9.30 этого продукта, а в период до 2006 года ожидается выпуск еще нескольких версий. Тем не менее при создании новых проектов IBM настоятельно рекомендует ориентироваться на применение DB2.

Для создания хранилищ данных существовал другой продукт Informix - Red Brick Warehouse. В IBM планируют дальнейшее развитие Red Brick, а некоторые используемые в нем технологии будут применены в последующих версиях DB2.

Oracle9i (Oracle)

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

Отметим, что Oracle была первой компанией, создавшей СУБД, использовавшую предоставляемые некоторыми серверными платформами средства параллельных вычислений, - Oracle Parallel Server (до ее появления параллельные вычисления использовались только для решения научных задач).

На сегодняшний день последней версией Oracle является версия Oracle9i. СУБД Oracle9i, предназначенная для применения на недавно сложившемся рынке Интернет-приложений, отвечает самым строгим требованиям к качеству обслуживания, обладает возможностями кластеризации (для этого предназначен модуль Oracle Real Application Clusters), мощными и экономичными средствами безопасности. Встроенные в Oracle9i средства управления позволяют контролировать все жизненно важные компоненты продукта и организовать непрерывный доступ к данным, практически исключая запланированные и аварийные задержки.

СУБД Oracle9i основана на архитектуре с единым ядром. Она обладает средствами параллельной обработки запросов, поддержкой кластеров, встроенными средствами OLAP, интерактивными функциями персонификации, средствами быстрого извлечения, преобразования и загрузки данных, службами порталов, средствами бизнес-анализа, распространения отчетов и анализа действий пользователей, инструментами анализа производительности СУБД, средствами поддержки XML.

Из механизмов доступа к данным Oracle9i поддерживает ODBC, JDBC и ADO/OLE DB. Из средств разработки Borland можно осуществлять доступ к Oracle9i с помощью механизма dbExpress. Клиентская часть Oracle содержит также набор COM-объектов для доступа к данным (Oracle Objects for OLE). Отметим, что и многие другие компании производят ODBC-драйверы и OLE DB-провайдеры для доступа к Oracle (в частности, Microsoft).

Помимо этого Oracle поставляет на рынок собственный набор средств разработки Oracle9i Developer Suite для быстрого создания Интернет-приложений, настраиваемых Web-порталов, а также Web-сервисов.

Из готовых информационных систем на базе Oracle следует особо отметить несколько крупных систем управления предприятием, в частности SAP/R3. На Западе также нередко используются готовые решения от самой Oracle Corporation, объединенные под общим названием Oracle Applications, такие как Oracle Financials, Oracle Human Resources, Oracle Market Management, Oracle Project Systems и др., - собственно, продажа и поддержка именно этих приложений и составляют основную часть бизнеса компании.

SQL Server 2000 (Microsoft)

Корпорация Microsoft до 1987 года не имела никакого отношения к производству корпоративных СУБД. Первая версия Microsoft SQL Server - совместный продукт компаний Microsoft и Sybase, выпущенный в 1988 году, - была разработана для платформы OS/2. Последующие версии этого сервера баз данных предназначались для платформы Windows NT и со временем были тесно интегрированы с этой операционной системой. Для других платформ версии этого сервера не выпускались и не выпускаются. Поэтому популярность SQL Server определяется в первую очередь популярностью платформы, которую он поддерживает, в данный момент это Windows 2000, в ближайшем будущем - Windows .NET Server. Эта СУБД настолько связана с операционной системой, что ее надежность, масштабируемость и производительность определяются надежностью, масштабируемостью и производительностью самой платформы и положение SQL Server на рынке будет зависеть от выпуска новых версий Windows.

Последняя версия этой СУБД - Microsoft SQL Server 2000 - отличается повышенной масштабируемостью и производительностью. Она позволяет использовать на одном компьютере несколько одновременно работающих серверов, поддерживает создание кластеров, параллельные вычисления в многопроцессорных системах, распределенные запросы, создание индексов для представлений (Indexed Views), что в ряде случаев существенно повышает скорость выполнения запросов. Этот сервер поддерживает хранение и извлечение XML-данных, представление в виде XML результатов запросов, представление хранимых процедур в виде Web-сервисов (для реализации этой возможности существует свободно доступный продукт под названием XML for SQL Server, или SQLXML).

Средства администрирования Microsoft SQL Server 2000 считаются одними из самых простых и удобных. Помимо средств решения стандартных задач администрирования (создание баз данных и их объектов, манипуляция пользователями и группами, резервное копирование и восстановление, подключение к другим серверам, средства репликаций), они включают утилиты обмена данными с другими СУБД и хранилищами данных (Data Transformation Services). В состав этого продукта, начиная с версии 7.0, входит и OLAP-сервер (собственно, этот шаг Microsoft вынудил других производителей СУБД включать OLAP-средства, прежде поставлявшиеся отдельно и стоившие довольно дорого, в состав своих серверов баз данных).

Из механизмов доступа к данным этот продукт поддерживает ODBC, OLE DB/ADO, ADO .NET. Имеется также JDBC-драйвер производства самой компании Microsoft. Кроме того, для работы с этим сервером пользователи Borland Delphi 7 могут использовать механизм доступа к данным dbExpress. Средства разработки Microsoft при работе с Microsoft SQL Server обладают рядом дополнительных возможностей, таких как отладка серверного кода, интеграция средств администрирования в среду разработки и т.д.

Adaptive Server Enterprise и Adaptive Server IQ (Sybase)

Серверные продукты компании Sybase происходят от двух «предков». Первым из них является одна из ранних версий Microsoft SQL Server, созданная совместно Microsoft и Sybase. Начиная с 1994 года Microsoft и Sybase разрабатывают свои серверные продукты независимо друг от друга, и результатом деятельности компании Sybase в этом направлении является продукт Adaptive Server Enterprise (ASE), последняя версия которого, 12.5, существует для Windows NT/2000 и некоторых версий UNIX (включая Linux).

В настоящее время Adaptive Server Enterprise поддерживает упреждающее асинхронное чтение, что повышает скорость выполнения сложных запросов, создание кластеров, распределенную обработку запросов, в том числе к базам данных других производителей, расширенные хранимые процедуры, позволяющие осуществить легкий доступ к не-SQL-функциям (Java, 3GL-системы, функции операционной системы и т.д.), параллельную обработку запросов в многопроцессорных системах, параллельную работу утилит администрирования, динамическую конфигурацию сервера и резервное копирование данных с компрессией, поддержку XML-запросов.

Из универсальных механизмов доступа к данным ASE поддерживает ODBC, JDBC, OLE DB/ADO. Пользователи средств разработки Borland для работы с этим сервером могут также использовать механизм доступа к данным dbExpress. Отметим, что нередко вместе с ASE используются средства разработки и проектирования данных самой компании Sybase.

Для создания многомерных хранилищ данных у Sybase существует еще один серверный продукт - Adaptive Server IQ, позволяющий создавать хранилища на основе данных из СУБД не только производства Sybase, но и других производителей. Высокая скорость выполнения запросов в этом продукте обусловлена нестандартным способом хранения данных. Отметим также, что существует ряд продуктов под общим названием Sybase Industry Warehouse Studio, ориентированных на обслуживание конкретных предметных областей: торговли (Retail Warehouse Studio), здравоохранения (Healthcare Warehouse Studio), страхования (Life Insurance Warehouse Studio) и др.

Teradata Database V2R4.1 (Teradata)

В течение последних нескольких лет СУБД компании Teradata считаются лидирующими продуктами среди СУБД, предназначенных для создания хранилищ данных. Последняя версия этой СУБД, Teradata Database V2R4.1, доступна для Microsoft Windows 2000 Server, Windows 2000 Advanced Server, Windows .NET Server и ряда версий UNIX.

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

Для создания клиентских приложений, использующих Teradata Database, существуют ODBC-драйвер, документированный клиентский API, совместимый с IBM DB2 (это означает, что клиентские приложения, использующие DB2, могут выполняться и c Teradata), и ряд других интерфейсов. Средства администрирования этой СУБД включают средства резервного копирования и восстановления, просмотра и редактирования данных, мониторинга производительности и нагрузки, а также утилиту администрирования для управления всеми перечисленными задачами, доступную для Windows NT Workstation 4.0, Windows 2000 Professional, Windows 98.

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

КомпьютерПресс 10"2002

Производители СУБД Обзор MS SQL 2014 Лекция № 2. 2 Бутенко И. В. 2017 год

Введение Клиент-серверная архитектура: Кл - “активная” программа, Срв – пассивная. Реляционная база данных - это набор информации, сгруппированной в одну или несколько таблиц.

Производители СУБД IDC 2015 г. Oracle – 45% IBM – 18% Microsoft – 20% SAP– 5% Other – 12% Российская СУБД ЛИНТЕР компании РЕЛЭКС.

Рынок СУБД для ФГИС Федеральные инф. системы РФ (2015) Microsoft – 41, 1% Oracle - 28%. My. SQL – 15, 6% Postgree. SQL – 9, 7 IBM – 3, 1%

Oracle 1977 г. – Software Development Laboratories (SDL). 1979 г. – Relational Software, Inc. (RSI). Выпустила первую коммерческую СУБД Oracle v 2 на основе языка запросов SQL. 1982 г. – Oracle Systems 2013 г. – СУБД Oracle Database 12 c.

Oracle В результате поглощения Sun Microsystems ($7, 4 млрд.), к Oracle перешли активы My. SQL AB и свободно распространяемая СУБД My. SQL. Последняя версия 02. 2016 году – 5. 6. 29. Berkeley DB - встраиваемая нереляционная СУБД, перешедшая к Oracle в 2006 году в результате приобретения компании Sleepycat Software.

Виды лицензий Named User Plus (NUP) - лицензирование по количеству именованных пользователей. Процессор (Processor, CPU) - это процессор, на котором установлены и/или работают продукты Oracle.

Редакции 12 c Express Edition – бесплатная редакция; оперативная память - 1 Гб, 1 процессор, Win, Linux 32 x. Max объем пользовательских данных 4 Гб. Personal Edition (460$/NUP) – Версия для разработчиков. Standard Edition One ($5800/проц.) – не может устанавливаться на системы, имеющие более 2 -х процессорных разъёмов. Standard Edition ($17500/проц.) – не может устанавливаться на системы, имеющие более 4 -х процессорных разъёмов. Enterprise Edition ($47600/проц.) – содержит все компоненты Oracle Database, а также допускает расширение.

IBM 1896 – Tabulating Machine Company. 1921 – International Business Machines. 1968 – Иерархическая СУБД IMS (Information Management System). 1978 – Реляционная СУБД System R. 2001 – покупка Informix. 2013 – DB 2 10. 5 2014 – IBM Informix 12. 10 Panther

Редакции DB 2 Express–C – базовая бесплатная версия. Нет тех. поддержки. Максимум 2 ядра и 1 процессор, 2 Гб ОЗУ. Personal Edition – поддерживает однопользовательскую разработку. Everyplace – версия для карманных компьютеров. Express Edition – до 4 ядер (процессоры Intel) и до 4 Гб ОЗУ. Можно использовать только на 2 -х процессорных 2 -х ядерных серверах (для Intel) или слабее. Workgroup Server Edition – до 16 Гб ОЗУ. Enterprise Server Edition – полнофункциональная версия. http: //publib. boulder. ibm. com/infocenter/db 2 luw/v 9 r 7/index. j sp? topic=/com. ibm. db 2. luw. licensing. doc/r 0053238. ht ml

Редакции Informix Developer Edition – бесплатная некоммерческая версия. 1 ядро, 1 Гб ОЗУ, 8 Гб БД. Innovator-C Edition – бесплатная. 1 проц. , 4 ядра, 2 Гб ОЗУ. Choice Edition for Apple OS X and Win – 2 проц. , 8 ядер, 8 Гб ОЗУ. Growth Edition ($16050/проц.) – 4 проц. , 16 ядер, 16 Гб ОЗУ. Ultimate Edition – полнофункциональная версия. http: //www. ibm. com/developerworks/data/library/tec harticle/dm-0801 doe/index. html

Microsoft 1975 - MICROcomputer SOFTware 1988 – Microsoft и Sybsase выпустили первую версию SQL сервера для OS2. 1992 – Windows NT 3. 1 и SQL Sever 4. 2 для NT. 2005 – SQL Server 2005. 2008 – SQL Server 2008. 2014 – SQL Server 2014.

Редакции SQL Server Express Edition – поддерживает 1 процессор, 1 Гб памяти и БД до 10 Гб. Workgroup Edition – поддерживает до 2 процессоров, 4 Гб памяти, БД до 524 Пб (3743$/проц.). Standard Edition – поддерживает до 4 процессоров, 64 Гб памяти (7171$/проц.). Developer Edition – полнофункциональная версия для некоммерческого использования (37$/польз.). Enterprise Edition – полнофункциональная версия. 8 процессоров, 2 Тб памяти (27495$/проц.). Datacenter – максимальная версия (54990$/проц.). http: //www. microsoft. com/sqlserver/en/us/productinfo/compare. aspx

SAP 1976 г. - Systemanalyse und Programmentwicklung 2007 г. – приобретена Business Objects ($6, 8 млрд.). Анализ данных. 2010 г. – приобретена Sybase ($5, 8 млрд.). СУБД.

Прочие Inter. Systems: СУДБ Caché Enterprise. DB: открытый код (основа Postgre. SQL) Mark Logic: работа с неструктурированной информацией Maria. DB: открытый код + корп. версия

Службы SQL 2014 Analysis Services Reporting Services Integration Services Replication Notification Services Service Broker Full Text Search

Утилиты SQL 2014 Management Studio Books on-line Profiler Import and Export Data SQL Server Configuration Manager и т. п.

Системные БД master Содержит всю системную информацию. Записи о пользовательских логинах и все системные конфигурационные установки, информация обо всех остальных установленных в системе базах данных, включая их физическое размещение, а также информацию необходимую при их инициализации. msdb Эта база используется SQL Server Agent для хранения информации о задачах и предупреждениях, которые он должен выдавать. Кроме того там хранится протокол о выполненных задачах и их статусах.

Системные БД tempdb Содержит все временные таблицы и временные хранимые процедуры. Там же хранятся рабочие таблицы, создаваемые сервером. Это глобальный ресурс, к которому имеют доступ все пользователи. Эта база пересоздается при каждом рестарте сервера. Все временные объекты уничтожаются после разрыва соединения с пользователем. По умолчанию эта база растет, как ей необходимо. Возможно ее размещение в памяти. model Используется как шаблон при создании баз данных. При выполнении команды Create database сначала копируется вся информация, содержащаяся в этой базе. Tempdb тоже ее использует.

Объекты SQL Server Термин объект используется для описания компонента базы данных. Таблицы (table) – место хранения данных. Таблицы состоят из строк и столбцов. Хранимые процедуры – скомпилированная программа на языке SQL. Триггеры Представления Пользовательские типы данных Ограничения

Хранение объектов Физически БД представляет собой набор файлов, расположенных на диске. Формат этих файлов и детальные принципы работы с ними является коммерческой тайной производителя СУБД. Файлы данных (data file) – Основной или главный файл (Primary File) – Вторичный или дополнительный файл (Secondary File) Файлы журнала транзакций (transaction log files)

Создание БД CREATE DATABASE database_name [ ON [ [ , . . . n ] [ , [ , . . . n ] ] [ LOG ON { [ , . . . n ] } ] ] [ COLLATE collation_name ] [ WITH ]][; ]

Литература Крис Дейт «Введение в системы баз данных» Марк Шпеник, Оррин Следж и др. «Руководство администратора БД Microsoft SQL Server» Том Кайт «Oracle для профессионалов» Эрик Спирли «Корпоративные хранилища данных» Гектор Гарсиа-Молина, Конноли Т. , Кодд Э. , Чен П. , Дарвен Х. Inmon W. , Kimball R. , Marco D. , Tannenbaum Adrienne



Рекомендуем почитать

Наверх