Материал: Сравнительный анализ программного обеспечения по работе с базами данных

Внимание! Если размещение файла нарушает Ваши авторские права, то обязательно сообщите нам

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

Такая стратегия позволяет избежать частого обмена с внешней памятью и значительно увеличить эффективность работы СУБД.

.9 Классификация СУБД по характеру использования.

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

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

Рисунок 7 - Классификация СУБД по характеру использования

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

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

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

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

Сегодня известно большое число различных серверов баз данных SQL. Остановимся на следующих трёх ведущих серверных СУБД - Oracle8i, IBM DB2, Microsoft SQL Server - и сравним их в работе на каждом из основных этапов функционирования.

Рисунок 8 - Мировой рынок систем управления базами данных

Раздел 2. Сравнительный анализ

.1 Oracle

i. Пакет Oracle8i, наделенный самым развитым набором функций для работы с языком Java и доступа к данным через Интернет, системой оптимизации одновременного доступа. Единственным недостатком данной СУБД является сложность администрирования, однако все затраты на ее внедрение и освоение в последствии окупятся эффективной и надежной работой (сложность и дороговизна-спорны). Среди основных свойств СУБД Oracle следует отметить такие, как:

Высочайшая надежность;

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

Наличие универсальных средств защиты информации; Эффективные методы максимального повышения скорости обработки запросов;

Индексация по битовому отображению; Свободные таблицы (в других СУБД все таблицы заполняются сразу при создании);

Распараллеливание операций в запрос;

Наличие широкого спектра средств разработки, мониторинга и администрирования.

Ориентация на интернет технологии.

Решения, не уступающие разработкам Oracle можно найти только в DB2 фирмы IBM. Ориентация на интернет технологии - основной девиз современных продуктов Oracle. В этой связи можно отметить пакеты interMedia, обеспечивающее обработку данных в мультимедийных форматах, и Jserver, встроенное средство для работы с языком Java, которое объединяет возможности языка Java с возможностями реляционных баз данных. Компоненты EnterpriseJavaBeans представляют собой базовые модули из которых складываются Интернет-приложения на языке Java. Фирма Oracle придерживается принципа, что всеми важными функциями необходимо управлять из единого центра, поэтому предлагаемый модуль interMedia предоставляет в распоряжение пользователей самые передовые возможности для работы с мультимедийными объектами:

Очень развитые средства для обработки аудио клипов;

Неподвижных изображений;

Видеофрагментов;

Географических данных.

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

Также необходимо отметить, что разработанная фирмой Oracle система оптимизации одновременного доступа (multiversioningconcurrency) является одной из важнейших характеристик архитектуры Oracle (подобная функция есть лишь в СУБД InterBase компании InterBase компании Inprise). Данная функция позволяет исключить ситуацию, когда одному пользователю приходится ждать, пока другой завершит изменения в содержимое баз данных. Эта функция позволяет СУБД Oracle8i выполнять за секунду больше транзакций в расчете на одного пользователя, чем любая другая база данных. По уровню производительности при работе в WEB среде под LINUX Oracle занимает почетное второе место после СУБД MySQL, при этом значительно превосходя все другие СУБД по надежности и безопасности. Также следующие технологии являются уникальными, реализованными только в СУБД Oracle..

Технология RealApplicationCluster, появившаяся в 9-й версии СУБД Oracle, позволяет объединять сервера, обслуживающие СУБД в одну большую базу данных, что позволяет достичь двух ключевых целей:

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

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

Похожие технологии реализованы в Microsoft SQL Server 2008, но имеется одно существенное отличие: MicrosoftApplicationCluster позволяет повысить отказоустойчивость системы в целом, но без влияния на производительность.

Таким образом, использование RAC позволяет значительно повысить производительность системы, которая дошла до своего “физического потолка”, с сохранением средств, потраченных на это оборудование, и повысить отказоустойчивость системы. Как следствие - надежность и экономия..

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

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

Рисунок 9 - Технология Active Data Guard

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

Во-первых, очевидное - надежность. Живучесть и отказоустойчивость базы данных повышается на порядок.

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

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

Похожие технологии реализованы и в DB2 и в MS SQL Server, но OracleDataGuard выгодно отличается простотой реализации и возможностью использовать резервный сервер в работе и резервном копировании, а также поддержкой различных режимов синхронизации основного и резервного сервера: синхронный, асинхронный, отложенный..

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

Рисунок 10 - Технология RAT

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

Рисунок 11 - Технология RAT

.

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

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

Рисунок 12 - Опции Total Recall

Похожих или аналогичных технологий в других СУБД пока не реализовано..

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

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

 Storage Management.

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

Рисунок 14 - Технология AutomaticStorageManagement

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

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

.2 Microsoft SQL Server

SQL Server. Важнейшие характеристики данной СУБД:

простота администрирования;

возможность подключения к Web;

быстродействие и функциональные возможности механизма сервера СУБД;

наличие средств удаленного доступа.

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

Необходимо заметить, что SQL Server уступает другим рассматриваемым СУБД по двум важным показателям: программируемость и средства работы. При разработке клиентских БД приложений на основе языков Java, HTML часто возникает проблема недостаточности программных средств SQL Server и пользоваться этой СУБД будет труднее, чем системами DB2, Informix, Oracle или Sybase. Общемировой тенденцией в XXI веке стал практически повсеместный переход на платформу LINUX, а SQL Server функционирует только в среде Windows. Поэтому использование SQL Server целесообразно, только если для доступа к содержимому БД используется исключительно стандарт ODBC, в противном случае лучше использовать другие СУБД.

2.3 IBM DB2

DB2. IBM DB2 - результат почти 30-х опытно-конструкторских и исследовательских работ фирмы IBM. Последнюю на сегодня версию данной СУБД (6.х) отличает один из наиболее продуманных наборов средств управления и оптимизации и механизм БД, допускающий наращивание от портативного ПК с Windows 95 до целого кластера больших ЭВМ S/390, работающих под управлением OS/390. Пакет DB2 выпускается в двух редакциях: DB2 Workgroup и DB2 EnterpriseEdition.

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

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

Система DB2 вполне конкурентоспособна и в качестве платформы для разработки приложений т.к. существует средство StoredProcedureBuilder - автоматически преобразовывающее оператор SQL в соответствующий класс Java и включающее его в структуру базы данных. В версии DB2 6.1 значительно улучшена функциональная совместимость с другими СУБД: пакет позволяет использовать разработанную Microsoft спецификацию OLE DB, новый стандарт доступа к базам данных. Средства административного управления СУБД DB2, которые в новой версии переписаны на Java и могут быть получены из Web, заслуживают самой высокой оценки.