( uid_720 | 2013. 10. 01., k – 13:50 )

Én a következők miatt preferálom a PostgreSQL-t:
* FULL JOIN: általában nem kell, de amikor elromlik az adat, és meg kell nézni, hogy melyik sornak nincsen párja, nagyon hasznos tud lenni. Persze lehet FULL JOIN nélkül élni, 2-3 lekérdezés eredményének összefűzése ugyanezt adja, de stresszhelyzetben szeretném, ha nem kellene ezzel foglalkoznom.
* Sokkal-sokkal több adattípus: MySQL-ben van 2-3-féle int, 2-3 szöveg, pár lebegőpontos, meg még ez-az. De nincsen UUID, ami akkor jó, ha olyan rekordokat akarok tárolni, ami globálisan unique. AZ IP típus inkább kedves, enélkül tényleg lehet élni. Az XML már annák hasznosabb! A GEO típusokat egyelőre nem használtam, de eljöhet még az ideje.
* Tömbők: egy oszlopban tárolhatok tömböt.
* MVCC: ugyan a PG csak egyféle storage engine-t támogat, az viszont teljesen ACID compliant (nem tudom, mi a megfelelő magyar szó), és a hangsúlyt az adatok megbízható tárolására helyezi. A MySql-nél volt egy hiba, nem tudom, hogy kijavították-e azóta, de a REPEATABLE READ izolációs szint nem volt rendesen megvalósítva.
* A tárolt eljárásokat sokfajta nyelven lehet megírni, nyilván azt kell választani, ami az adott esetben a legcélravezetőbb. Az persze luxus, hogy mindegyik tárolt eljárást más nyelven...
* Sémát: MySQL: 1 séma = 1 adatbázis. PostgreSQL: 1 séma = 1 séma. Az adatbázis pedig egy másik dolog.
* TableSpace-ek: nem tudom, ennek van-e MySQL megfelelője. Mindenesetre megmondhatom, hogy fizikailag hol helyezkedjen el az adatbázisom.

Hosszú a lehetőségek listája, hirtelen ez jutott eszembe.
A replikációval nem foglalkoztam, de a streaming replikáció nem tűnik bonyolultnak.

Fuszenecker_Róbert