Компьютеры с современный мир

Классификация современных субд. Системы управления базами данных (субд)

Классификация СУБД в соответствии с используемой моделью данных:

Иерархическая.

Реляционная.

Объектная.

Гибридная (элементы объектной с реляционной).

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

Классификация РСУБД в зависимости от объема поддерживаемых БД и количества пользователей.

Высший уровень. Эти продукты поддерживают крупные БД (сотни и тысячи Гбайт и более), тысячи пользователей. В крупных корпорациях. Представители: ORACLE7, ADABAS 5.3.2, SQL SERVER11.

Средний уровень. Эти продукты поддерживают БД до нескольких сот Гбайт, сотни пользователей. В небольших корпорациях и подразделениях крупных фирм. Представители: InterBase 3.3, Informix-OnLine7.0, Microsoft SQL Server6.0.

Нижний уровень. Эти продукты поддерживают БД до 1 Гбайт, менее 100 пользователей. В небольших подразделениях. Представители: NetWare SQL 3.0, Gupta SQL-Base Server.

Настольные СУБД. Для одного пользователя, используется для ведения настольной БД или как клиент для подключения к серверу БД.

Оценка СУБД

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

Высший уровень:

Oracle7, corp. Oracle

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

SQL Server 10, comp. Sybase

Мощный продукт, поддерживающий обработку в реальном времени и процессы решений. Одного уровня с Oracle7, но обладает некоторыми ограничениями в плане масштабируемости, поддерживает ограниченное число аппаратных и программных платформ.

Средний уровень :

Informix-OnLine 7.0, comp. Software

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

Microsoft SQL Server 6.0, corp. Microsoft

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

Низкий уровень:

Так как каждая из них предоставляет похожий набор инструментов, то рассматривать каждое в отдельности не будем. В эту группу входят Cupta SQL-Base Server, Watcom SQL Network Server и другие. Они обладают ограниченными возможностями по сравнению с СУБД более высокого класса, но в небольших компаниях, где БД небольшие и количество пользователей ограничено несколько десятками людей, они прекрасно выполняют свои обязанности по управлению БД.

Настольные СУБД:

FoxPro 2.6, corp. Microsoft

Очень ограниченные возможности по обработке данных. Отсутствие возможности установки в сети. Предназначена личных дел. Не рекомендуется для использования в крупных системах. Отсутствует возможность защиты данных, управление доступом и многое другое.

Paradox 5.0, comp. Borland

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

Оценка современных СУБД:

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

Среди представленных продуктов только Oracle7 наиболее полно поддерживает нужные требования. Ниже будут даны основные понятия о сервере Oracle7.

Контрольные вопросы:

Понятие СУБД.

Возможности СУБД.

Классификация СУБД.

К важным признакам классификации современных СУБД относятся:

    среда функционирования – класс компьютеров и операционных систем, на которых работает СУБД, в том числе разрядность операционной системы, на которую ориентирована СУБД (16- или 32-разрядные);

    тип поддерживаемой в СУБД модели данных – сетевая, иерархическая или реляционная;

    возможности встроенного языка СУБД, его переносимость в другие приложения (SQL, Visual Basic, ObjectPASCAL и т.п.);

    наличие развитых диалоговых средств конструирования (таблиц, форм, запросов, отчетов, макросов) и средств работы с БД;

    возможность работы с нетрадиционными данными в корпоративных сетях (страницы HTML, сообщения электронной почты, изображения, звуковые файлы, видеоклипы и т.п.);

    используемая концепция работы с нетрадиционными данными – объектно-реляционные, объектные;

    использование объектной технологии OLE;

    возможности интеграции данных из разных СУБД;

    степень поддержки языка SQL и возможности работы с сервером баз данных (SQL-сервером);

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

Структурирование – это введение соглашений о способах представления данных. Так, в реляционных БД, рассматриваемых далее, используются три структуры данных: таблица, запись, поле.

Таблица имеет имя и состоит из записей.

Запись – это строка таблицы, содержащая набор значений свойств, размещенный в полях БД. Таким образом, запись имеет номер в таблице и состоит из полей.

Поле – это столбец таблицы, содержащий значения определенного свойства. У каждого поля есть имя, тип (текстовый, числовой и т.д.), длина в байтах.

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

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

1.2. Модели данных: реляционная, иерархическая, сетевая

Понятие «данные» в концепции БД – это набор конкретных значений, параметров, характеризующих объект, условие, ситуацию или любые другие факторы.

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

В пособии мы будем останавливаться только на трех моделях данных: иерархической, сетевой и реляционной.

