Ich habe mich mit dem Ordnance Survey Code-Point Open Datensatz von UK Postleitzahlen/Koordinaten beschäftigt. Da Couch.io eine frei gehostete CouchDB-Instanz anbot, dachte ich, ich würde meine Geo-Daten in eine von denen einbringen und dabei etwas über CouchDB lernen.Für welche Art von Anwendung wäre CouchDB am nützlichsten/leistungsstärksten?
Die Idee war, dass, da CouchDB gut im Umgang mit großen Datensätzen sein soll (die Postleitzahldaten sind etwa 1,7 Millionen Datensätze) und nativ mit REST/JSON funktioniert, würde es gut mit Client-Seite jQuery zur Verwendung mit Google Maps-Anwendungen.
Mein ursprüngliches Ziel war einfach, einen AJAX-Aufruf mit einer Postleitzahl als Parameter zu machen und ein einzelnes JSON-Objekt mit lat/lon-Eigenschaften zurückzubekommen, das ich in meinem Skript (mit einem Marker für diese Postleitzahl) konsumieren könnte).
Ich habe das erfolgreich gemacht, aber aus einem relationalen DB-Hintergrund stammend war es viel schwieriger als ich dachte; Wenn ich mehr über CouchDB lese und ein wenig damit spiele, habe ich den Eindruck, dass es nicht das richtige Werkzeug für diesen Job wäre, wenn ich es tatsächlich für ein reales Projekt verwende.
Bin ich der Meinung, dass dynamische Abfragen für CouchDB eine Schwäche darstellen? Ist es eher darauf ausgerichtet, aus großen Datenmengen große Ansichten zurückzugeben, die sich nicht allzu oft ändern? Was könnten einige Beispiele für "gute" und "schlechte" Anwendungen von CouchDB sein, wenn es darum geht, seine Stärken zu nutzen?
Dank dafür, es unterstützt, was ich dachte (auch wenn ich es vielleicht nicht sehr deutlich habe). –
Sagen wir, Sie haben einen Logger für eine Ressource. Auf die Ressourcen wird von vielen Benutzern jede Sekunde zugegriffen. Der Logger muss die aktuelle Anzahl der Benutzer, die auf die Ressource zugreifen, und die durchschnittliche Zeit, zu der die Ressource von allen Benutzern verwendet wird, berechnen. Gegenwärtig kann MySQL nicht mit der Anzahl der Schreibvorgänge Schritt halten. Wäre CouchDB eine bessere Lösung? – Cory