Добавил:
Upload Опубликованный материал нарушает ваши авторские права? Сообщите нам.
Вуз: Предмет: Файл:
Лекции.docx
Скачиваний:
44
Добавлен:
18.02.2016
Размер:
364.62 Кб
Скачать

Interbase sql Server. Общие сведения.

Одним из реляционных клиент-серверных СУБД является InterBase SQL Server фирмы Borland. Схематично архитектура клиент-сервер InterBase в ее типичной конфигурации изображена на рисунке 2.

Компания Borland выпустила версию 6.0 OpenSource в июле 2000 года. В этот момент код Interbase был скопирован, и помещен там же, на sourceforge.net, но под названием Firebird.

Собственно, Borland как владелец исходных текстов, не публикует собственных изменений, тем более для платных версий. Выпуск платных (сертифицированных) версий Interbase был возобновлен в марте 2001 года, и схема оплаты лицензий, а также контроль лицензий на сервере, остались теми же, что и в Interbase 5.x.

Развитие Interbase и Firebird пошло разными путями. В основном в Firebird в течение почти года занимались исправлением ошибок, только после этого начав вводить новую функциональность.

Рис 2. Архитектура клиент—сервер InterBase

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

Функциональность Interbase 6.5 и Firebird практически одинакова, за исключением двух новшеств, введенных в Interbase 6.5 - специальной безопасности метаданных и возможности прерывать долго выполняющиеся запросы. Кроме того, платные версии Interbase являются сертифицированными, т.е. прошедшими тестирование.

В настоящее время последние версии InterBase 7 и FireBird 2 уже имеют существенные отличия, которые не позволяют производить миграцию базы. Декларируется, что семерка совместима только с InterBase 6.5, и рекомендуется проводить миграцию только через backup/restore.

Interbase полностью совместим со стандартом ANSI SQL-92, а так же имеет собственное расширение SQL для хранимых процедур и триггеров. В сравнении со многими другими СУБД, InterBase предоставляет очень эффективный механизм триггеров: каждая таблица может иметь большое количество триггеров, которые выполняются автоматически при вставке, изменении или удалении каждой отдельной записи, до или после этих событий. Многие функции существующих СУБД были впервые реализованы в Interbase – это, в частности, обновляемые представления, события, многомерные массивы и BLOB-поля. Более того, некоторые механизмы, такие, например, как двухфазное подтверждение транзакций, до сих пор остаются уникальными, представленными только в Interbase.

Подключение к базе может осуществляться как по сетевым протоколам (TCP/IP, NetBEUI, IPX/SPX), так и локально.

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

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

Немаловажной особенностью сервера InterBase является возможность расширения стандартного набора SQL-функций при помощи пользовательских библиотек – User Defined Functions, а также механизмы обработки BLOB-полей на сервере с помощью BLOB-фильтров.