Firebird (Interbase) 2.5.0

Firebird (Interbase) 2.5.0

Firebird (FirebirdSQL) — компактная, кроссплатформенная, свободная система управления базами данных (СУБД), работающая на GNU/Linux, Microsoft Windows и разнообразных Unix платформах.

Скачать Firebird для Windows, Linux: по ftp, по http

Версии 1.5.5, 2.0.4, 2.1.1, 2.1.2, 2.1.3, 2.5.0

Firebird (FirebirdSQL) — компактная, кроссплатформенная, свободная система управления базами данных (СУБД), работающая на GNU/Linux, Microsoft Windows и разнообразных Unix платформах.

В качестве преимуществ Firebird можно отметить многоверсионную архитектуру, обеспечивающую параллельную обработку оперативных и аналитических запросов (это возможно потому, что читающие пользователи не блокируют пишущих), компактность (дистрибутив 5Mb), высокую эффективность и мощную языковую поддержку для хранимых процедур и триггеров. Firebird используется в различных промышленных системах с 2001 г. Это коммерчески независимый проект C и C++ программистов, технических советников и разработчиков мультиплатформенных систем управления базами данных, основанный на исходном тексте, выпущенном корпорацией Borland 25 июля 2000 года в виде свободной версии Interbase 6.0.

Среди недостатков числятся отсутствие кеша результатов запросов, индексов fulltext для полнотекстового поиска.

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

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

  • Соответствие требованиям A.C.I.D: Firebird сделан специально, чтобы удовлетворять требованиям «атомарности, целостности, изоляции и надежности» транзакций («Atomicity, Consistency, Isolation and Durability») .
  • Версионная архитектура: Основная особенность Firebird — версионная архитектура, позволяющая серверу обрабатывать различные версии одной и той же записи в любое время таким образом, что каждая транзакция видит свою версию данных, не мешая соседним («читающие транзакции не блокируют пишущие, а пишущие не блокируют читающих»). Это позволяет использовать одновременно OLTP и OLAP запросы.
  • Хранимые процедуры: Используя язык PSQL(процедурный SQL) Firebird, возможно создавать сложные хранимые процедуры для обработки данных полностью на стороне сервера. Для генерации отчетов особенно удобны хранимые процедуры с возможностью выборки, возвращающие данные в виде набора записей. Такие процедуры можно использовать в запросах точно так же как и обычные таблицы.
  • События: Хранимые процедуры и триггеры могут генерировать события, на которые может подписаться клиент, открывая специально настроенный TCP/IP порт.
  • Генераторы: Идея генераторов (последовательностей) делает возможной простую реализацию автоинкрементных полей, и не только их. Генераторы являются 64‐битными хранимыми в базе данных счётчиками, работающими независимо от транзакций. Они могут быть использованы для различных целей, таких как генерация первичных ключей, управление длительными запросами в соседних транзакциях, и т. д.
  • Базы данных только для чтения: позволяют распространять базы данных, к примеру, на CD-ROM. Особенно упрощает распространение данных их использование в комбинации с встраиваемой версией сервера Firebird.
  • Полный контроль за транзакциями: Одно клиентское приложение может выполнять множество одновременных транзакций. В разных транзакциях могут быть использованы разные уровни изоляции. Протокол двухфазного подтверждения транзакций обеспечивает гарантированную устойчивость при работе с несколькими базами данных. Так же доступны оптимистическое блокирование данных и точки сохранения транзакций.
  • Резервное копирование на лету: Для резервного копирования нет надобности останавливать сервер. Процесс резервного копирования сохраняет состояние базы данных на момент своего старта, не мешая при этом работе с базой. Кроме того, существует возможность производить инкрементальное резервное копирование БД.
  • Триггеры: Для каждой таблицы возможно назначение нескольких триггеров, срабатывающих до или после вставки, обновления или удаления записей. Для триггеров используется язык PSQL, позволяя вносить начальные значения, проверять целостность данных, вызывать исключения, и т. д. В Firebird 1.5 появились «универсальные» триггеры, позволяющие в одном триггере обрабатывать вставки, обновления и удаления записей таблицы.
  • Внешние функции: библиотеки с UDF(User Defined Function) могут быть написаны на любом языке и легко подключены к серверу в виде DLL/SO, позволяя расширять возможности сервера «изнутри».
  • Декларативное описание ссылочной целостности: Обеспечивает непротиворечивость и целостность многоуровневых отношений «master-detail» между таблицами
  • Наборы символов: Firebird поддерживает множество международных наборов символов (включая Unicode) с множеством вариантов сортировки.
  • Соответствие стандарту SQL

    Firebird полностью поддерживает SQL 92 Entry Level 1 и реализует большую часть стандарта SQL-99 c некоторыми очень полезными дополнениями. Это включает выражения DML/DDL, синтаксис объединений FULL/LEFT/RIGHT [OUTER] JOIN, выражения UNION, DISTINCT, подзапросы (IN, EXISTS), встроенные функции (AVG, SUM, MIN, MAX, COALESCE, CASE, ..), ограничения целостности (PRIMARY KEY, UNIQUE, FOREIGN KEY), и все общие типы данных SQL.

    Firebird также реализует ограничения проверки (check constraints) на уровне доменов и полей, отображения (views), исключения, роли и управление правами доступа.

    Основные изменения:

    • многопоточная обработка запросов, использующая преимущества симметричной многопроцессорной обработки (SMP), которая значительно повышает производительность на многопроцессорных и многоядерных системах;
    • встроенные библиотеки libfbembed.so (POSIX) и fbembed.dll (Windows) теперь поддерживают многопоточные и поточно-ориентированные вызовы.

    Также добавлены новые возможности и улучшения:

    • система аудита и трассировки запросов через Services API, позволяющая отслеживать и анализировать изменения БД в режиме реального времени;
    • отслеживание пользователем своих соединений;
    • более подробная информация в таблицах мониторинга;
    • управление учётными записями с помощью SQL-выражения "CREATE/ALTER/DROP USER";
    • дополнительное предоставление/аннулирование прав пользователю, отличного от текущего (по умолчанию);
    • встроенные функции для преобразования строк UUID CHAR (16) OCTETS в RFC4122-совместимый формат и наоборот;
    • результаты запросов, согласно стандарту SQL-2003 — возврат 5-символьного кода завершения операции (SQLSTATE);
    • и другие.

    Википедия, свободная энциклопедия.

    Оф. сайт firebirdsql.org

    интересно

    интересно