Sie haben bereits Erfahrung in der Entwicklung von Webanwendungen und haben dabei auch die Datenbank mit entwickelt? Sie kennen die Fallstricke der Normalisierung in der Praxis? Oder Sie wollen sich neu in die Webanwendungswelt einarbeiten und hier direkt mit einer modernen Grundlage beginnen? Dann könnte das Buch "MongoDB – Sag ja zu NoSQL" von Marc Boeker das Richtige für Sie sein.
Der Autor beginnt im ersten Kapitel damit, die Umgebung der MongoDB detailliert zu beschreiben: Wer steht hinter MongoDB, für wen ist es in welchen Anwendungsfällen spannend, sich mit MongoDB zu beschäftigen? Dabei vergisst er nicht, auf die verschiedenen Anwendungsfälle einzugehen sowie die technischen als auch fachlichen Unterschiede zum bisherigen Umgang mit persistenten Daten aufzuzeigen. Ein Vergleich mit der im Umfeld von Webanwendungen sehr populären MySQL-Datenbank darf natürlich nicht fehlen. Der Autor nutzt diesen Vergleich im Verlauf des Buches immer wieder.
Das zweite und dritte Kapitel werden dem technischen Aufbau sowie der Betriebsumgebung der Datenbank gewidmet. Wie kann ich MongoDB unter den verschiedenen Betriebssystemen einrichten, um damit entwickeln zu können? Welche zusätzliche Software ist hilfreich, und welche Werkzeuge gibt es, um den von MySQL gewohnten Komfort beim Entwickeln herzustellen? Auch die nötigen Grundlagen, die der Leser für das Verständnis der weiteren Kapitel benötigt, werden hier vermittelt ("Was ist eigentlich BSON?"). Zuletzt erklärt der Autor noch die Unterschiede, die berücksichtigt werden müssen, um mit einer dokumentenbasierten Datenbank praxistaugliche Schemata zu entwickeln. Am Ende dieser Einführung wird demonstriert, wie man auf Basis der JavaScript-Konsole, die zum Lieferumfang von MongoDB gehört, einfache CRUD-Datenoperationen testen kann.
Nun nimmt das Buch fachlich Fahrt auf. Die nächsten Kapitel erklären im Detail, wie ein Schema für eine dokumentenorientierte NoSQL-Datenbank auszusehen hat, und auch warum. Weiterhin wird immer wieder auf die Unterschiede in der Entwicklung zwischen relationalen Datenbanken und NoSQL-Datenbanken eingegangen. Hier benötigt der Leser allerdings durchaus bereits Erfahrung in der Entwicklung, sonst muss man diese Vergleiche einfach hinnehmen.
Die folgenden Kapitel führen den Leser zuerst durch eine intensive Schulung, wie man ein Datenschema mit einer NoSQL-Datenbank strukturiert, wie man Beziehungen mittels eines eindeutigen Schlüssels aber auch mittels dbref herstellt. Der Autor vergisst hier auch nicht, seine eigenen Erfahrungen aus dem Bereich der Webentwicklung mit aufzuführen und sie auch zu belegen. Nachdem man ein aus Sicht des Autors hoffentlich neues Bild auf die Speicherung von Daten mittels NoSQL-Datenbanken gewonnen hat, werden einem noch Werkzeuge zum Umgang mit MongDB als auch jede Menge Tipps und Tricks mit auf den Weg gegeben.
Das letzte Kapitel dient als eine Art "Erste-Hilfe-Kasten" für die MongoDB. Hier bekommt man kurz und knackig präsentiert, an wen man sich wenden kann, wenn man Hilfe in gewissen Bereichen braucht, oder aber auch, wo man weiterführende Literatur in Netz findet.
Das Buch ist eine geeignete Stütze für jeden, der sich mit dokumentenorientierten Datenbanken wie der MongoDB anfreunden möchte. Der Autor selbst scheint inzwischen ein großer Freund davon zu sein. Das Niveau schwankt allerdings von Kapitel zu Kapitel deutlich. Das Buch ist voll von teilweise guten, teilweise nicht so treffenden Metaphern und Vergleichen. Ich persönlich finde es erfrischend, ein solches Buch zu lesen, da man immer wieder schmunzeln darf. Allerdings wird ab und an über das Ziel hinausgeschossen. Das Buch bietet einen schnellen und effektiven Einstieg in die MongoDB Welt.