а) Иерархическая модель данных.

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

Основными информационными единицами в иерархической модели являются: база данных, сегмент и поле.

Сегмент в терминологии Американской Ассоциации по базам данных DBTG (Data Base Task Group) называется записью, при этом в рамках иерархической модели определяются два понятия: тип сегмента, или тип записи, и экземпляр сегмента, или экземпляр записи.

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

Поле данных определяется как минимальная, неделимая единица данных, доступная пользователю с помощью СУБД.

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

Каждая физическая БД удовлетворяет следующим иерархическим ограничениям:

    в каждой физической БД существует один корневой сегмент, то есть сегмент, у которого нет логически исходного (родительского) типа сегмента;

    каждый логически исходный сегмент может быть связан с произвольным числом логически подчиненных сегментов;

    каждый логически подчиненный сегмент может быть связан только с одним логически исходным (родительским) сегментом.

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

Структура объекта (поля, сегмента) может быть иерархической (в виде древа) или линейной.

Рассмотрим пример иерархической БД.

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

Какие задачи нам надо решать в ходе разработки приложения?

    При приеме заказа мы должны выяснить, какую модель заказывает заказчик: типичную или индивидуальную комплектацию.

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

    Если заказывается индивидуальная модель, то требуется описать весь состав новой модели (рис. 1.3.).


СОСТАВ ЗАКАЗНОЙ МОДЕЛИ

СОСТАВ МОДЕЛИ

Имя блока

Характеристика

Фирма-изготовитель

Стоимость

Имя блока

Характеристика

Фирма-изготовитель

Стоимость

Рис. 1.3. Состав модели

Для того чтобы можно было принимать заказы на индивидуальные модели, нам понадобится информация о наличии конкретных деталей на складе, в этом случае нам необходимо второе дерево – Склады (см. рис. 1.4).

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

    шаблоны всех записей логических БД, доступных пользователю;

    указатели на текущий экземпляр сегмента данного типа – для всех видов сегментов.

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


Рис. 1.4. Дерево базы данных Склады

Все операторы в языке манипулирования данными можно разделить на три группы:

    операторы поиска данных;

    операторы поиска данных с возможностью модификации;

    операторы модификации данных.

б) Сетевая модель данных.

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

Базовыми объектами модели являются: элемент данных, агрегат данных, запись, набор данных.

Элемент данных – минимальная информационная единица, доступная пользователю с использованием СУБД.

Агрегат данных соответствует следующему уровню обобщения в модели. В модели определены агрегаты двух типов: агрегат типа вектор и агрегат типа повторяющаяся группа.

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

Квартира

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

Набором называется двухуровневый граф, связывающий отношением «один-ко-многим» два типа записи.

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

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

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

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

Все операции манипулирования данными в сетевой модели делятся на навигационные операции и операции модификации.

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

Операции модификации осуществляют как добавление новых экземпляров отдельных типов записей, так и экземпляров новых наборов, удаление экземпляров записей и наборов, модификацию отдельных составляющих внутри конкретных экземпляров записей.

в) Реляционная модель данных.

Появление теоретико-множественных моделей в системах БД было предопределено настоятельной потребностью пользователей в переходе от работы с элементами данных, как это делается в графовых моделях, к работе с некоторыми макрообъектами. Основной моделью в этом классе является реляционная модель данных.

Эта модель данных является совокупностью простейших двумерных таблиц – отношений, именно поэтому модель получила название реляционной (от англ. «relation» – отношение). Реляционная модель представляет базу данных в виде множества взаимосвязанных отношений.

Таблица является основным типом структуры данных (объектом) реляционной модели. Структура таблицы определяется совокупностью столбцов. В каждой строке таблицы содержится по одному значению в соответствующем столбце. В таблице не может быть двух одинаковых строк. Общее число строк не ограничено.

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

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

В этой модели, так же, как и в остальных, поддерживаются иерархические связи между отношениями. В каждой связи одно отношение может выступать как основное, а другое отношение выступает в роли подчиненного. Это означает, что один кортеж основного отношения может быть связан с несколькими кортежами подчиненного отношения. Для поддержки этих связей оба отношения должны содержать наборы атрибутов, по которым они связаны. В основном отношении это первичный ключ отношения (Primary key), который однозначно определяет кортеж основного отношения. В подчиненном отношении для моделирования связи должен присутствовать набор атрибутов, соответствующий первичному ключу основного отношения. Однако здесь этот набор атрибутов уже является вторичным ключом, то есть он определяет множество кортежей подчиненного отношения, которые связаны с единственным кортежем основного отношения. Данный набор атрибутов в подчиненном отношении принято называть внешним ключом (Foreign key).

