MySQL vs. MongoDB

Datenbanksysteme für Web-Anwendungen im Vergleich

29.05.2014
Von 
Diego Wyllie hat Wirtschaftsinformatik an der TU München studiert und verbringt als Softwareentwickler und Fachautor viel Zeit mit Schreiben – entweder Programmcode für Web- und Mobile-Anwendungen oder Fachartikel rund um Softwarethemen.

Fazit

MySQL kann gegenüber MongoDB mit zahlreichen bewährten Administrations-Tools punkten. Doch mit dem in September 2011 veröffentlichten Online-Werkzeug “MongoDB Monitoring Service” holt Mongo auf.
MySQL kann gegenüber MongoDB mit zahlreichen bewährten Administrations-Tools punkten. Doch mit dem in September 2011 veröffentlichten Online-Werkzeug “MongoDB Monitoring Service” holt Mongo auf.
Foto: Diego Wyllie

Der Vergleich zwischen einem System wie MySQL, das über ein Jahrzehnt erfolgreich in der Praxis eingesetzt wird, und einer Lösung wie MongoDB, die erst seit gut vier Jahren auf dem Markt erhältlich ist, ist wohl recht unfair. Natürlich kann MySQL in Sachen Funktionalität, Verfügbarkeit an ergänzenden Tools und Entwickler-Dokumentation gegenüber dem Newcomer punkten. Das wäre gar nicht anders zu erwarten.

Doch wie der Begriff NoSQL andeutet, stehen beide Datenbanksysteme eigentlich nicht unbedingt in direkter Konkurrenz zueinander, sondern können sich gegenseitig ergänzen. Dennoch, wenn es um die persistente Datenspeicherung bei Web-Anwendungen geht, stellen relationale Datenbanken nicht mehr die einzige Alternative dar. Bei eigenen Projekten wären Entwickler heute also gut beraten, die Vor- und Nachteile der beiden Systeme gegenüber zu stellen und entsprechend den eigenen Anforderungen und Prioritäten zu bewerten. Muss das System mit großen Datenmengen effizient umgehen können? Werden hohe Anforderungen an Skalierbarkeit und Flexibilität der Datenbank gestellt? Sollen sich die Daten über mehrere Server verteilen lassen? Sind häufige Änderungen an der Datenstruktur in Zukunft zu erwarten? Wenn Sie die meisten dieser Fragen mit "Ja" beantworten, dann sollten Sie sich MongoDB sicherlich näher anschauen. (ph)