Эки жарым жылдык иштеп чыгуудан кийин, реляциялык DBMS болгон Firebird 5.0 чыгарылды. Firebird 2000-жылы Borland тарабынан ачык булактуу түрдө чыгарылган InterBase 6.0 DBMS кодун иштеп чыгууну улантууда. Firebird акысыз MPL лицензиясы боюнча таратылат жана триггерлер, сакталган процедуралар жана репликация сыяктуу функцияларды камтыган ANSI SQL стандарттарын колдойт. Экилик түзүлүштөр төмөнкүлөр үчүн жеткиликтүү: Linux, Windows, macOS и Android.
Негизги инновациялар:
- Көп жиптүү режимде операцияларды аткаруу мүмкүнчүлүгү ишке ашырылган. Бир нече жиптерге параллелдөө индекстерди түзүүдө, таштандыларды чогултууда (автоматтык жана кол менен тазалоо операциялары), резервдик көчүрмөлөрдү түзүүдө жана алардан калыбына келтирүүдө колдонулат. gfix -sweep -параллель 4 dbname gbak -b -par 4 -колдонуучунун аты -паролду өткөрүү dbname камдык аты
- Индекс түзүүдө көрсөтүлгөн шарттарга жооп берген тандалган жазууларды гана камтыган жарым-жартылай индекстерге колдоо кошулду. COL < 1 Т1 (COL) БОЮНЧА IT100_COL индексин түзүңүз;
- SELECT WITH LOCK, UPDATE жана DELETE операторлору "SKIP LOCKED" синтаксисин ишке ашырат, ал сизге суроо-талап жөнөтүлүп жаткан учурда кулпусу бар жазууларды алып салууга мүмкүндүк берет (мисалы, кулпунун бошотулушун күтпөө үчүн башка транзакция менен кесилишкенде).
- Маалымат базасын резервдик көчүрмөнү түзбөстөн жана калыбына келтирбестен, сактагычтын учурдагы орто версиясына (ODS - On-Disk-Structure) тез арада жаңыртуу мүмкүнчүлүгү кошулду. Мисалы, сиз азыр Firebird 4.0 (ODS 13.0) форматындагы маалымат базасын Firebird 5.0 (ODS 13.1) форматына тез арада алмаштыра аласыз.
- Автоматтык түрдө сакталган компиляцияланган SQL билдирүүлөрүнүн кэши ишке киргизилди (эскирген жазуулар керек болсо тазаланат). Кэш өлчөмү firebird.conf ичиндеги MaxStatementCacheSize параметри аркылуу коюлат.
- SQL жана PSQL профилин түзүү үчүн интерфейс кошулду, бул ар бир суроонун аткарылуу убактысын баалоого, сурамдардын саны боюнча статистиканы чогултууга жана аткаруу көйгөйлөрүн аныктоого мүмкүндүк берет.
- Булак жазуусу максаттуу топтомдогу эч бир жазууга дал келбеген учурда күйүүчү "БУЛАГЫНА ДА АЛБАГАНДА" шарттуу блогу үчүн MERGE туюнтмасына колдоо кошулду. КАРДАРЛАРГА БИРИКТИРҮҮ c new_customers nc ON (c.id = nc.id) КОЛДОНУУСУ ДААЛ БОЛГОНДО, ЖАПКАНЫН атын ЖАҢЫРТЫРЫҢЫЗ = nc.name БУЛАК ДА АЛБАСА, ЖОК КЫЛЫҢЫЗ
- Эгерде берилген DML туюнтмасы бир нече сапты камтыса, эми бир нече сапты RETURNING туюнтмасын колдонуу менен кайтарууга болот (мурда мындай учурларда ката "синглтон тандоодогу бир нече саптар" көрсөтүлчү).
- Жаңы орнотулган функциялар кошулду: UNICODE_CHAR берилген кодго туура келген юникод белгисин кайтаруу үчүн жана UNICODE_VAL берилген символдун кодун кайтаруу үчүн. QUARTER параметри чейрек санын аныктоо үчүн EXTRACT, FIRST_DAY жана LAST_DAY функцияларына кошулду.
- PSQL модулдары үчүн BLOB операцияларынын тандоосу менен жаңы RDB$BLOB_UTIL тутум пакети кошулду.
- Жазууну кысуу алгоритми кайталануучу маалымат ырааттуулугун эффективдүү топтоо үчүн өзгөрмө узундуктагы эсептегичти колдонуу үчүн жакшыртылды. Оптималдаштыруу UTF-8 коддолгон маалыматтары менен толук эмес толтурулган узун VARCHAR талааларынын кысуу катышын бир топ жакшыртты.
- Тармак аркылуу маалымат базасына алыстан кирүүдө эки багыттуу курсорлор (жылдыргыч) менен иштөө мүмкүнчүлүгү кошулду.
- Блоб көчүрүүнүн иштеши оптималдаштырылды.
- SQL стандартында сүрөттөлгөн сапты аныктоо синтаксиси үчүн толук колдоо кошулду. Мисалы, саптарды эми комментарийлер же боштуктар менен үзүүгө болот: RDB$DATABASEден 'ab' /* comment */ 'cd'ди тандаңыз; RDB$DATABASEден 'ab' 'cd' тандоо;
Source: opennet.ru