Операции обработки данных включают операции над строками (кортежами) таблиц (отношений) и операции над отношениями, осуществляющие обработку данных нескольких отношений.

Операциями, выполняемыми на уровне строк отношений, являются:

    включение – добавляет в таблицу новую строку;

    удаление – удаляет из таблицы строку;

    обновление – осуществляет изменение значений атрибутов в строках.

Основными операциями над отношениями реляционной модели данных являются традиционные операции над множествами:

    Объединение – выполняется над двумя совместимыми отношениями R1 и R2. В результате операции объединения строится новое отношение R=R1 U R2. Отношение R имеет тот же состав атрибутов и совокупность кортежей исходных отношений. Причем в эту совокупность не включаются дубликаты.

Таблица R1:

Таблица R2:

Таблица R:

В новое отношение R не вошел кортеж К22, так как он дублирует кортеж К11.

    Пересечение – операция выполняется над двумя совместимыми отношениями R1 и R2. Результирующее отношение RP=R1R2 содержит одинаковые кортежи, которые есть в каждом из двух исходных.

Для таблиц из примера:

    Вычитание – операция выполняется над двумя совместимыми отношениями R1, R2 с идентичным набором атрибутов. В результате операции вычитания строится новое отношение RV = R1 - R2 с идентичным набором атрибутов, содержащее только те кортежи первого отношения R1, которые не повторяются во втором отношении R2.

Для таблиц из примера:

    Декартово произведение – операция выполняется над двумя отношениями R1 и R2, имеющими в общем случае разный состав атрибутов. В результате операции образуется новое соотношение RD=R1*R2, которое включает все атрибуты исходных отношений. Число кортежей декартова произведения равно произведению количеств кортежей в исходных отношениях.

    Выбор – операция выполняется над одним отношением R. Для отношения R по заданному условию (предикату) осуществляется выборка подмножества кортежей. Результирующее отношение имеет ту же структуру, но число его кортежей будет меньше (или равно) исходному.

    Проекция – операция выполняется над одним отношением R. Операция проекции формирует новое отношение (RPR) с заданным подмножеством атрибутов и последовательностью исходного отношения R. Оно может содержать меньше кортежей, так как после отбрасывания в исходном отношении R части атрибутов могут образоваться кортежи, дублирующие друг друга. Дублирующие кортежи из результирующего отношения исключаются.

    Соединение – выполняется для заданного условия соединения над двумя логически связанными отношениями. Исходные отношения R1 и R2 имеют разные структуры, в которых есть одинаковые атрибуты – внешние ключи. Операция соединения формирует новое отношение, структура которого является совокупностью всех атрибутов исходных отношений. Результирующие кортежи формируются объединением каждого кортежа из R1 с теми кортежами R2, для которых выполняется условие.

    Деление – операция выполняется над двумя отношениями R1 и R2, имеющими в общем случае разные структуры и некоторые одинаковые атрибуты. В результате операции образуется новое отношение, структура которого получается исключением из множества атрибутов отношения R1 множества атрибутов отношения R2. Результирующие строки не должны содержать дубликаты.

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

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

Рассматриваемая в последующих главах СУБД Microsoft Access является примером системы управления реляционными базами данных.

1. Понятие БД и СУБД. Виды СУБД ………………………………...…… 3

2. СУБД Microsoft Access ...………………………………………………... 7

Список используемой литературы ……………………………………….. 11

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

Следует учесть, что это определение не является единственно возможным. Информатика в отношении определений чаще всего не похожа на математику с ее полной однозначностью. Если подойти к понятию “база данных” с чисто пользовательской точки зрения, то возникает другое определение: база данных – совокупность хранимых операционных данных некоторого предприятия.

В базе данных предприятия, например, может храниться:

– вся информация о штатном расписании, о рабочих и служащих предприятия;

– сведения о материальных ценностях;

– данные о поступлении сырья и комплектующих;

– сведения о запасах на складах;

– данные о выпуске готовой продукции;

– приказы и распоряжения дирекции и т.п.

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

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

Поскольку основу любой базы данных составляет информационная структура, базы данных делят на три типа: табличные (реляционные), сетевые, иерархические.

Опыт использования баз данных позволяет выделить общий набор их рабочих характеристик:

– полнота – чем полнее база данных, тем вероятнее, что она содержит нужную информацию (однако, не должно быть избыточной информации);

правильная организация – чем лучше структурирована база данных, тем легче в ней найти необходимые сведения;

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

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

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

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

