PostgreSQL vs MySQL

Hallo Leute,

ich spiele mit dem gedanken auf psql umzusteigen.
ich benutze seit längerem MySQL uns betreibe darauf eine
m.E. recht peformante Datenbank mit ca 400 000 Artikeln und dazugehöriger Applikation. Dank Indizes und Query Cache läft es wiegesagt sehr schnell. Mit dem Wachsen meiner Applikation vermisse ich jedoch features, wie stored Procedures.
Die Querys lassen sich fast nicht weiter optimieren, da es sich um z.T. sehr sehr komplexe Abfragen handelt. :wink: (für alle die jetzt lachen, ja ich hab mir mal ein Buch gekauft :roll: )

Wie performant ist Psql im Vergleich zu Mysql, gibt es die gleichen Möglichkeiten zu Cachen und mit welchen Lasten (ca 100 Abfragen mit bis zu 30.000 Ergebnissen pro Sekunde kommt psql so zu recht?

Vielen Dank an alle Wissenden, die Ihre Erfahrung (mit)teilen möchten…

hi,

mit solchen mengen hab ich noch nicht gearbeitet…

ich habe jedoch einen kleinen shop mit ca 200 artikel und 40 kategorien. sind an sich nur zwei tabellen weil die daten per webservices von amazon kommen. das system lief unsprünglich auf mysql 4.1 und wurde von mir auf pg 8.1 portiert. selbst ohne indexes (!) war die pgsql lösung genauso schnell wie die mysql lösung! mit indexes natürlich haushoch überlegen :wink:

caching ist natürlich auch mit pgsql möglich. eine sehr interessante seite zum thema performance optimierung von postgresql ist http://www.varlena.com/varlena/GeneralBits/Tidbits/perf.html (englisch).

cu tb.

Moin!

Bei einfachen Statements ist bis zu einem gewissen Grad MySQL schneller. Allerdings ist das sehr abhängig vom Statement und meine Erfahrung bezieht sich nur auf Postgres bis zur 7.4 und MySQL bis ältere 4er. Wie das bei der 8ter-PG-Version aussieht, konnte ich noch nicht testen und habe auch noch keinen Vergleich gelesen. Bei komplexen Operationen mit großen Datenmengen hatte eigentlich immer Postgres die Nase ein Stückchen weit vorn, da die MySQL einen stärkeren Lesitungseinbruch hatte. Alles in allem ist es aber stark von der DB-Struktur und den Statements abhängig.

Noch ein paar Hinweise:

-Deine Optimierungen könnten dazu führen, das die Migration auf Postgres erstmal ein enmttäuschendes Ergebnis in Bezug auf Geschwindigkeit bringt und die DB wesentlich langsamer wird.

-Wenn du allerdings einige, besonders die Operationen, die viel Load generieren, in Stored-Procedures abbilden kannst, wirst du vermutlich einen deutlichen Geschwindigkeitsschub spüren.

-Ich würde, wenn du dir die Arbeit machen willst, das Schema portieren und einfach mal testen. Wenn dann ohne Optimierung für Postgres alles zumindest funktioniert und die Performance nicht signifikant schlechter ist als bei der Produktionsdatenbank, kannst du aus PG noch einiges an Geschwindigkeit herausholen.

So, genug geblubbert,
Domski