PostgreSQL VS MySQL

MySQL, PostgreSQL, SQLite
soulreaver
Posts: 10
Joined: 2003-11-12 20:06

PostgreSQL VS MySQL

Post by soulreaver » 2005-04-11 14:44

Hallo Leute,

ich weis nicht ob die Fragen hier unbedingt reinpassen aber ich würde gerne wissen wo die Unterschiede zwischen My und Postgre SQL liegen!
Folgendes Problem:
Ich möchte auf unserem Webserver eine Groupwarelösung installieren, dazu habe ich schon einige Erfahrungen mit MySQL gesammelt aber die darauf laufenden Lösungen gefallen mir nicht wirklich z.b. EGroupware.
Ich denke für unsere Zwecke ist OpenXchange am besten geeignet, aber dort soll (muss?) eine PostgreSQL Datenbank verwendet werden...
Meine Frage ist nun: Wo macht das Einarbeiten am meisten Sinn (eurer Meinung nach) welche DB wird am meisten genutzt und wo liegen die Vor/nachteile der jeweils anderen??

Ich hoffe ich stelle keine Fragen doppelt! Aber ich hab mich schon zu tode gegooglet und nix brauchbares gefunden!!

Danke für eure Bemühungen
Thilo

duergner
Posts: 923
Joined: 2003-08-20 11:30
Location: Pittsburgh, PA, USA

Re: PostgreSQL VS MySQL

Post by duergner » 2005-04-11 14:51

Das kommt immer drauf an, was du damit machen willst würde ich sagen. MySQL ist normalerweise recht schnell und einfach zu erlernen aber IMHO bei weitem nicht so mächtig wie Postgres.

MySQL fehlen z.B. solche Sachen wie Trigger, Stored Procedures gibt es auch erst in der 4er wenn mich jetzt nicht alles täuscht. AFAIR kann MySQL auch keine Schema Definitionen.

Postgres ist IMHO sehr stark an Oracle angeleht und kann viele Sachen die Oracle auch kann und halt in vielen Dingen einen ähnlichen Dialekt. Aber auch hier gilt, je mächtiger desto komplexer wird das System und ist somit halt wieder etwas schwieriger im Einstieg.

Ich würde einfach danach abschätzen, ob du Features aus Postgres brauchst, die dir MySQL nicht bietet und ob du vielleicht in naher Zukunft Postgres Features benötigen wirst. Wenn nein, dann würde ich vorschlagen bei MySQL zu bleiben, wenn du das schon kannst.

tcs
Posts: 107
Joined: 2003-11-16 12:05
Location: Woodcastle

Re: PostgreSQL VS MySQL

Post by tcs » 2005-04-11 15:50

Hi,

ich würde Dir zu postgres raten. Meine Freundin hat als DB2/PLI Entwicklerin gearbeitet und meinte "mySQL is kein richtiges SQL...". Die technisch tiefschürfenden Erklärungen kann ich dazu leider nicht liefern, aber eine goolge Suche nach "foreign key" oder "subquery" dürfte da auch noch das eine oder andere Argument bieten.
Wenn ich vor dieser Wahl stände würde ich mich mit SQL als Sprache mal grundsätzlich befassen, dann habe ich einen wirklichen Ã?berblick über die Funktionen und Eigenschaften von Datenbanksystemen.
War nicht viel, hoffe trotzdem geholfen zu haben...

Cheers

tcs

duergner
Posts: 923
Joined: 2003-08-20 11:30
Location: Pittsburgh, PA, USA

Re: PostgreSQL VS MySQL

Post by duergner » 2005-04-11 16:52

Wobei Subqueries in der 4.1er von MySQL mittlerweile gehn soweit ich weiß. Bei den ForeignKeys bin ich überfragt.

outofbound
Posts: 470
Joined: 2002-05-14 13:02
Location: Karlsruhe City

Re: PostgreSQL VS MySQL

Post by outofbound » 2005-04-11 16:59

Hi,

schwieriges Thema, würde ich mal sagen: Für jede Anwendung muss man sich diese Frage eigentlich neu stellen.

Grundsätzlich jedoch, wenn dir folgende Punkte wichtig sind:

- Datenkonsistenz: Postgres (Trigger, FKC, Transactionlogs)
- "Hoch"verfügbarkeit: Postgres (Replikation, Point in time Recovery)
- Hohen Datendurchsatz: Postgres (Tablespaces)
- Einfache Administrierbarkeit: MySQL
- Einfache Wartbarkeit: MySQL
- Speed: (Wahrscheinlich!!!) MySQL

Wenn du "neu" in das Thema einsteigst, würde ich dir direkt zu Postgres raten, auch
wenn MySQL auf den ersten Blick einfacher erscheint. Man hat einfach "mehr" davon.

Performanceprobleme dürftest du eigentlich kaum welche bemerken, wenn das
Datenbankdesign stimmt. (Immer noch der größte Performancekiller ist eine falsch
entworfene Datenbank!)

Die Unterschiede die am meisten auffallen werden: Keine Auto- Increment Felder in dem
Sinne. ;)

Gruss,

Out

DBA- Tagline: In Mengen gibt es keine "letzte" Zeile. ;)

Anonymous

Re: PostgreSQL VS MySQL

Post by Anonymous » 2005-04-13 00:49

