!Ъ: http://www.firebirdsql.org/en/firebird-3-0-0/
Ъ:
После почти двенадцати лет разработки представлен релиз СУБД Firebird 3.0. Изначально релиз Firebird 3.0 планировалось выпустить ещё в 2007 году, но из-за нехватки ресурсов разработка затянулась. Ключевыми задачами при разработке Firebird 3.0 были унификация архитектуры сервера и улучшение работы на многоядерных системах. Среди важных улучшений также отмечены новые возможности SQL, поддержка шифрования, улучшение управления потоками движка СУБД, реализация совместного кэша, различные оптимизации производительности и масштабируемости.
Из особенностей Firebird 3.0 можно выделить:
- Переработана архитектура работы сервера, которая оптимизирована для использования на многоядерных системах. Обеспечена возможность распараллеливания нитей обработки запросов и использования общего кэша между ними. Ядро Firebird теперь унифицировано в форме библиотеки, которая может использоваться как для обеспечения работы обрабатывающего запросы по сети сервера, так и для встраивания в приложения.
- Новый объектно-ориентированный C++ API для разработки дополнений;
- Новая гибкая система конфигурирования, позволяющая привязывать настройки к разным БД;
- Дополнительные модели аутентификации;
- Внешние хранимые процедуры, триггеры и функции (на Java, C++ и других языках);
- Возможность написания плагинов шифрования данных в БД;
- Возможность шифрования трафика;
- Возможность определения пользовательских PSQL-функций (по аналогии с хранимыми процедурами)
- Возможность определения DDL-триггеров, срабатывающих при создании, изменении или удалении объектов БД. Указанную возможность можно использовать для ограничения возможностей пользователей по модификации метаданных;
- Возможность определения субпроцедур и субфункций;
- Реализация полноценного логического типа BOOLEAN;
- Добавлен тип IDENTITY, позволяющий сгенерировать уникальный идентификатор;
- Средства для замены штатного плагина трассировки;
- Возможность указания ссылки на курсор, как на переменную типа запись;
- Поддержка смена роли на лету;
- Отображение объектов безопасности ОС на объекты безопасности Firebird;
- Поддержка создания пакетов (SQL Packages), позволяющих управлять группой процедур и функций как одним целым;
- Запрет модификации большинства системных таблиц;
- Привилегии на изменения метаданных (DDL);
- Соответствующая стандарту SQL-2008 реализация оператора задания привилегий USAGE (GRANT USAGE/REVOKE USAGE), позволяющая защитить данные, отличные от таблиц, представлений, процедур и функций (например, домены,исключения, генераторы, последовательности, наборы символов и правила сортировки);
- Обеспечение соответствия оператора MERGE требованиям стандарта SQL-2008: поддержка расширения DELETE, возможность задания нескольких выражений WHEN MATCHED и NOT MATCHED, выражение RETURNING ... INTO.