Firebird
Inne znaczenia
W kwietniu 2003 r. Fundacja Mozilla zdecydowała się zmienić nazwę swojej przeglądarki Internetu z Phoenix na Firebird. Ta decyzja wzbudziła zaniepokojenie wśród twórców serwera Firebird, gdyż użytkowników mogłaby wprowadzać w błąd taka sama nazwa używana zarówno przez serwer SQL, jak i przez przeglądarkę Internetu. Spór kontynuowano do czasu, aż twórcy przeglądarki Mozilla wydali oświadczenie, w którym sprecyzowali, że ich program nazywa się „Mozilla Firebird”, a nie „Firebird”. Oświadczyli również, że Mozilla Firebird było nazwą kodu bazowego przeglądarki. 9 lutego 2004 r. Mozilla zmieniła nazwę swojej przeglądarki Internetu na Mozilla Firefox, kończąc tym całe zamieszanie.
Historia
Firebird 1.0 był praktycznie taki sam jak edycja open source serwera InterBase 6.0, z poprawionymi błędami oraz zaimplementowanymi drobnymi usprawnieniami. Rozwój kodu Firebird 2 rozpoczął się od przekodowania Firebird 1.0, napisanego w języku C, na C++, połączonego z dogłębnym czyszczeniem kodu. Pierwszą udostępnioną wersją serwera, zbudowaną na bazie kodu Firebird 2, był Firebird 1.5. Był to znaczący krok dla twórców tego projektu.
- Firebird 2.0 został udostępniony w roku 2006. Ostatnia stabilna wersja ma numer 2.0.7. Została ona udostępniona w kwietniu 2012 r. (Koniec serii)
- Firebird 2.1 został udostępniony 18 kwietnia 2008 r. Ostatnia stabilna wersja ma numer 2.1.7. Została ona udostępniona w grudniu 2014 r. (Koniec serii)
- Firebird 2.5 został udostępniony 4 października 2010 r. Zawiera między innymi obsługę wyrażeń regularnych, możliwość pobierania danych z innych baz danych.
- Firebird 3.0.1 został wydany w 27 września 2016 roku. Głównym celem twórców Firebirda 3 było ujednolicenie architektury serwera i zwiększenie wsparcie dla wieloprocesorowości na głównych platformach sprzętowych, co ma skutkować poprawą pracy procesów silnika bazy danych i zwiększyć szybkość udostępniania danych oraz poprawienie zabezpieczeń. Wprowadzono wiele popularnych funkcji do języka SQL.
Z okazji dwudziestej rocznicy linii produktów InterBase/Firebird, oryginalny twórca Jim Starkey wspominał:
- „5 sierpnia 2004 r. przypada dwudziesta rocznica tego, czym jest obecnie Firebird. Zakończyłem moją pracę w DEC w sierpniu, wziąłem trzydniowy urlop i 4 września 1984 r. rozpoczęła się moja nowa kariera przedsiębiorcy softwarowego. O ile dobrze pamiętam, pierwszymi dwoma plikami były cpre.c oraz cpre.h (preprocesor C), później zmienione na gpre.c i gpre.h. Pliki te zostały utworzone na pożyczonym DEC Pro/350, osobistym komputerze PDP-11, praktycznie nigdzie nie wykorzystywanym, działającym pod kontrolą systemu operacyjnego Xenix. Gpre był moim pierwszym programem napisanym w C, XENIX był moim pierwszym kontaktem z systemem Unix, a Pro/350 był zdecydowanie ostatnim moim kontaktem (ale nie tęsknię za tym) z komputerami serii PDP-11.”
W roku 2010 Firebird ukończył 10 lat samodzielnego rozwoju. W związku z tym powstała kampania MindTheBird!, mająca na celu popularyzację serwera.
Firebird 3.0
W tej wersji między innymi umożliwiono korzystanie z wyrażeń regularnych oraz możliwość pobierania danych ze zdalnych baz danych.
Najważniejsze nowości w wersji 3.0:
- wsparcie dla analitycznej funkcji WINDOW znanej z komercyjnych serwerów
- możliwość pisania pluginów: szyfrowania, uwierzytelniania, śledzenia (trace)
- w pełni skalowalna architektura SMP dla współczesnych procesorów
- pełny wgląd w plan zapytania „Explained plan”
- zwiększone bezpieczeństwo poprzez szyfrowanie transmisji i możliwość nadawania uprawnień do obiektów struktury bazy danych (DDL permissions)
- zaimplementowany algorytm HASH JOIN
- funkcje skalarne PSQL
- pakiety
- dwukierunkowe kursory
- możliwość dodawania parametrów do komunikatów błędów
- zwiększony limit rozmiaru zapytania do 10 MB
- wyrażenia regularne w funkcji systemowej SUBSTRING
- typ BOOLEAN
- pełne wsparcie dla składni MERGE według specyfikacji SQL2008
- możliwość definiowania atrybutów użytkownika
- 64-bitowy identyfikator transakcji
Właściwości
- Pełna obsługa procedur składowanych oraz wyzwalaczy
- Transakcje zgodne z ACID
- Integralność referencji
- Obsługa wielu wersji tego samego rekordu (ang. Multi Generational Architecture; MVCC)
- Wymaga niewielkiej pojemności dysku do przechowywania plików kodu wykonywalnego serwera baz danych (ang. footprint)
- PSQL – wewnętrzny język serwera, posiadający wiele możliwości i funkcje do obsługi procedur wbudowanych oraz wyzwalaczy
- Obsługa funkcji zdefiniowanych przez użytkownika – dołączanych w postaci bibliotek *.DLL lub *.so (UDFs)
- System zarządzania relacyjnymi bazami danych nie wymaga specjalistycznej wiedzy od użytkownika
- W domyślnej instalacji nie jest wymagana dodatkowa konfiguracja – wystarczy zainstalować i od razu można używać
- Jest wiele miejsc, w których użytkownik może otrzymać fachowe i darmowe wsparcie techniczne
- Specjalne wydanie wersji wbudowanej (ang. embedded version), w postaci jednego dołączanego pliku, umożliwia tworzenie aplikacji na nośnikach CD/DVD itp., aplikacji jednostanowiskowych, a także wersji prezentacyjnych programów dla użytkowników w celach testowych
- Wiele narzędzi (również graficznych) do zarządzania, replikacji danych itd.
- Format zapisu danych umożliwia szybkie przywrócenie bazy z kopii bezpieczeństwa – nie są wymagane przy tym logi transakcji
- Wiele możliwości dostępu do serwera baz danych: native/API, sterowniki Firedac, dbExpress, ODBC, OLEDB, dostawca danych platformy.Net, sterownik JDBC 4, moduły Python, PHP, Perl itd.
- Obsługa wszystkich popularnych systemów operacyjnych – Windows, Linux, MacOS i innych.
- Kopie przyrostowe
- Wersje 64-bitowe
- Pełna implementacja kursorów w PSQL
- Wyrażenia regularne
- Indeksy tworzone na podstawie wyrażeń (expression index)
- Wyrażenia tabelaryczne CTE (Common Table Expression) i rekursyjne CTE
Nagrody i wyróżnienia
- 2009. Społeczność portalu SourceForge wyróżniła Firebird jako najlepszy produkt w kategorii Najlepszy projekt dla przedsiębiorstwa (Best Project for Enterprise). Firebird był również jednym z finalistów w kategoriach Najlepszy projekt (Best Project) oraz Najlepszy projekt dla administracji rządowej (Best Project for Goverment).
- 2007. Społeczność portalu SourceForge wyróżniła Firebird w kategoriach Najlepszy projekt dla przedsiębiorstwa (Best Project for Enterprise) oraz Najlepsze wsparcie użytkowników (Best user support).
Dostępna literatura
- „The Firebird Book: A Reference for Database Developers” – Copyright © 2004 by Helen Borrie and IBPhoenix (Wydawnictwo Apress)
- „The Firebird 2 Suplement for the Firebird Book” – Copyright © 2007 by Helen Borrie and IBPhoenix (Wydawnictwo IBPhoenix Publications), dostępna wyłącznie w formie elektronicznej książki
Zobacz też
- Fyracle – modyfikacja Firebird zgodna z Oracle