Wann CouchDB, wann MongoDB?
Verfasst: Dienstag 18. Januar 2011, 13:50
Hallo allerseits,
ich beschäftige mich seit "längerer" Zeit mit dokumentenbasierten Datenbanken (hauptsächlich MongoDB) und finde den Ansatz an kein Schema gebunden zu sein, sowie die einfache Administration und Skalierbarkeit (von MongoDB) mehr als toll. Bei einigen (teils Test-)Webapplikationen habe ich mit MongoDB nur gute Erfahrungen gesammelt. Was mich bis jetzt aber von einem generellen Einsatz von MongoDB abgehalten hat, sind die Tatsachen das die Unterstützung unter den Python-Frameworks noch nicht so perfekt bzw. noch nicht so wirklich vorhanden ist, ebenso das MongoDB Datensicherheit nur bei Verwendung eines Clusters aus mehreren Instanzen garantiert, "Single-Server-Durability" ist aber für Version 1.8 geplant. Besonders der letzte Grund hat mich dazu veranlasst mir CouchDB anzusehen, welches nach einem ersten Überblick, im Punkto Datensicherheit besser sein könnte. Der Ansatz über HTTP-REST mit CouchDB zu "sprechen" ist im Vergleich zu MongoDB etwas ungewohnt, hat aber sicher auch seine Vorteile. Ebenso der Ansatz das ein Query (immer) als map/reduce formuliert werden muss, fühlt sich, wenn man MongoDB mit seinem Abfrage-Syntax gewohnt ist, etwas fremd an. CouchDB lässt sich natürlich ebenso wie MongoDB auch als Datenbank für eine Webapplikation verwenden, aber rein gefühlsmäßig ist MongoDB für dieses Umfeld besser geeignet. Durch die Versionierung die CouchDB bietet, sehe ich CouchDB eher als Speicherlösung z.B. für Dokumente im Geschäftsumfeld (wie Rechnungen, Lieferscheine etc.), die man nachträglich auswerten möchte oder als Speicherlösung für Adressen usw.
Ich lasse mich natürlich gern von anderen Einsatzszenarien überzeugen.
Wo verwendet ihr CouchDB, bzw. wo würdet ihr es noch verwenden?
Wie sind eure Erfahrungen in Bezug auf Datensicherheit und Stabilität?
Habt ihr Webanwendungen darauf laufen?
Grüße
metty
ich beschäftige mich seit "längerer" Zeit mit dokumentenbasierten Datenbanken (hauptsächlich MongoDB) und finde den Ansatz an kein Schema gebunden zu sein, sowie die einfache Administration und Skalierbarkeit (von MongoDB) mehr als toll. Bei einigen (teils Test-)Webapplikationen habe ich mit MongoDB nur gute Erfahrungen gesammelt. Was mich bis jetzt aber von einem generellen Einsatz von MongoDB abgehalten hat, sind die Tatsachen das die Unterstützung unter den Python-Frameworks noch nicht so perfekt bzw. noch nicht so wirklich vorhanden ist, ebenso das MongoDB Datensicherheit nur bei Verwendung eines Clusters aus mehreren Instanzen garantiert, "Single-Server-Durability" ist aber für Version 1.8 geplant. Besonders der letzte Grund hat mich dazu veranlasst mir CouchDB anzusehen, welches nach einem ersten Überblick, im Punkto Datensicherheit besser sein könnte. Der Ansatz über HTTP-REST mit CouchDB zu "sprechen" ist im Vergleich zu MongoDB etwas ungewohnt, hat aber sicher auch seine Vorteile. Ebenso der Ansatz das ein Query (immer) als map/reduce formuliert werden muss, fühlt sich, wenn man MongoDB mit seinem Abfrage-Syntax gewohnt ist, etwas fremd an. CouchDB lässt sich natürlich ebenso wie MongoDB auch als Datenbank für eine Webapplikation verwenden, aber rein gefühlsmäßig ist MongoDB für dieses Umfeld besser geeignet. Durch die Versionierung die CouchDB bietet, sehe ich CouchDB eher als Speicherlösung z.B. für Dokumente im Geschäftsumfeld (wie Rechnungen, Lieferscheine etc.), die man nachträglich auswerten möchte oder als Speicherlösung für Adressen usw.
Ich lasse mich natürlich gern von anderen Einsatzszenarien überzeugen.
Wo verwendet ihr CouchDB, bzw. wo würdet ihr es noch verwenden?
Wie sind eure Erfahrungen in Bezug auf Datensicherheit und Stabilität?
Habt ihr Webanwendungen darauf laufen?
Grüße
metty