Firebird

Z FI WIKI
Přejít na: navigace, hledání

Varianty architektury databázového serveru Firebird

Classic server

Puvodni implementace - pro obsluhu uzivatelskych pripojeni pouziva samostatnych procesu. Tzn. ze pro kazdeho pripojeneho uzivatele je spustena nova instance serveru. Jadro serveru celkem male, cca 1,5 MB, takze naroky nejsou nijak dramaticke.

Nevyhodou je nizka uroven sdileni informaci mezi jednotlivymi instancemi serveru. Neumoznuje sdilet vyrovanavaci pamet - vyssi naroky na diskove operace. Nema problem s vice procesorovymi stroji.

Vyssi rychlost zpracovani pozadavku pripraci jedineho uzivatele. Pad jedne instance serveru ovlivni pouze jednoho uzivatele.

Super server

Architektura superserveru je postavena na paralelnim zpracovani vlaken. V ramci jednoho procesu dokaze obslouzit vice klientu soucasne.

Umoznuje sdilet vyrovnavaci pamet, metadata, snizuje naroky na pripojeneho uzivatele. Ze 2MB na 115kB

Veskera komunikace po siti. Neumi lokalni pripojeni.

Na co je ktery vhodnejsi

Classic server vhodnejsi pro:

  • jednouzivatelske aplikace s lokalnim pristupem
  • na serveru provozovane aplikace s lokalnim pristupem za predpokladu recyklovaneho pripojeni k databazi
    (vytvoreni spojeni je u classic serveru podstatne pomalejsi)

zajimavost: classic server je napr pouzivan v ridicim systemu tanku Abrams MK1 :-) nebo v mobilnich zarizenich Motorola

Superserver je vhodnejsi pro:

  • aplikace s velkym poctem uzivatelu nebo uzivatelu pracujicich s jedinou databazi, pripadne zpracovavajici shodna data
  • na serveru provozovane aplikace bez recyklace pripojeni k databazi
  • podobne paralelni zpracovani transakci jako Postgres nebo Oracle -> vysoka propustnost transakci, okamzite zotaveni po padu a vyrazne mensi naroky na systemove zdroje.

Co ovlivnuje vykon

  • synchronni/asynchronni zapis dat - asynchronni zveda vykon asi o 50%
  • velikost vyrovnavaci pameti
  • indexy
  • DNS - doba prekladu adresy serveru pri pripojovani pres TCP/IP
  • RAID
  • prenos po siti - Firebird zatim prenasi po siti data typu CHAR a VARCHAR v plne deklarovane delce, nikoliv ve skutecne delce dat. - ve verzi Firebird 1.5 jiz opraveno
  • optimalizace dotazu
  • transakce
  • volba vhodne velikosti stranky
  • JDBC ovladac - Interclient nebo Firebird type 4 JCA/JDBC driver (JBoss)


Omezení

  • Neco kolem 2 miliard radku v jedne tabulce
  • Teoreticky az nekolik terabajtu velke databaze.
  • Nejvetsi zname databaze spravovane Firebirdem dosahuji 700GB