Firebird — реляционная СУБД¶
Firebird — это реляционная система управления базами данных (СУБД), разрабатываемая как свободное и кроссплатформенное программное обеспечение с открытым исходным кодом. Система поддерживает стандарт SQL, работает на Windows, Linux, macOS и других Unix-подобных ОС и распространяется под лицензией Initial Developer's Public License (IDPL), основанной на Mozilla Public License. Firebird является прямым преемником InterBase 6.0, исходный код которой был открыт корпорацией Borland в 2000 году.
¶История
¶Происхождение из InterBase
История Firebird начинается с СУБД InterBase, разработанной компанией Borland в середине 1980-х годов. InterBase была одной из первых реляционных СУБД, ориентированных на встраивание в приложения. В июле 2000 года Borland открыла исходный код InterBase 6.0 под Mozilla Public License, что позволило сообществу разработчиков создать независимый проект — Firebird. Решение о release source code было принято на фоне финансовых трудностей компании и попытки привлечь внимание к продукту.
¶Развитие проекта
Сообщество разработчиков Firebird организовалось вокруг сайта firebirdsql.org. Первые версии проекта (1.0, 2002) в основном представляли собой очищенный и стабилизированный код InterBase 6.0. Значительный рывок произошёл с выходом версии 2.0 (2006), добавившей новые SQL-функции, улучшенную многопоточность и архитектурные улучшения. Версия 2.5 (2010) принесла поддержку Unicode в системных таблицах, улучшенные триггеры и утилиты. Версия 3.0 (2016) стала крупным обновлением: появились поддержка масштабирования на несколько ядер процессора (на базе архитектуры SuperClassic), расширенные возможности шифрования, улучшенная работа с JSON и новые функции языка запросов. Версия 4.0 (2021) добавила поддержку распределённых вычислений, улучшенную работу с большими базами данных и новые типы данных. Версия 5.0 вышла в 2023 году.
¶Устройство и особенности
¶Архитектура
Firebird использует клиент-серверную архитектуру, но также поддерживает режим встраивания (embedded), когда серверная часть компилируется в приложение и работает в его адресном пространстве. Существует три основных варианта сервера:
- SuperServer — однопоточный сервер с единой точкой доступа к базе данных, оптимизированный для работы через сеть;
- Classic — многопоточный сервер, где на каждое клиентское подключение выделяется отдельный процесс операционной системы;
- SuperClassic — гибридный вариант, появившийся в версии 3.0, сочетающий многопоточность с общей памятью.
¶Формат базы данных
Файл базы данных Firebird имеет расширение .fdb (ранее .gdb) и представляет собой самодостаточную структуру, содержащую таблицы, индексы, триггеры, хранимые процедуры, журналы и словарь системы. Размер файлов может достигать сотен гигабайт. Поддерживается механизм репликации, начиная с версии 3.0.
¶SQL и расширения
Firebird поддерживает стандарт SQL-92 с элементами SQL:1999 и SQL:2003. Особенности включают:
- собственный язык описания запросов (PSQL) для хранимых процедур и триггеров;
- генераторы (sequences) для создания автоинкрементных значений;
- мониторинг через таблицы MON$ (мониторинговые таблицы);
- поддержку Unicode через наборы символов UTF8;
- расширения для работы с JSON, начиная с версии 4.0.
¶Лицензия
Проект использует IDPL с дополнительным разрешением на двойное лицензирование (IDPL + MPL), что позволяет использовать Firebird в коммерческих и проприетарных продуктах без необходимости раскрытия исходного кода собственных приложений. Это отличает Firebird от многих других свободных СУБД и делает его привлекательным для коммерческой разработки ПО.
¶Применение
Firebird широко используется в России и странах СНГ, где сложилась устойчивая экосистема разработки на этой платформе. Система применяется в:
- бухгалтерских и учётных системах (в частности, в ряде конфигураций, работающих на платформе «1С:Предприятие» ранних версий);
- информационных системах государственных и муниципальных учреждений;
- банковских и финансовых приложениях;
- системах учёта на предприятиях малого и среднего бизнеса.
Firebird является одним из наиболее распространённых СУБД в российском сегменте корпоративной разработки. Существует множество российских книг, курсов и сообществ, посвящённых этой системе.
¶Сообщество и поддержка
Основной портал проекта — firebirdsql.org, где публикуются релизы, документация и обсуждения. Активное русскоязычное сообщество существует на форуме firebirdnews.org и в российских IT-сообществах. Разработку ведёт группа основных разработчиков (core developers) при участии добровольцев. Коммерческую поддержку предоставляют компании, в том числе российские интеграторы и консультанты.
¶Критика
К числу недостатков Firebird относят относительно медленное развитие по сравнению с крупными коммерческими СУБД (Oracle, Microsoft SQL Server), ограниченный выбор инструментов администрирования и меньшее распространение на международном рынке по сравнению с PostgreSQL и MySQL. Тем не менее проект сохраняет активность и регулярно выпускает обновления.
Источники:
- Документация проекта Firebird (firebirdsql.org)
- «The Firebird Book: A Reference for Database Developers» — Helen Borrie
- «Using Firebird» — Helen Borrie
- Релизы и release notes проекта Firebird (github.com/FirebirdSQL/firebird)
