Rückblick Symfony Day 2010 in Köln – Session 1: Doctrine MongoDB Object Document Mapper

Die erste Session „Doctrine MongoDB Object Document Mapper“ von Jonathan Wage brachte mir ein paar neue Einsichten und festigte eine bestehende Einsicht: Doctrine macht das Leben leichter.

Doctrine 2, mit dem ich selbst noch nicht gearbeitet habe, unterstreicht diesen Eindruck nur noch einmal. Arbeiten, mit welcher persistenten Schicht auch immer, lassen sich über das Fluent-Interface wie einfache durch Pfeile miteinander verbunden Sätze schreiben. Die DQL (Doctrine Query Language) mag zwar auch eine interessante Sache sein, in eigenen Projekten ging es bisher aber immer ohne. Durch Bibliotheken wie Doctrine beschleicht mich ab und an die diffuse Angst ich könnte normales SQL verlernen.

Das Kernthema des Vortrags war aber der noch im Alpha Stadium befindliche neue Object Document Mapper für MongoDB. Dabei unterscheidet sich das Interface praktischer Weise auf den ersten Blick nur wenig von dem des Doctrine OR-Mapper. Trotzdem gab es einige interessante Vergleiche, welcher Aufwand direkt auf Basis von MongoDB betrieben werden muss und wie viel Arbeit dagegen der Document Mapper übernimmt. MongoDB selbst ist dabei bereits im PHP-Core implementiert.

Für mich ist der ganze NoSQL-Hype immer noch schwer greifbar und neu. Persönlich habe ich „leider“ wenig mit Projekten zu tun, die dermaßen auf Performance angewiesen wären, wie sie durch den Einsatz einer solchen Lösung zu erreichen sein soll.

Gerade zum Ende der Präsentation und mit der Diskussion wurde dann aber auch noch einmal klar gestellt: MongoDB bzw. generell der NoSQL-Ansatz ist kein Ersatz für eine relationale Datenbanken. Wenn es aber etwa darum geht Dokumente z.B. in einem Cache zu sichern, ist MongoDB die bessere Wahl. Mit dem Doctrine Document Mapper für MongoDB sollte dem einfachen Einsatz dann eigentlich auch nichts mehr im Wege stehen.