Системы управления базами данных позволяют объединять большие объемы информации и обрабатывать их, сортировать, делать выборки по определённым критериям и т.п.

Основные функции СУБД – это:

– определение данных;

– обработка данных;

– управление данными.

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

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

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

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

– хранение большого объема информации;

быстрый поиск требуемой информации;

– добавление, удаление и изменение хранимой информации;

– вывод ее в удобном для человека виде.

В информационных системах, которые работают на ПК, совместимых с IBM PC, большое распространение получили так называемые dBASЕ-подобные системы управления базами данных (СУБД). Известно по крайней мере три семейства таких СУБД (dBASE, FoxPro и Clipper), однако версий оригинальных систем и их адаптированных вариантов гораздо больше. Для пользователей существенным является то, что отличаясь между собой командными языками и форматом индексных файлов, все эти СУБД используют одни и те же оперативные файлы с расширением. DBF, формат которых стал на некоторое время своеобразным стандартом баз данных.

B dВАSE-подобных БД фактически использован реляционный подход к организации данных, т.е. каждый файл. DBF представляет собой двумерную таблицу, которая состоит из фиксированного числа столбцов и переменного числа строк (записей). B терминах, принятых в технической документации, каждому столбцу соответствует поле одного из пяти типов (N – числовое. C – символьное, D – дата, L – логическое. М – примечание), а каждой строке – запись фиксированной длины, состоящая из фиксированного числа полей. C помощью командных языков этих СУБД мы создаем и исправляем макеты файлов. DBF (описания таблиц), создаем индексные файлы, пишем пиктограммы работы с базами данных (чтение, поиск, модификация данных, составление отчетов и многое другое). Характерной особенностью файла DBF является простота и наглядность: физическое представление данных на диске в точности соответствует представлению таблицы на бумаге.

Однако в целом системы, построенные на основе файлов DBF, следует считать устаревшими. Многие механизмы реляционных БД, рассмотренные выше, в dBASE-подобных системах либо не поддерживаются, либо создаются пользователями и программистами «кустарным» способом.

Большую популярность до сего времени имеют и другие СУБД (с другим форматом файлов) – Paradox, Clarion, db_Vista и тд. Следует подчеркнуть, что перечисленные системы ведут родословную от МS-DОS, однако ныне почти все они усовершенствованы и имеют версии для Windows.

Среди современных реляционных систем наиболее популярны СУБД для Windows – Access фирмы Microsoft, Approach фирмы Lotus, Paradox фирмы Borland. Многие из этих систем поддерживают технологию OLE и могут манипулировать не только числовой и текстовой информацией, но и графическими образцами (рисунками, фотографиями) и даже звуковыми фрагментами и видеоклипами.

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

Вместе с тем, в центр современной информационной технологии постепенно перемещаются более мощные реляционные СУБД с так называемыми SQL-доступом (SQL – это язык запросов). В основе этих СУБД лежит так называемая технология «клиент-сервис». Среди ведущих производителей таких систем – фирмы Oracle, Centura (Gupta), Sybase, Informix, Microsoft и другие. Появились также объектные и объектно-реляционные СУБД.

В последнее время стали среди СУБД наиболее популярными и используемые в практике Access, Lotus, Oracle.

Разберем наиболее используемую программу Access.


2. СУБД Microsoft Access

Access – в переводе с английского означает “доступ”. MS Access – это функционально полная реляционная СУБД. Кроме того, MS Access одна из самых мощных, гибких и простых в использовании СУБД. В ней можно создавать большинство приложений, не написав ни единой строки программы, но если нужно создать нечто очень сложное, то на этот случай MS Access предоставляет мощный язык программирования – Visual Basic Application.

Популярность СУБД Microsoft Access обусловлена следующими причинами:

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

Система имеет полностью русифицированную версию;

Полная интегрированность с пакетами Microsoft Office: Word, Excel, Power Point, Mail;

Идеология Windows позволяет представлять информацию красочно и наглядно;

Возможность использования OLE технологии, что позволяет установить связь с объектами другого приложения или внедрить какие-либо объекты в базу данных Access;

Технология WYSIWIG позволяет пользователю постоянно видеть все результаты своих действий;

Широко и наглядно представлена справочная система;

Существует набор “мастеров” по разработке объектов, облегчающий создание таблиц, форм и отчетов.

После запуска системы появится главное окно Access (рис. 1). Здесь можно открывать другие окна, каждое из которых по-своему представляет обрабатываемые данные. Ниже приведены основные элементы главного окна Access, о которых необходимо иметь представление.


