PostgreSQL, alebo Firebird?
PostgreSQL, alebo Firebird?
doteraz som robil databazy v MS Access, ale pre moje potreby je uz davnejsie nepostacujuci. Potrebujem nieco vykonnejsie, tak zvazujem PostgreSQL, alebo Firebird. MySQL som vylucil - jedna sa o podnikove databazy a MS SQL server je nakladny.
Viem, ze PostgreSQL je asi robustnejsi, ale mozno prilis "tazky" a zlozitejsi na naucenie (nechcem zistit, ze sa musim ucit veci, z ktorych aj tak 50% potom nevyuzijem). Je to tak? Z tohoto dovodu zvazujem Firebird - cital som, ze umoznuje pripojnie aj 50-100 uzivatelov a databazy mozu mat v pohode velkost 120 GB (co by asi aj stacilo).
Vie mi niekto poradit - aka je narocnost prejst na Firebird, alebo PostgreSQL? Vzhladom na:
-narocnost naucenia (samotneho servera + dalsich nastrojov - jazyk, prostredie...)
-narocnost nasadenia (instalacia a pouzite na sietovom serveri)
-vseobecna dlhodoba "pouzitelnost" do buducnosti (pre mna ako "vyvojara" mensich podnikovych databaz).
-je vo Firebird-e nieco velmi obmedzujuce?
Skusenosti mam s vytvaranim relacnych databaz a co sa programovania tyka, tak len VBA (pre Access).
Snad som otazku formuloval pochopitelne (sory ze som sa tak rozpisal), dakujem za vase nazory.
oprava automatickeho generatoru dotazu
celé vláknoRe: oprava automatickeho generatoru dotazu
celé vláknoRe: oprava automatickeho generatoru dotazu
celé vláknoRe: oprava automatickeho generatoru dotazu
celé vláknoMySQL som sa rozhodol nepouzit preto, lebo po porovnavani (vyhladavani na nete) som usudil, ze sa na moje ucely nehodi. podla toho co som zistil, je vhodna skor na web, ale nie na podnikove databazy. aj ked informacie boli väcsinou starsieho data a bolo napriklad argumentovane tym, ze nema transakcie (co myslim uz ma), ale aj tak sa odporuca pouzit skor pri mensich projektoch.
nemam skusenosti s väcsimi databazovymi nastrojmi (MS SQL a pod.), preto sa mi tazko porovnavaju - to bol dovod, preco som sa pytal tu.
Re: oprava automatickeho generatoru dotazu
celé vláknoRe: oprava automatickeho generatoru dotazu
celé vláknoRe: oprava automatickeho generatoru dotazu
celé vláknoKonkrétně informace o transakcích musela být neuvěřitelně starého data, protože MySQL umí transakce na InnoDB tabulkách roky. Pokud i zbytek informací byl podobně aktuální, tak doporučuji zahodit ;-)
Re: oprava automatickeho generatoru dotazu
celé vlákno"což je podle mě úplně zásadní podmínka pro použití na čemkoliv než "menší projekt"."Méně zásadní, než stabilita, robustnost, vysoký výkon, snadná údržba? Nevím, co je "menší projekt", je 11 terabajtů "menší projekt"? (viz zde) Nějak se mi nechce věřit, že byste zrovna Vy pracoval na systému, který narazí na meze schopností Firebirdu nebo PostgreSQL. To se podaří jen málo lidem. Možná tak v bankách :-), ale tam stejně používají úplně jiné věci.
Re: oprava automatickeho generatoru dotazu
celé vláknoRe: oprava automatickeho generatoru dotazu
celé vláknoAle to som netvrdil, aspon nie takto.
"ale to přece není tématem diskuze..."
S tym suhlasim, dakujem za pochopenie.
Re: oprava automatickeho generatoru dotazu
celé vláknoPokial to bolo na mna, tak urcite nie. :) Tak to ani nebolo myslene. Doteraz to boli databazy s maximalne niekolko desiatkami tabuliek (ale mensim poctom zaznamov), alebo jednoduchsie databazy, kde bolo niekolko stotisic (neskor asi aj cez 1 mil.) riadkov. Cize do 2 GB (viac sa u MS Access nedoporucuje).
Z doterajsich prispevkov a odkazov vidim, ze toto nie je pre mna kriterium vyberu, obe riesenia mi pripadaju viac ako postacujuce a kazde ma nejake + a - (co som aj predpokladal ;) ). Skor by som potreboval poradit ohladne toho, co bude pre mna jednoduchsie "rozchodit" - kedze s nimi nemam skusenosti. Uvazujem o Firebird + Python.
Re: oprava automatickeho generatoru dotazu
celé vláknoFirebird a Python je výborná kombinace. Pavel Císař, přední český firebirdista, pracoval kdysi (možná ještě pracuje, to nemůžu vědět :-)) v Delphi, ale jestli jsem to pochopil správně, přešel přinejmenším zčásti na Python. Pro Firebird a Python existuje moc pěkná klientská knihovna kinterbasdb, která podporuje prakticky vše, co Firebird klientům nabízí, včetně Services API pro správu serveru z aplikace. Instalace Firebirdu, Pythonu a kinterbasdb ve Windows je bezproblémová věc. Docela užitečnou tenkou nadstavbou nad kinterbasdb, která se neznaží spasit svět skrz ORM, naleznete na stránce http://projects.almad.net/dbclass . Pokud vím, autor dbclass používá Firebird+Python+kinterbasdb+dbclass tenhle SW v provozním nasazení včetně provozu ve Windows.
Re: oprava automatickeho generatoru dotazu
celé vláknoRe: oprava automatickeho generatoru dotazu
celé vlákno"požadavkem je"Asi jste zapomněl jste na slovíčko "naším". Protože kdyby tu potřebu měli všichni a nedalo se bez toho žít, asi bych byl v průseru. :o) Jestli vám co chvíli shoří hardware, tak to máte blbý.
Re: oprava automatickeho generatoru dotazu
celé vláknoUž nechci mořit tohle vlákno off-topicem, takže přeju příjemný zbytek diskuze.
Re: oprava automatickeho generatoru dotazu
celé vláknoRe: oprava automatickeho generatoru dotazu
celé vláknoRe: oprava automatickeho generatoru dotazu
celé vláknoORACLE JE DO 4GB ZDARMA
Re: oprava automatickeho generatoru dotazu
celé vláknoRE: PostgreSQL, alebo Firebird?
celé vlákno- PostgrSQL umí oproti Firebirdu navíc vlastní datové typy, vlastní typy indexů, několik server-side programovacích jazyků, fulltext search (kvalitu jsem ovšem nezkoušel), několik hotových indexů pro prostorová data (nad tím stojí PostGIS, který si lidé chválí).
- Firebird se oproti PostgreSQL mnohem jednodušeji spravuje, dá se i embeddnout do aplikace jako knihovna, na Windows není problém přibalit ho k aplikaci, aniž by si toho uživatel všiml. Taky je hodně silný co do národních kódování v řetězcových polích.
Náročnost nasazení PostgreSQL je celkem malá, nároky Firebirdu jsou ještě menší. Ale to se týká jen samotných serverů, co s nimi budete dělat, to už je na Vás a má to mnohem větší vliv. Těch padesát až sto uživatelů by Firebird zvládl v běžném OLTP provozu již před deseti lety na serveru s Pentiem. Firebird hlavně trošku omezuje poměrně malý počet nástrojů (v porovnání s PostgreSQL), ale především malá podpora v linuxových distribucích (je to trošku víc DIY). Ale má zase skvělou podporu v Delphi. ;-)
RE: PostgreSQL, alebo Firebird?
celé vlákno+ PG: výborná je možnost u command-line klienta ve Win možnost nastavit si překódování (u mne databáze v UTF-8, ve Win cmd line se zobrazuje jako CP1250) - u FB jsem tohle nenašel
+ PG: textová pole umí prohledávat pomocí regulárních výrazů (u jednoho mého projektu bylo hodně textů, které bylo nutno prohledávat a s RE to byla hračka), lze použít i case insensitive LIKE apod.
+ PG: *podstatně* lepší dokumentace
+ PG: podpora XML
+ PG: existuje driver pro OpenOffice
+ FB: databáze je v jednom souboru - když je zapotřebí to mít "portable" (u PG je to poněkud složitější - nutný je dump a restore)
- FB: u embedded verze poměrně neschůdné použití české collation v kódování UTF-8 (nakonec mám databázi v 1250)
RE: PostgreSQL, alebo Firebird?
celé vláknoPokud se nechcete mořit s hákováním ILIKE do Firebirdu, můžete aspoń v některých případech použít CONTAINING. Případně existují nějaké ty UDF knihovny. Tady má PostgreSQL oproti Firebirdu výhodu prostě v tom, že je větší. :-) BTW, v OpenOffice.org jsem tak nějak neměl problémy, ani s JDBC, ani s ODBC driverem pro Firebird.
A takovou víceméně oficiální dokumentací Firebirdu je výborná knížka, asi o 1400 stránkách, pokud započítám "upgradovací" dodatek, co nedávno vyšel. To je asi tak jediná investice. PostgreSQL by toho teoreticky měl umět mnohem, mnohem víc, ale jeho nejnovější oficiální dokumentace má jen 1900 stránek, takže je možné, že poměr stránky/fíčury (a tedy vyčerpávajícnost, s tím, že nic důležitého nezůstalo přehlédnuto) je dost možná mnohem lepší u Firebirdu. Nicméně u PostgreSQL to zase asi kompenzuje komunita, abych mu nekřivdil. :-) (Nějak mi ale chybí dobré aktuální knihy o 8.x řadě.)
RE: PostgreSQL, alebo Firebird?
celé vláknoPlus ke stazeni jsou tutorialy pro 8.2: http://www.pgsql.cz/index.php/Jednodenn%C3%AD_%C5%A1kolen%C3%AD_PostgreSQL
RE: PostgreSQL, alebo Firebird?
celé vláknoRE: PostgreSQL, alebo Firebird?
celé vláknoRE: PostgreSQL, alebo Firebird?
celé vláknoU Firebirdu db soubor zkopírovat v zásadě lze, ale je nutné zajistit, abych se souborem pracoval opravdu jenom já a dát si pozor, jestli není různá verze Firebirdu (nejde ani tak o verzi Firebirdu, jako o verzi ODS - on disc structure). Proto se doporučuje backup a restore. Pro rychlý backup/restore, nebo pro přírůstkový backup, je od verze 2 nástroj nbackup pro bezpečné kopírování db souboru přímo.
Ten ILIKE tam opravdu není (alespoň o tom nevím), ale lze udělat třeba:
WHERE UPPER(NAME) LIKE UPPER('nOvÁk%')
plus si případně udělat index: CREATE INDEX .... COMPUTED BY (UPPER(NAME))
Jde to, ale je to trochu obcházení :-)
Pokud jde o to správné třídění v UTF-8 (bylo v předchozím příspěvku), to mi správně fungovalo ve FB 2.1 (je na spadnutí, zatím to byla RC verze), který má CREATE COLLATION .... Pak si mohu udělat collation třeba UNICODE_CZ, UNICODE_DE, ... a atribut JMENO si pak mohu správně třídit v u nás, Německu, atd. "Distribuční" collate UNICODE bere C, Č a CH stejně, takže se dočkáte setřídění Česnek - Charvát - Cuchal. Převod kódování mezi db a klientem fungoval v pohodě už v InterBase, v konzolovém isql je na to SET NAMES ..., v programu to říkám při připojování k db, v Pythonu třeba:
db = kinterbasdb.connect(dsn='hostname:alias', user='USER', password='heslo', charset='WIN1250', dialect=3)
RE: PostgreSQL, alebo Firebird?
celé vláknoRE: PostgreSQL, alebo Firebird?
celé vláknoRE: PostgreSQL, alebo Firebird?
celé vláknoRE: PostgreSQL, alebo Firebird?
celé vláknoRE: PostgreSQL, alebo Firebird?
celé vláknoobnovila sa diskusia k mojej starsej teme? kazdopadne dakujem za dalsie informacie a pripomienky.
RE: PostgreSQL, alebo Firebird?
celé vláknoMoja osobna preferencia je pgsql aj pre velmi male projekty a to jednak z dovodu existencie PgAdmin, druhak moznost pisat procedury takpovediac "v jazyku akom len chces". V zaciatkoch mi pre pgsql hovorila aj dobra kompatibilita so standardom, takze uvaha "nechcem zistit, ze sa musim ucit veci, z ktorych aj tak 50% potom nevyuzijem" uplne odpada - je to skor tak, ako hovori MS marketing, ze mozes byt kludny, ak tvoje potreby casom rastu.
RE: PostgreSQL, alebo Firebird?
celé vláknoPovodne som sa mierne priklanal k FB, ale asi zacina viest PostgreSQL. :)
hm...
celé vláknoZ mojeho pohladu mam dobre skusenosti s Oracle, MSSql, Postgresql, Mysql. Firebird ma nepresvedcil nicim, co by stalo za zvazenie. No flame please.
Re: hm...
celé vláknoAko vidim, podla poziadavok ktore som zadal sa rozhodnut neda.
Rejpal mi napisal:
Firebird se oproti PostgreSQL mnohem jednodušeji spravuje, dá se i embeddnout do aplikace jako knihovna, na Windows není problém přibalit ho k aplikaci, aniž by si toho uživatel všiml
Firebird hlavně trošku omezuje poměrně malý počet nástrojů (v porovnání s PostgreSQL)
Tak teraz neviem. :)
Asi bude najlepsie, ked sa pozriem podrobnejsie na oba, mozno aj vyskusat treba (co mi ale zaberie nejaky cas a ten ma momentalne tlaci) a potom sa rozhodnem.
Dakujem vsetkym za odpovede.
Re: hm...
celé vláknoPřesně tak, zkuste obojí (Firebird a PostgreSQL) a uvidíte, oba jsou dobré a oba mají něco, co nemá ten druhý, Rejpal to celkem pěkně shrnul. U nás na Firebirdu děláme (prapůvodně od InterBase 4) a stěžovat si v žádném případě nemůžeme. Běží nám na tom, mimo jiné, třeba systém na výpočet a vyplácení důchodů a jiných sociálních dávek, jde o to měsíčně vyplatit cca 50000 lidí, novým podle zadaných dob vypočítat výši důchodu, pravidelné i nepravidelné (jak si vláda vzpomene ;-) valorizace plus archiv plateb za asi 10 let zpět a vše běží jak má. Ale na PostgreSQL by to jistě běželo stejně dobře :-).
Pro prográmky, které mají běžet jednouživatelsky na jedné stanici, je výborná embedded verze Firebirdu - jde vlastně o klientskou knihovnu s kompletním serverem a na stanici pak není třeba nic instalovat, omezení je, že k datům má přístup jen jeden proces. Přechod na síťový víceuživatelský provoz pak spočívá jen v nainstalování serveru a přenosu databáze na něj, v tu chvíli je z toho "dospělý" server.
Jinak k Firebirdu je pěkná kniha od Pavla Císaře (vydal CPress), pokud jde o další nástroje nebo kompletní dokumentaci (obojí se Firebirdu vytýká, že není), podívejte se na www.firebirdsql.org a www.ibphoenix.cz. Obojí existuje kvalitní, ale placené (např. IBAdmin nebo tištěná kniha s dokumentací), tak i free (třeba FlameRobin, dokumentace v různých pdf), ale ne tak učesané.
RE: PostgreSQL, alebo Firebird?
celé vláknoRE: PostgreSQL, alebo Firebird?
celé vláknoMimochodem, 800 gigabitů a 55 miliard řádků znamená 15.61 bitu na řádek, něco pod dva bajty :-). Buď tam máte něco špatně, nebo je PostgreSQL skutečně extrémně dobrá databáze, protože tam by se podle teorie informace nevešel ani primární klíč, pokud by neměl alespoň nějaké rozdílové kódování. :-)
RE: PostgreSQL, alebo Firebird?
celé vláknoŠkolení: Linux – Firewall, Samba, VPN
Na třídenním školení se naučíte nainstalovat a spravovat Firewall a Router, SAMBA Doménový a Souborový server. Dále si zprovozníte vlastní, zabezpečený VPN server.
Podrobnější informace a přihláška

