MongoDB: MongoClient soll Mongo ablösen
MongoDB hat die meisten Treiber mit neuen Standardeinstellungen fĂĽr die Fehlerkontrolle und -meldung ausgestattet. Eine neue Klasse soll die Verwendung der NoSQL-Datenbank so intuitiver machen.
- Julia Schmidt
Nicht alles, was historisch gewachsen ist, kann von Außenstehenden sofort erfasst und umgesetzt werden. Das mussten, laut Blog-Eintrag, zumindest die Entwickler von MongoDB bei den Standardeinstellungen ihrer Treiber feststellen. Aus dem Grund hat 10gen neue Versionen dieser veröffentlicht und hofft, den Nutzern der NoSQL-Datenbank damit intuitivere Mittel zur Verfügung stellen zu können.
Ursprünglich war MongoDB als Datenlayer eines Platform-as-a-Service-Stack (PaaS) entwickelt worden, in dem es nur HTTP-Anfragen gab, ein Application Server die Datenbank auf Fehler untersuchte und das System bei Bedarf über eventuelle Ausfälle informierte. Beim Anlegen der Treiber wurde dasselbe Netzwerkprotokoll wie im ursprünglichen Application Server mit asynchronen Schreibvorgängen verwendet, woraus sich die Standardeinstellungen ergaben.
Da viele neue MongoDB-Nutzer den vollen Stack allerdings nie benutzt haben, erschließt sich das Verhalten der Schreibanfragen, nicht auf eine Antwort des Servers zu warten, oft nicht sofort. Um das zu ändern und gleichzeitig alte Anwendungen nicht außer Gefecht zu setzen, wurde im neuen Release die Klasse MongoClient eingeführt: Deren WriteConcern-Wert ist standardmäßig 1, eine Serverantwort wird also abgewartet und Fehler werden gemeldet. Auch früher konnte der Wert gesetzt werden, um Informationen über Probleme beim Schreibvorgang zu bekommen, dafür mussten Neueinsteiger jedoch das Standardverhalten und diese Möglichkeit kennen. MongoClient soll die Mongo-Klasse ablösen, allerdings bleibt sie noch eine Weile (ausdrücklich aber nicht für immer) bestehen, um Entwicklern die Chance zu geben, alten Code entsprechend anzupassen. (jul)