Firebird Gray Cardinal pe piata de baze de date, PC World, publicarea de "sisteme deschise"

Inregistrarea pentru conferinta

În plus față de liderii clare pe piața de baze de date, există soluții mai puțin evidente, dar nu mai puțin populare, cum ar fi PostgreSQL și Sybase ASA. Dar adevarata „cardinal gri“ poate fi numit, probabil, doar un singur - FireBird (tradus din limba engleză „Pasărea de Foc.“).

Mulți programatori sunt familiarizați cu abrevierea IB / FB. Deci, patru litere sunt notate la fel de mult ca două sisteme de management de baze de date - Interbase și FireBird. Ambele sisteme sunt nesolicitant la resurse, o platformă independentă, ușor de utilizat și relativ ușor de învățat. Foarte des instrumentele software client sprijini aceste două baze de date în același timp.

Până de curând, există o astfel de posibilitate pentru utilizatorii de baze de date MySQL, dar începând cu a șasea versiune a noului proprietar al produsului companiei Sun Microsystems închide accesul la codul sursă al modulelor individuale versiunea de bază de date corporative. Bine sau rău - toată lumea trebuie să decidă pentru sine, ci faptul că, în acest moment există doar două baze de date relaționale avansate gratuite, distribuite cu codul sursă: PostgreSQL și FireBird.

Istoricul FireBird. Firebird, și alte ciocănitoarea

Studiind istoria „Firebird“, este ușor de înțeles că succesul său în România, a fost predeterminat. După ce, la un moment dat, când multe Delphi-programatori (dintre care cele mai multe sunt bine aminte ce Pascal Turbo și Borland Pascal pentru Windows) pentru a scrie programe pentru BDE, un semn de profesionalism a fost considerat utilizarea proiectului de baze de date Interbase. Și prezența în Delphi pagină separată gata de utilizare componente pentru Interbase biciuit interes general al generațiilor viitoare de dezvoltatori la baza de date. În mod tradițional, a fost făcută la întâlnirea cu Interbase pentru a recunoaște calea eroică a acestui program în armata SUA - cum să-l pună pe tancurile „Abrams“. Când Borland (în timp ce poartă numele misterios Inprise) a lansat un open source SQL server Interbase 6.0 (sau mai degrabă 6.0.0.627), dar încă dat de fapt, toată lumea la codul sursă al acestei versiuni, comunitatea Open Source a apărut un motiv de mare pentru a crea un nou proiect . În plus, InterBase, iar dezvoltatorii au luat parte la ea.

Firebird Gray Cardinal pe piata de baze de date, PC World, publicarea de

prima versiune a Firebird permis multor scris pentru Interbase 5.x capul sus, software-ul mândru distribuit în mod legal. Mai mult decât atât, componentele mediului Delphi, destinate a InterBase, rămân pe deplin compatibile cu noua bază de date. Ce este acolo să fie modeste, iar acum este un pachet de componente Borland IBX se descurcă cu sarcini tipice rezolvate conform FireBird, deși nu mai este în această nevoie specială.

Acum este sigur să spunem că FireBird - dezvoltarea de software industrial este necesar cookie-uri, garantând integritatea tranzacțională a datelor atunci când este utilizată cu mai mulți utilizatori, care corespunde acidului reguli:

Atomicitate - tranzacții atomice;

Consecvență - date de integritate;

Izolarea - Izolarea
(Controlul accesului utilizatorului);

Durabilitate - depozitare de lungă durată.

Proiectat pentru arhitectura client-server, baza de date face ca această cerință destul de tipic atunci când alegerea hardware-server pentru proiectele majore. Și capacitatea de a lucra foarte bine cu baze de date mari și conexiuni client multiple a fost mult timp dovedit cu succes ca la targuri, iar in proiecte comerciale reale. Aici funcționează o regulă universală - calitatea lucrărilor de bază este foarte dependentă de persoana care a proiectat.

Deja în versiunea 1.5, toate modulele au fost alese cu rescrise, în conformitate cu standardele moderne ale limbajului C ++. Versiunea 2.1 are o orientare futurist: ea a trebuit să se stabilească unele dintre elementele planificate pentru arhitectura 3.0. În această versiune a declanșatoare au fost adăugate pentru evenimente de baze de date comune, tabele temporare la nivel mondial, expresia «UPDATE SAU INSERT», utilizarea de domenii pentru argumente și limbaj procedural.

Desigur, utilizarea SGBD FireBird este foarte adesea însoțită de utilizarea mediului de dezvoltare Delphi, dar este potrivit nu numai pentru Delphi dezvoltatori. Nu sunt distribuite gratuit drivere de încărcare pentru ODBC, Java. NET (1.1, 2.0, 3.5), precum și biblioteci de acces la nivel scăzut prin C ++.

Ceea ce nu este în prezent FireBird

Partiționarea datelor și Tablespace

Lipsa capacității de separare logică și fizică a datelor acum este într-un fel arată ciudat împotriva altor baze de date. Pe de altă parte, capacitățile de hardware de astăzi și experiență în proiectarea de baze de date poate lucra minuni. În unele schimbul de date RDBMS (tabelele partitsirovanie) sunt acum implementate ca în cazul în care nu. Cu alte cuvinte, folosind un limbaj procedural înseamnă în FireBird, puteți implementa manual ceva similar cu schimbul de date.

