7. Open Source – firebirdsql.org Исходный код на sourceforge.net Группа разработчиков Firebird Foundation финансирование грантов готовые дистрибутивы Администраторы Поступления от спонсоров и членов FF
8.
9.
10.
11. Firebird Roadmap 2008 Q1 v2.1 RC and Final v2.0.4 v2.5 Alpha Q2 v2.1.1 v2.5 Beta Q3 v1.5.6 v2.0.5 v2.5 RC Q4 v2.1.2 v2.5 Final v3.0 Alpha
12.
Notes de l'éditeur
InterBase как версионная РСУБД существует на рынке коммерческих СУБД уже более 20 лет. Firebird является веткой кода, развивающейся самостоятельно с 2001 года.
Использование Firebird как сервера, поддерживающего многоверсионность, обусловило легкость его применения в самом широком спектре задач. На самом деле даже при случайном выборе названия какой-либо известной фирмы, можно на 90% утверждать, что для какой-либо задачи в этой фирме используется InterBase или Firebird (часто бывает, что в разных подразделениях используется и тот и другой сервер). Это большая часть сотовых операторов, многие банки, промышленные предприятия. На www.ibase.ru есть каталог подобного ПО, представляющий лишь малую часть программного обеспечения, использующего Firebird .
Легкость использования API и наличие большого количества разнообразных компонент прямого доступа дают возможность разработчикам быстро создавать инструментарий, как общего назначения так и специфический.
Развитие проекта в OpenSource зависит от взаимодействия между пользователями и разработчиками. Если разработчики дорабатывают и улучшают проект самостоятельно, то как правило, такой проект обречен на "полумертвое" существование, из-за отсутствия качественной обратной связи с пользователями, и невозможностью качественного развития проекта в "свободное время". Тем более, это имеет важное значение для сервера баз данных, который сам по себе является сложным продуктом. Для обеспечения стабильного и непрерывного развития Firebird 20 ноября 2002 года была создана некоммерческая организация Firebird Foundation, которая принимает спонсорские и членские взносы, и направляет их на выполнение грантов или заказов (специальных задач по развитию той или иной функциональности Firebird) и обслуживание затрат проекта (тестирование, администрирование, поддержка сайтов и т.п.). Вместе с финансированием существует группа администраторов, или "архитекторов" проекта, которые, обеспечивая тесную связь с пользователями Firebird определяют приоритетные направления развития (например, представляют в FF запрос на грант по определенной функциональности). Из финансируемых областей можно упомянуть оптимизатор запросов, инкрементальный бэкап, odbc- драйвер, jdbc- драйвер, тестирование, сборка дистрибутивов и многое другое. Независимо от источника финансирования оплаченная разработка обязательно становится доступной всем пользователям Firebird. Такая организация, в том числе обеспечивает уверенность пользователей в стабильности развития проекта. Лицензия на код Firebird не ограничивает его коммерческое использование никаким образом. Единственное требование – при модификации оригинального кода и распространении основанных на таком коде версий сервера – предоставлять пользователям и проекту Firebird эти изменения кода.
перечислены наиболее существенные новшества Firebird 2.1. Остальное – более 50-ти новых встроенных функций, оптимизация сетевого протокола, расширенная поддержка Unicode, и многое другое.
Версия 2.1 была чисто эволюционной. В ней добавили много функций. Но ничего глобального там не решено. Потому и номер минорный относительно 2.0. Версия 2.5 устанавливает новую технологическую платформу в плане многопоточности (как в свое время 1.5 стала платформой в плане перехода на С++). Большинство изменений совсем не очевидны при взгляде снаружи. Попробую их перечислить: - все билды сервера теперь изначально многопоточны. Включая posix-классик, который раньше был врожденно однопоточным. Это делает возможным, например, такие вещи, как закрытие коннекта сервером в случае обрыва связи с клиентом. Раньше это работало только на SuperServer . Так же в 2.5 клиентская библиотека стала полностью потокобезопасной. Сервисы классик-сервер теперь выполняет в отдельных потоках, работает это быстрее. - сильно переработан менеджер блокировок. На posix он больше не требует редиректа сигналов через fb_lock_mgr, в 2.5 его больше нет. Также снято ограничение на кол-во семафоров и убрана соответствующая часть параметров конфигурации. - синхронизация сервера единым мьютексом канула в лету. Сейчас каждая подсистема сервера синхронизируется самостоятельно, на низком уровне. В ядре пока все еще не так замечательно, т.к. синхронизация в SuperServer пока сделана на уровне БД, следовательно разные соединения по-прежнему будут ставиться в очередь, но это все равно лучше, чем раньше, т.к. коннекты к разным базам будут абсолютно параллельно работать на SMP-системах. - введен новый режим работы, т.н. супер-классик: по сути это классик с потоками вместо процессов. За счет более эффективного менеджера блокировок (использующего преимущества работы в одном адресном пространстве) он выигрывает в нагрузочных тестах по сравнению со старым классиком порядка 15-20%. Кроме того, он поддерживает пул потоков, т.е. менее требователен к ресурсам. Напоследок, он лучше масштабируется (у обычного классика есть проблемы с числом коннектов более 600-800). По сути, 2.5 это намного более "длинный" шаг вперед к обещанным в 3.0 SMP-чудесам, чем все предыдущие версии вместе взятые. Именно поэтому она, как и 1.5 в свое время, является довольно революционной. Дополнительных расширений в ней будет немного, отмечу самые заметные: - запросы к внешним БД - автономные транзакции (уровня процедуры/триггера/PSQL-блока) - трассировка/аудит всей активности - асинхронное отключение коннектов через MON$-таблицы - регулярные выражения в предикатах - ALTER VIEW Разработка 3.0 на базе 2.5 начнется ориентировочно в мае, основная цель -- распараллеливаемая многопоточность с общим кешем.