Firebird (databázový server) - Firebird (database server)
Tento článek je hlavní část není adekvátně shrnout klíčové body jeho obsahu. Zvažte prosím rozšíření potenciálního zákazníka na poskytnout přístupný přehled všech důležitých aspektů článku. (Červen 2020) |
tento článek příliš spoléhá na Reference na primární zdroje.Prosinec 2012) (Zjistěte, jak a kdy odstranit tuto zprávu šablony) ( |
Vývojáři | Projekt Firebird |
---|---|
První vydání | 2000 |
Stabilní uvolnění | |
Náhled verze | 4.0 Beta 2 / 19. ledna 2020[2] |
Úložiště | |
Napsáno | C ++ |
Operační systém | Cross-platform |
Typ | RDBMS |
Licence | IPL, IDPL |
webová stránka | www |
Fénix je open-source SQL systém správy relačních databází že "běží dál Linux, Microsoft Windows, Operační Systém Mac a několik Unix platformy ".[3] Databáze rozeklaný z Borland open source vydání InterBase v roce 2000, ale od Firebirdu 1.5 byl kód do značné míry přepsán.[4]
Dějiny
Do týdne od InterBase Zdroj 6.0 vydává Borland dne 25. července 2000,[5][6] projekt Firebird byl vytvořen dne SourceForge.[7][8] Firebird 1.0 byl vydán pro Linux, Microsoft Windows a Windows Mac OS X dne 11. března 2002,[9] s porty do Solaris, FreeBSD 4, HP-UX během příštích dvou měsíců.[10]
Pracujte na přenesení základny kódů z C na C ++ začalo v roce 2000. 23. února 2004 byl vydán Firebird 1.5,[11] což bylo první stabilní vydání nové kódové základny. Verze 1.5 byla vylepšena optimalizátor dotazů, SQL-92 podmíněné výrazy, SQL: 1999 uložené body a podpora pro explicitní zamykání.[12] Firebird 2.0 byl vydán 12. listopadu 2006,[13] přidání podpory pro 64-bit architektury, tabulky vnořené do FROM doložky a programovatelné zámek časové limity v blokování transakce.[14]
Předchozí stabilní vydání bylo verze 2.1.6, která přidala nové funkce včetně procedurální spouští, rekurzivní dotazy a podpora pro SQL: 2003 SPOJIT prohlášení.[15]
Firebird 2.5 představil nové funkce jako vylepšené multithreading, regulární výraz syntaxe a schopnost dotazovat se vzdálených databází.[16]
Nejnovější stabilní verzí je Firebird 3.0, vydaná 19. dubna 2016, zaměřená na výkon a zabezpečení. Hlavní re-architektura kódu umožnila celkovou podporu SMP stroje při použití verze SuperServer.[17]
Skrz Google Summer of Code V roce 2013 začaly práce na integraci Firebirdu jako náhrady za HSQLDB v LibreOffice.[18][19]
Konflikt názvů Mozilla Firefox
V dubnu 2003 se Organizace Mozilla oznámil přejmenování svého webový prohlížeč z Phoenix na Fénix po sporu o ochrannou známku s Phoenix Technologies.[20]
Toto rozhodnutí vyvolalo obavy v rámci databázového projektu Firebird kvůli předpokladu, že uživatelé a internetové vyhledávače by byli zmateni databází a webovým prohlížečem, kteří by oba používali název Firebird.[21][22] Vývojáři Mozilly vydali prohlášení,[23] objasnění, že jejich softwarový balíček se jmenoval „Mozilla Firebird“, nikoli „Firebird“.[24][25] V prohlášení se také uvádí, že název Mozilla Firebird byl a kódové označení projektu.
Spor byl vyřešen 9. února 2004, kdy Mozilla změnila název svého prohlížeče na Mozilla Firefox, čímž konflikt končí.[26][27][28]
Hlavní rysy
- Plná podpora pro uložené procedury a spouští[29]
- Úplný KYSELINA vyhovující transakce
- Referenční integrita
- Vícegenerační architektura (někdy nazývaná MVCC)[30]
- Podpora externích funkcí (UDF )
- Aktivita SQL může klientům odesílat události asynchronního oznámení
- Nástroje třetích stran, včetně nástrojů pro správu GUI a replikačních nástrojů
- Pečlivé zápisy - rychlé zotavení, žádné protokoly transakcí
- Mnoho přístupových metod: nativní / API, dbExpress / FireDAC[31] ovladače, ODBC, OLE DB, poskytovatel .NET, nativní ovladač JDBC typu 4, modul Python,[32] PHP, Perl
- Přírůstkové zálohy
- Plná implementace kurzoru v PSQL
Technologie ukládání a indexování
Vícegenerační architektura (MGA)
Firebird zdědil architekturu úložiště Interbase. Zajistit KYSELINA vlastnosti transakcí, databázový stroj uchovává různé verze každého záznamu změněné aktivními uživateli v databázi. Když jsou transakce potvrzeny, poslední verze každého změněného záznamu je označena jako definitivní. Pokud jsou transakce vráceny zpět, databázový stroj udržuje značku na původních verzích záznamů a ponechává je nedotčené.[33] Výsledkem je, že zápisy na disk Firebird jsou velmi omezené ve srovnání s databázemi, které používají tradiční architekturu protokolu transakcí.[34] Zápis transakcí nebrání čtení a naopak, protože každý vidí svou vlastní verzi databáze.[35] The kompromis spočívá v tom, že k vyčištění starých verzí záznamů a volného místa na disku je čas od času vyžadována nějaká údržba („zametání“).[36]
Vícegenerační architektura zajišťuje, že operace OLTP a DSS / OLAP lze spouštět současně bez zpoždění způsobených uzamykacími mechanismy nalezenými v jiných produktech.[37]
Rejstříky
Firebird umožňuje, aby se všechny indexy databáze chovaly jako vyladěné „seskupené indexy“ používané jinými architekturami. Kbelíky indexu Firebird nepodléhají dvoufázovému blokování a logické operace „a“ a „nebo“ lze provádět na přechodných bitmapách se zanedbatelnou cenou, což eliminuje potřebu optimalizátoru volit mezi alternativními indexy.[38]
Varianty
- Firebird SuperServer má jednoho démona / server pro všechna připojení klienta, vícevláknový se sdílenou mezipamětí
- Firebird SuperClassic má také jednoho démona / server pro všechna připojení klienta, s více podprocesy a samostatnými mezipaměti
- Firebird Classic používá inetd spustit jednu kopii serveru na připojení klienta, doporučeno pro systémy SMP, ale může dojít k problémům s upozorněním na události, pokud je přístup přes bránu firewall
- Firebird Embedded pro vytváření katalogů CD-ROM, pro jednoho uživatele nebo pro zkušební verze aplikací
Licencování
Databázový stroj Firebird a jeho moduly jsou vydávány pod open-source licence, Initial Developer's Public License (IDPL), varianta Veřejná licence Mozilla (MPL) verze 1.1. Nevyžaduje, aby vývojář otevíral produkty pomocí Firebirdu nebo dokonce vlastních derivátů vytvořených z jeho zdrojového kódu, ale pokud se vývojář rozhodne tak učinit, je třeba dodržet některé podmínky. IDPL umožňuje vývojářům vytvářet proprietární aplikace s uzavřeným zdrojem, které používají Firebird nebo jsou na něm založeny.[39]
Rozhraní API pro připojení
Nativní rozhraní Firebird Native API, Services API a vložený SQL
Nativní API Firebirdu používají přímo nebo nepřímo aplikace nebo middleware, které se připojují k databázi Firebirdu. Je implementován v klientské knihovně fbclient.dll v systémech Windows a v libfbclient.so v unixových systémech.[40]
Services API je speciální sada funkcí pro přístup a řízení úloh správy služeb, jako je správa uživatelů, zálohování / obnovení a shromažďování statistik.
Vestavěný SQL je technika, která zjednodušuje vývoj aplikací C / C ++ a COBOL Firebird pomocí a preprocesor nazývá se gpre, což umožňuje vkládání příkazů SQL přímo do zdrojového kódu hostitelského jazyka.[41]
Ocenění
- 2007. Cena SourceForge Community Choice Award: Nejlepší projekt pro podnik, Nejlepší uživatelská podpora.[42]
- 2009. SourceForge Community Choice Award: Nejlepší projekt pro podniky. Finalista v kategorii Nejlepší projekt a Nejlepší projekt pro vládu.[43]
Viz také
- Firebird Foundation
- Porovnání systémů správy relačních databází
- Seznam systémů správy relačních databází
- Multiversní řízení souběžnosti
- Soulad s SQL
Reference
- ^ „Je k dispozici dílčí vydání Firebird 3.0.7“. firebirdsql.org.
- ^ „Firebird: Jaybird 4.0.0-beta-2 k dispozici pro testování“. FirebirdSQL. Firebird Foundation. 19. ledna 2020. Citováno 19. ledna 2020.
- ^ „Firebird: Výkonný databázový systém SQL napříč platformami“. SourceForge. SourceForge Media, LLC. 25. dubna 2018. Citováno 2. května 2018.
- ^ „Poznámky k verzi Firebird 1.5.5“. Citováno 29. září 2009. Firebird 1.5.5 Obecné poznámky k přepsání z jazyka C do C ++
- ^ „Inprise / Borland představuje InterBase 6.0 nyní zdarma a otevřený zdroj pro Linux, Windows a Solaris“. 16. července 2000. Archivovány od originál dne 6. prosince 2004. Citováno 29. ledna 2009.
- ^ „Borland.com: Inprise / Borland představuje Interbase 6.0 nyní zdarma a otevřený zdroj pro Linux“. Linux dnes. Citováno 29. ledna 2009.
- ^ "Firebird History". Citováno 14. března 2014.
- ^ Paul Reeves. „Co se děje s InterBase“. Skupina uživatelů Borland. str. 2. Citováno 14. března 2014.
- ^ „Archiv zpráv komunity IBPhoenix“. 11. března 2000. Citováno 29. ledna 2009.[trvalý mrtvý odkaz ]
- ^ „Archiv zpráv komunity IBPhoenix“. 11. dubna 2000. Citováno 29. ledna 2009.[trvalý mrtvý odkaz ]
- ^ „Firebird Relational Database 1.5 Final Out“. Slashdot. 23. února 2004. Citováno 31. ledna 2009.
- ^ Helen Borrie (5. října 2009). „Poznámky k verzi Firebird 1.5.6“. Projekt Firebird. Citováno 10. června 2012.
- ^ Dmitrij Yemanov. „V Praze je spuštěno finální vydání Firebird 2.0“. Citováno 5. února 2009.
- ^ Helen Borrie (5. dubna 2012). „Poznámky k verzi Firebird 2.0.7“. Citováno 10. června 2012.
- ^ Helen Borrie (20. července 2014). „Poznámky k verzi Firebird 2.1“. Citováno 20. července 2014.
- ^ Helen Borrie (19. listopadu 2015). „Poznámky k verzi Firebird 2.5.5“. Citováno 19. listopadu 2015.
- ^ Gray, James (29. července 2016). „Relační databáze Firebird Project Firebird | Linux Journal“. www.linuxjournal.com. Linux Journal. Archivováno od původního dne 1. března 2020. Citováno 1. března 2020.
- ^ mariuz (14. února 2012). „Firebird Embedded a LibreOffice je zabijácká kombinace pro škálování z jedné souborové aplikace na přístup klient / server“. Firebirdnews.org. Citováno 8. července 2013.
- ^ ahunt (28. května 2013). „GSOC 2013: LibreOffice Firebird SQL Connector“. Citováno 8. července 2013.
- ^ Dotzler, Asa (14. dubna 2003). „Phoenix a Minotaur budou přejmenováni na Firebird a Thunderbird“. MozillaZine. MozillaZine. Citováno 29. ledna 2016.
- ^ Prohlížeč Mozilla se stává Firebirdem, IBPhoenix, archivovány z originál dne 23. dubna 2003, vyvoláno 29. ledna 2016
- ^ Bishop, Alex (21. dubna 2003). „Dotazován správce databáze Firebird Ann Harrison“. MozillaZine. MozillaZine. Citováno 29. ledna 2016.
- ^ „značka mozilly“. Organizace Mozilla. 25. dubna 2003. Archivovány od originál dne 26. dubna 2003. Citováno 31. ledna 2016.
- ^ Festa, Paul (7. května 2003). „Firebird od Mozilly dostane oříznutá křídla“. CNET. CBS Interactive. Citováno 29. ledna 2016.
- ^ Bishop, Alex (14 května 2003). „Christopher Blizzard z mozilla.org hovoří o konfliktu pojmenování Firebird“. MozillaZine. MozillaZine. Citováno 29. ledna 2016.
- ^ Paul Festa (9. února 2004). „Mozilla drží oheň při pojmenování boje“. CNET. CBS Interactive. Citováno 29. ledna 2016.
- ^ „Mozilla Firebird přejmenován na Firefox, verze 0.8 vydána“. MozillaZine. MozillaZine. 9. února 2004. Citováno 29. ledna 2016.
- ^ „Mozilla Firefox - značka - často kladené otázky“. mozilla.org. Mozilla Foundation. Citováno 29. ledna 2016.
- ^ „Poznejte Firebird za 2 minuty“.
- ^ Roman Rokytskyy. „Ne příliš technická diskuse o řízení více verzí souběžnosti“. Citováno 21. listopadu 2011.
- ^ „Connect to Firebird (FireDAC)“.FireDAC
- ^ https://pypi.python.org/pypi/fdb/
- ^ „Vícegenerační architektura (MGA) a verzování záznamů“. Software HK. Archivovány od originál dne 1. října 2011. Citováno 14. července 2011.
- ^ „Rozhovor s Jimem Starkeyem z InterBase World“. Marina Novikova, InterBase World. Citováno 14. července 2011.
- ^ „Co je to vícegenerační architektura (MGA)?“. Nejčastější dotazy k Firebirdu. Citováno 14. července 2011.
- ^ „Úklid databází a sběr odpadků“. Projekt Firebird. Citováno 14. července 2011.
- ^ „Co je to vícegenerační architektura (MGA)?“. Nejčastější dotazy k Firebirdu. Citováno 14. července 2011.
- ^ „Rozhovor s Jimem Starkeyem z InterBase World“. Marina Novikova, InterBase World. Citováno 14. července 2011.
- ^ „Firebird: Počáteční vývojářská veřejná licence verze 1.0“. Projekt Firebird. Citováno 13. července 2011.
- ^ „Klientská knihovna Firebird“. Projekt Firebird. Citováno 14. července 2011.
- ^ "Vývoj aplikací". Projekt Firebird. Citováno 14. července 2011.
- ^ „Vítězové ocenění SourceForge.net 2007 Community Choice Awards“. SourceForge.net. Citováno 13. července 2011.
- ^ „SourceForge.net: 2009 CCA: Vítězové“. SourceForge.net. Citováno 13. července 2011.
externí odkazy
- Firebird - webové stránky projektu
- Firebird - portál pro vývojáře
- Kompletace Firebird, grafy.
- Firebird dokumentace od IBProvider
- FirebirdFAQ
- FirebirdNovinky - Novinky o Firebirdu a souvisejících projektech
- Průvodce migrací do Firebirdu 3 - eBook
- Ovladač Firebird Ole Db (alternativa pro ODBC)