Această caracteristică permite o bază de date bine structurată și ușor diferenția drepturi de acces pentru utilizatori. Lipsa de scheme - FireBird mare dezavantaj în comparație cu alte baze de date relaționale dezvoltate moderne. Și se pare că nu este de așteptat schimbări în această direcție.

Firebird Gray Cardinal pe piata de baze de date, PC World, publicarea de

problemă de integrare cu formatul de dezvoltatori XML ocolite în toate problemele, lăsând programatori la un domeniu larg de activitate. Într-o anumită măsură lipsa acestor caracteristici pot fi compensate prin promisiunea de oportunități de a lucra cu surse de date externe în versiunea 3.0. Acum, deciziile FireBird proprii legate de utilizarea XML, poate fi realizat prin utilizarea de proceduri stocate și funcții definite de utilizator.

Scrierea funcții personalizate pentru Java și .NET

Probabil nici un RDBMS moderne nu poate ignora această funcționalitate.

Java - un limbaj de programare puternic, care oferă oportunități de dezvoltatori. Orice ar fi privit punerea în aplicare imediată, ceea ce permite utilizarea Java, acesta va fi cu siguranta un succes, ca marile minciuni în conceptul general de soluții OpenSource: Linux, Firebird ... Java!

Conform planurilor de dezvoltatori, pentru a crea caracteristici pentru Java și .NET va fi în versiunea 3.0.

Operatorii de export rapid / import într-un fișier extern

Disponibil acum caracteristică FireBird se numește „tabele externe“ și seamănă cu un dispozitiv de tortură special pentru programator de orice nivel de calificare. Ea nu merită o atenție specială în proiectarea bazei de date, desigur, în cazul în care dezvoltatorul depozit de date nu are ca scop formarea propriilor lor răbdare și diligență, indiferent de rezultatul. Cu toate acestea, dacă te uiți dialogurile pe forumuri, unii dezvoltatori în legătură cu tabelele externe hrăni sentiment, amintind de Sindromul Stockholm. În acest moment, există mai multe soluții gata plătite și gratuite (pentru „automat“ și one-off operațiunile) pentru datele replicare, import / export stocate în fișierul de date de ieșire, dar, în comparație, de exemplu, cu caracteristicile MySQL lipsă distincte de remarcat în acest sens.

Lucrul cu obiecte. moștenire

Probabil, punerea în aplicare a obiectului dispune într-o bază de date relațională - funcționalitate destul de ambiguu în ceea ce privește utilitatea și ideologia generală de depozitare. Extensiile de obiect nu au fiecare bază de date comună, și nu toată lumea are nevoie de ele.

În FireBird orice obiect extern vă poate arunca întotdeauna într-un câmp BLOB, iar restul este, ca de obicei, depinde de programator. În plus, Internetul este ușor de a găsi articole cu privire la metodele de depozitare corespunzătoare a obiectelor în bazele de date relaționale.

Dacă vom compara gratuit FireBird c taxa Baze de date Sybase ASA, în favoarea celor din urmă poate indica posibilitatea de a utiliza servicii Web și tabele „străine“ din altă bază de date. puteri similare au, în plus, MS SQL Server și Oracle, precum și software-ul de server Adobe ColdFusion, care are propriul mecanism de interogări cross-platform. O serie de sarcini care necesită lucrul cu date din diferite surse, sunt rezolvate la nivelul programelor de client, dar tema implementării de interogări eterogene pentru FireBird discutate în RuNet o lungă perioadă de timp. mecanisme de integrare bune sunt necesare ca aerul, tocmai pentru că această bază de date este utilizat pentru sarcini asociate cu nivelul mediu (Middleware, software-ul de nivel intermediar și hardware pentru date de conversie, preprocesare sale, etc.). Pentru a satisface dorințele lucrătorilor, dezvoltatorii au planificat cel puțin această funcționalitate la versiunea 3.0.

Built-in capabilități pentru lucrul cu structuri de arbori

Odată cu manipularea și stocarea datelor de arbori în tabele personalizate la un imens sarcini legate de piese. Tema de reflectare a acestor date la spațiul tabelă a fost mult timp banal, dar programatorii care utilizează Firebird au exprimat în mod repetat pentru membrii comunității cereri de echipament de server de facilități specializate pentru depozitarea și prelucrarea arborilor.

Pentru a ajuta la dezvoltator

Acum oferă o gamă largă de drivere, pachete, componente care oferă posibilitatea de a utiliza FireBird la locul de muncă în orice mediu de programare modern și orice tip de dezvoltare limbă. drivere pentru accesul liber la baza de date prin intermediul ODBC, pachetele de lucru din Java actualizate în mod constant. NET / MONO-furnizori, obiect C ++ bibliotecă (ca un înveliș pentru API), conducător auto pentru a lucra la PHP. Și toate aceste bogății are o documentație corespunzătoare, studii de caz, și perspectivele de dezvoltare. Dar, la fel ca înainte, o dragoste specială pentru FireBird hrăni Delphi-programatori, care pot fi apelate cel puțin trei pachete FireBird componente gata pentru utilizare comercială.

Imediate perspective: Firebird 2.5

De la lansarea versiunii 3.0 este încă în perspectiva tulbure, pentru această versiune am fost promis interogări eterogene și descărcare de date mass-media.