Im folgenden Beitrag behandeln wir die beiden relationalen Datenbankmanagementsysteme (RDBMS(Relational Database Management System)) MySQL sowie PostgreSQL. Diese implementieren das relationale (tabellenorientierte) Modell, um mit den Daten zu arbeiten. Das relationale Modell formt alle zu speichernden Informationen, indem es sie als verwandte Datensätze mit tabellenübergreifenden Attributen (Schemata) definiert. Das Schema einer Tabelle (Relationenschema) ist definiert durch den Tabellennamen und einer fixen Anzahl von Attributen mit den entsprechenden Datentypen. Eine Relation besteht als aus einer Menge von gleichartigen Datensätzen.
Hierzu werfen wir zunächst einen Blick auf das Datenbankverwaltungssystem MySQL, bevor wir im zweiten Abschnitt kurz und prägnant eine beliebte Alternative, PostgreSQL, betrachten werden.
MYSQL
MySQL wurde 1994 von dem schwedischen Unternehmen MySQL AB entwickelt und wurde 2008 von Sun Microsystems übernommen, welches seit 2010 zu Oracle gehört.
Mit ca. 50 Millionen Installationen ist MySQL der beliebteste aller großen Datenbankserver. MySQL bietet mit MyISAM (My Indexed Sequential Access Method) und InnoDB sogenannte Speicherengines an, welche unterschiedliche Funktionen unterstützen und je nach Einsatzgebiet unterschiedliche Performance-Werte aufweisen.
Vorteile:
- Kommerzieller Support verfügbar
- Weite Verbreitung, große Community
- Sehr schnelle Performance, besonders bei SELECT-Abfragen von MyISAM-Tabellen
- lässt sich auch für Anfänger leicht bedienen
- Stabilität
Nachteile:
- Volltextindizierung nur mit MyISAM verfügbar
POSTGRESQL
PostgreSQL‘s Entwicklung begann in den 1980er Jahren, seit 1997 wird die Software von einer Open-Source-Community weiterentwickelt.
Aufgrund der leistungsfähigen Technologie, ist PostgreSQL in der Lage, viele Aufgaben sehr effizient zu erledigen.
Im Vergleich zu anderen Datenbankverwaltungssystemen unterscheidet es sich durch seine Unterstützung für objektorientierte oder relationale Datenbankfunktionen, wie zum Beispiel der vollständigen Unterstützung für zuverlässige Transaktionen (Atomarität, Konsistenz, Isolation und Dauerhaftigkeit(ACID)), welche als Voraussetzung für die Zuverlässigkeit von Systemen gelten.
Vor allem, da PostgreSQL noch nicht so verbreitet ist, kann es sich bei der Hosting Suche schwieriger erweisen, einen Provider zu finden, welcher PostgreSQL Instanzen anbietet.
Vorteile:
- Bietet viele Zusatzfunktionen
– Flexible Volltextsuche
– GIS-Zusatzkompatibilität
– Entwicklung von eigenen Erweiterungen möglich
- Vollständig ACID Konform
- Kommerzieller Support durch Drittanbieter verfügbar
Nachteile:
- Performance (Lese-Geschwindigkeit)
Benchmarks :
percona.com
nghenglim.github.io
Quellen :
digitalocean.com
medium.com
uber.com