Hi,
ich bin der Neue :lol:
OutOfBound wrote:Immer noch der größte Performancekiller ist eine falsch entworfene Datenbank!)
Kann ich nachvollziehen: Für nen Freund hab ich eine Rezeptdatenbank erstellt, rund 30000Rez., 40MB. Mysql unter Win hat arge Probleme gemacht, so ungefähr: Tasse Kaffee trinken bis zum nächsten Datensatz... Naja, nicht ganz so, aber an der Datenbank nichts optimiert, nur die "jungfreuliche" Installation. Die gleichen Datensätze in pgsql einlesen dauerte nur rund ein Viertel der Zeit...
Die Unterschiede die am meisten auffallen werden: Keine Auto- Increment Felder

Da geht Datentyp "serial". (Das weis ich schon..., bin grad im Lernprozess)

MfG Micha

duergner
Posts: 923
Joined: 2003-08-20 11:30
Location: Pittsburgh, PA, USA

Re: PostgreSQL VS MySQL

Post by duergner » 2005-04-13 08:03

[quote="micha-bbg"]Kann ich nachvollziehen: Für nen Freund hab ich eine Rezeptdatenbank erstellt, rund 30000Rez., 40MB. Mysql unter Win hat arge Probleme gemacht, so ungefähr: Tasse Kaffee trinken bis zum nächsten Datensatz... Naja, nicht ganz so, aber an der Datenbank nichts optimiert, nur die "jungfreuliche" Installation. Die gleichen Datensätze in pgsql einlesen dauerte nur rund ein Viertel der Zeit...
[quote]

Das glaube ich nicht wirklich, dass das mit MySQL so lange gedauert hat. Dann war dein Design schon sehr kaputt. 300.000 Datensätze stellen IMHO für kein DBMS ein Problem dar. Und 40 MB ist auch keine Größe.

outofbound
Posts: 470
Joined: 2002-05-14 13:02
Location: Karlsruhe City

Re: PostgreSQL VS MySQL

Post by outofbound » 2005-04-13 12:01

Liegt wahrscheinlich an der Art des einspielens, grade so eine kleine Datenmenge
dürfte stressfrei sein. 40 MB ist ja nicht wirklich viel..

Waren Indices schon angelegt? Beim einbulken jedes mal den Index neu errechnen frisst
jede Menge Zeit. ;)


Gruss,

Out

oxygen
Posts: 2138
Joined: 2002-12-15 00:10
Location: Bergheim

Re: PostgreSQL VS MySQL

Post by oxygen » 2005-04-15 21:46

micha-bbg wrote:Hi,
ich bin der Neue :lol:
OutOfBound wrote:Immer noch der größte Performancekiller ist eine falsch entworfene Datenbank!)
Kann ich nachvollziehen: Für nen Freund hab ich eine Rezeptdatenbank erstellt, rund 30000Rez., 40MB. Mysql unter Win hat arge Probleme gemacht, so ungefähr: Tasse Kaffee trinken bis zum nächsten Datensatz... Naja, nicht ganz so, aber an der Datenbank nichts optimiert, nur die "jungfreuliche" Installation. Die gleichen Datensätze in pgsql einlesen dauerte nur rund ein Viertel der Zeit...
Er meint damit nicht Datenbank Anwendung, sondern die Datenstruktur. Also Schlüssel, Indexe, Datentypen, Querys etc.

Ich weiß nicht wie du die Daten eingelesen hast. Aber MySQL ist bei sowas eigentlich nur durch die IO Performance der Hardware begrenzt. Ich kann problemlos mit 40-60 MB/s Daten in eine MySQL-DB pipen. Ein komplett Backup+Restore einer meiner Datenbank mit 3 GB Größe und ca. 2 Mio. Einträgen dauert vielleicht 10 - 15 Minuten. Da kommen andere DB Systeme nicht mit.
Wobei natürlich diese Performance nicht wirklich zählt.

larsinho
Posts: 14
Joined: 2004-04-14 20:21

Re: PostgreSQL VS MySQL

Post by larsinho » 2005-04-16 09:19

tcs wrote:mySQL is kein richtiges SQL...
<klugscheiss>
Klar, das eine ist ja auch ein Datenbankmanagementsystem und das andere eine Sprache zur Verwendung eines eben solchen.
Ã?pfel sind halt irgendwie auch keine richtigen Birnen
</klugscheiss>

phillux
Posts: 80
Joined: 2004-03-16 13:47
Location: Münster

Re: PostgreSQL VS MySQL

Post by phillux » 2005-04-22 10:43

Also würdet Ihr ungefähr sagen, dass es aus Sicht der Performance, bei mehreren Millionen Datensätzen und komplexen Abfragen(vorrausgesetzt, diese sind korrekt und optimiert) keinen grossen Unterschied macht, ob ich auf MySQL oder PostgreSQL setze?

Gruß, Phil

PS: Stehe bald selbst vor der Wahl, ein DBMS für ein relativ grosses Projekt auszuwählen....

outofbound
Posts: 470
Joined: 2002-05-14 13:02
Location: Karlsruhe City

Re: PostgreSQL VS MySQL

Post by outofbound » 2005-04-22 13:45

Aus Sicht der Performance: Ja.

Aus Sicht von Dingen wie Datensicheheit, Datenkonsistenz... postgres.

Gruss,

Out