MySQL VS PostgreSQL

Spezielle Fragen zu PostgreSQL, MySQL, SQLite, SQL ...
Antworten
Bosko
Foriker
Beiträge: 25
Registriert: Sa 20. Apr 2019, 08:57
Kontaktdaten:

MySQL VS PostgreSQL

Beitrag von Bosko » Mo 13. Mai 2019, 05:56

Hoi,

wollte mal hier eine kleine Umfrage und erfahrung Posten in Sachen Datenbanken, speziell My & Postgre,
ich weis das es Schnellere gibt, aber in zusammen Arbeit mit Web und Gambas, sind nur diese zwei möglich
nicht nur Local sondern auch .Net bereich zu Arbeiten.

Meine Testumgebung ist ein Root Server Minimal Installation Debian 9, Standort Düsseldorf, Installiert nur
MySQL und PostgreSQL, alles andere wurde entfernt oder abgeschalten um die Bestmögliche Testumgebung
zu gestallten.

Getestet wird mit
Gambas Local, Homerechner, Linux Mint 19.2
&
.Net Server Debian 9, Full Installation, ISPConfig mit nginx, PHP7.1 Standort Berlin

Beide Server sind Dienst von Proviern mit gleicher Geschwindigskeitsanbindung.

Der Test wird heute den ganzen Tag über laufen und am Abend werd ich meine Persönlicher erfahrung hier berichten.

Wer selbst schon erfahrung hat oder macht, wäre schön ein Kommentar hinterlässt

Benutzeravatar
tionov
Site Admin
Beiträge: 284
Registriert: So 18. Mai 2014, 22:40
Kontaktdaten:

Re: MySQL VS PostgreSQL

Beitrag von tionov » Mo 13. Mai 2019, 06:45

Vor einigen Monaten habe ich mich mit dem Entwicklungschef von einem großem Ticketsystem unterhalten. Das Ticketsystem kann sowohl Mysql als auch PG als Datenbank verwenden. Es gibt Installationen, bei denen um die tausend Benutzer gleichzeitig daran arbeiten. Er sagte mir, dass Mysql zwar bei kleiner Last schneller sei, aber wenn die Last steigt, es übermäßig einbricht, während die Antwortzeiten von Postgresql zwar bei niedriger Last etwas langsamer sind, dafür aber bei steigender Last linear sinken.

Also solltest du deine Tests auch mit einer größeren Anzahl von Benutzern und Last (Queries pro Sekunde) produzieren.

Außerdem sagte er mir, dass Mysql Probleme mit der Zuverlässigkeit von Transactions macht.

Du solltest für einen Vergleich also auch Queries in Transaktionen laufen lassen und prüfen, ob die Ergebnisse (unter Last) stimmen. Was sicherlich nicht einfach ist.
Alles Gute,

4tionov

Bosko
Foriker
Beiträge: 25
Registriert: Sa 20. Apr 2019, 08:57
Kontaktdaten:

Re: MySQL VS PostgreSQL

Beitrag von Bosko » Di 14. Mai 2019, 09:05

Habe nun meine Test abgeschlossen und im weiteren eine Local Test hinzugezogen.
Im großen und ganzen haben mich einige Werte überrascht von Seiten MySQL sowie
PostGreSQL.

Beide Datenbanken haben folgende gleiche Werte:
Eine Datenbank mit 350 Zeilen und 25 Tabellen, die 25 Tabellen werden nochmal Multipliziert
direkt bei der Abfrage so das wir auf eine Abfrage gesamt von 75.000 pro Durchlauf kommen.

Die Test wurden unter ruhigem zustand der Verbindung sowie ohne Auslastung am Server und
mit voller Verbindungsauslast sowie 10% CPU Auslast am Server getestet.

Zu Test 1. Local Serverintern:
  • MySQL:
    Pro Durchlauf komme ich auf eine Zeit von 0.021 bis 0.075 im Durchschnitt, Persönlich für mein
    Empfinden sehr sehr schwankend, auch wenn man es selbst nicht merkt, erstaunlich aber sehr
    Schnell
  • PostGreSQL:
    Postgresql ist im Gegenzug zu MySQL hier sehr langsam, liegt im Bereich von 0.215 bis 0.219, dafür
    das er läuft wie ein Traktor, läuft er aber sehr sehr ruhig.