Рис.1. Экран СУБД Access.

В строке заголовка отображается имя активной в данный момент программы. Строка заголовка главного окна Access всегда отображает имя программы MICROSOFT Access.

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

Панель инструментов – это группа пиктограмм, расположенных непосредственно под полосой меню. Главное ее назначение – ускоренный вызов команд меню. Кнопки панели инструментов тоже могут изменяться в зависимости от выполняемых операций. Можно изменять размер панели инструментов и передвигать ее по экрану. Также можно отобразить, спрятать, создать новую панель инструментов или настроить любую панель инструментов.

Окно базы данных появляется при открытой базе данных. В нем сосредоточены все “рычаги управления” базой данных. Окно базы данных используется для открытия объектов, содержащихся в базе данных, таких как таблицы, запросы, отчеты, формы, макросы и модули. Кроме того, в строке заголовка окна базы данных всегда отображается имя открытой базы данных.

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

Логическую структуру данных, хранимых в базе, называют мо­делью представления данных. К основным моделям представления данных (моделям данных) относятся иерархическая, сетевая, реля­ционная.

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

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

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

Информационные системы, основанные на использовании БД, обычно функционируют в архитектуре клиент-сервер. В этом случае БД размещается на компьютере-сервере, и к ней осуществляется сов­местный доступ.

Сервером определенного ресурса в компьютерной сети называется компьютер (программа), управляющий этим ресурсом, клиентом - компьютер (программа), использующий этот ресурс. В качестве ресур­са компьютерной сети могут выступать, к примеру, базы данных, фай­лы, службы печати, почтовые службы.

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

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

Выделяют следующие виды СУБД:

* полнофункциональные СУБД;

* серверы БД;

* средства разработки программ работы с БД.

Полнофункциональные СУБД представляют собой традиционные СУБД. К ним относятся dBaseIV, Microsoft Access, Microsoft FoxPro и др.

Серверы БД предназначены для организации центров обработки данных в сетях ЭВМ. Серверы БД обеспечивают обработку запросов клиентских программ обычно с помощью операторов SQL. Примера­ми серверов БД являются: Microsoft SQL Server, InterBase и др.

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

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

* клиентских программ;

* серверов БД и их отдельных компонентов;

* пользовательских приложений.

По характеру использования СУБД делят на многопользователь­ские (промышленные) и локальные (персональные).

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

* возможность организации совместной параллельной работы мно­гих пользователей;

* масштабируемость;

* переносимость на различные аппаратные и программные платформы;

* устойчивость по отношению к сбоям различного рода, в том чис­ле наличие многоуровневой системы резервирования хранимой информации;

* обеспечение безопасности хранимых данных и развитой струк­турированной системы доступа к ним.

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

* относительная простота эксплуатации, позволяющая создавать на их основе работоспособные пользовательские приложения;

* относительно ограниченные требования к аппаратным ресурсам.

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

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

* язык описания данных - высокоуровневый непроцедурный язык декларативного типа, предназначенный для описания логической структуры данных;

* язык манипулирования данными - совокупность конструкций, обеспечивающих выполнение основных операций по работе с дан­ными: ввод, модификацию и выборку данных по запросам.

Названные языки в различных СУБД могут иметь отличия. Наи­большее распространение получили два стандартизованных языка: QBE - язык запросов по образцу и SQL - структурированный язык запросов. QBE в основном обладает свойствами языка манипулирования данными, SQL сочетает в себе свойства языков обоих типов.

СУБД реализует следующие основные функции низкого уровня:

* управление данными во внешней памяти;

* управление буферами оперативной памяти;

* управление транзакциями;

* ведение журнала изменений в БД;

* обеспечение целостности и безопасности БД.

Реализация функции управления данными во внешней памяти обес­печивает организацию управления ресурсами в файловой системе ОС.

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

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

Транзакции присущи три основных свойства:

* атомарность (выполняются все входящие в транзакцию операции или ни одна);

* сериализуемость (отсутствует взаимное влияние выполняемых в одно и то же время транзакций);

* долговечность (даже крах системы не приводит к утрате резуль­татов зафиксированной транзакции).

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

Ведение журнала изменений выполняется СУБД для обеспечения надежности хранения данных в базе при наличии аппаратных и про­граммных сбоев.

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

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

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

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

акая категория программного обеспечения, как системы управления базами данных, существует уже не один десяток лет — задача хранения данных возникла практически одновременно с появлением первых носителей данных, а принципы, на которых основана работа большинства современных СУБД, были сформулированы еще в 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.

***

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

Похожие публикации