Zu Test 2. Server zu Server:
  • MySQL:
    liegt im Bereich von 5.259 bis 5.499
  • PostGreSQL:
    hat den Bereich von 5.339 bis 5.549
Beide SQL's unterscheiden sich nicht wirklich von der Geschwindigkeit, was für mich erschreckend
ist, das OHNE Umwege von Server zu Server dennoch 5 Sekunden brauchen, für die Anfrage, woran
kann es liegen, Schlechter Ping? Das Schließe ich hier aus, gehe davon aus das durch die Externe abfrage,
mehr Prozesse gestartet werden, dies konnte ich bei Beiden unter Belastung oder nicht anhand der CPU Auslast
sehen, das da mehr Passiert als Local.

Zu Test 3. Gambas zu Server:
Hier gebe ich nur den Durchschnittswert an!
  • MySQL:
    Erschreckend!!! Liegt im Bereich von fast 40 Sekunden.
  • PostGreSQL:
    Etwas schneller, von um die 18 Sekunden.
An meiner DSL Leitung soll es nicht liegen, aber warum sind die Werte noch Höher als bei Server to Server?
Ich gehe davon aus, das es nicht wie bei Server to Server ohne Umwege die Datenbanken angesprochen
werden, hier von PC zum Router, Router zum Hausverteiler, Hausverteiler zum Straßenstandort, zum ersten
Hauptverteiler... und und und, nur so kann ich mir diese Abweichung erklären, aber warum Arbeitet PostGreSQL
da Schneller wie MySQL....
Anhand der Logs kann ich es mir nicht genau erklären, aber meine Vermutung liegt darin wie die Daten ankommen
und wie jede SQL dies Verarbeitet.
Bei MySQL gab es ganz schöne CPU Auslastung, sogar bis 25%, oh Gott, sowas darf nicht sein, da im Normal Betrieb,
noch andere Programme darauf laufen.
Bei PostGreSQL konnte ich Feststellen, das die erste Anbindung der CPU hoch geht, Gott sei dank wurde die 12%
Marke nicht überschritten und dann Festigte sich der CPU auf 2.2% nur für PostgreSQL und das bei mehreren Durch-
Läufen, da war ich wirklich erstaunt...

Meine Zusammenfassung
Wer eine kleine bis mittele Webseite Betreibt, soll ruhig auf MySQL belieben, dies ist einer der gängigsten System,
mit den meisten Support und Hilfe Stellung, die Oberfläche von MySQL ist einfacher zu bedienen und fast ein
sorglos Paket.
Bei PostgreSQL sieht es anders aus, wer große Projekte verwirklichen möchte, eine Solide Datenbank haben
möchte, ist hier sehr gut Aufgehoben, der Nachteil, man muss sich gut Belesen, da bestimmte Abfragen doch
weit aus anders sind, als bei MySQL.

Einen Zwanghaften umstieg kann ich nicht Empfehlen, jeder Sollte sein System soweit Betreiben, wie er es Angefangen
hat, neue Projekte sollte man sich vorher Überlegen, auf welche DB man geht.
Habe Aktuell im laufenden Projekt umgestellt auf PGSQL, war ein kleiner Akt aber wenn man eine gute Class
hat, ist es ohne Probleme dies umzuschreiben.

Ich hoffe, ich konnte mit meiner Arbeit, einigen den Einblick in bei DB's ermöglichen um eine gute Überlegung
für den Start eines Neuen Projektes zu ermöglichen.

Persönlich werde ich mit beiden Systemen Arbeiten, meine Schweren Projekte mit PGSQL und meine kleinen
Open Source & Privaten mit MySQL....

Gruß

Benutzeravatar
tionov
Site Admin
Beiträge: 284
Registriert: So 18. Mai 2014, 22:40
Kontaktdaten:

Re: MySQL VS PostgreSQL

Beitrag von tionov » Di 14. Mai 2019, 16:12

Hallo Bosko, danke für deinen Test. Um die Aussagen einschätzen zu können, müsste man die Art der Abfrage wissen. Kannst du den SQL-Code hier zeigen und auch sagen wie und wie oft die Abfragen abgesetzt wurden?
Alles Gute,

4tionov

Antworten

Wer ist online?

Mitglieder in diesem Forum: 0 Mitglieder und 1 Gast