Ich versuche gerade, zwischen verschiedenen NoSQL-Datenbanken für mein Projekt auszuwählen. Das Projekt wird in clojure und javascript geschrieben. Ich betrachte derzeit drei Kandidaten für die Speicherung. Was sind die relativen Stärken und Schwächen von MongoDB, FleetDB und CouchDB? Welche wird in Clojure besser unterstützt? Welcher wird unter Linux besser unterstützt? Habe ich ein besseres Produkt vermisst (muss frei sein und OSS)?Clojure und NoSQL Datenbanken
Antwort
Wir wurden mit Clojure + MongoDB, und sie arbeiteten sehr gut zusammen. Hauptsächlich wegen des JSON-Datenmodells, das von MongoDB zur Verfügung gestellt wird, das leicht zu/von Clojure internen Strukturen umgewandelt werden könnte.
berücksichtigen Sie auch Redis DB.
Projektseite: http://code.google.com/p/redis/
und Clojure-Client-Bibliothek für sie: http://github.com/ragnard/redis-clojure/
ich denke, die property graph data model von Neo4j ist ein wirklich schönes fit zu Clojure, this wiki page für Links zu weiteren Informationen. Bezüglich der kostenlosen Version ist Neo4j unter der Lizenz AGPL3 veröffentlicht, was bedeutet, dass es kostenlos in Open-Source-Projekten mit einer kompatiblen Lizenz verwendet werden kann. Die kommerzielle Rückversicherungsgesellschaft Neo Technology kann kommerzielle Lizenzen bereitstellen.
Warum denkst du Neo4j ist besser? Die Clojure-Unterstützung wurde seit letztem Jahr nicht aktualisiert. –
Ich behauptete nicht, es war besser als etwas anderes :-) Aber von dem, was ich gesehen habe Graph Daten + Clojure macht eine gute Passform. Das letzte Commit auf der Bindung war vor einer Woche hier: http://github.com/bobby/clojure-neo4j – nawroth
Ich habe mit neo4j und clojure gespielt und bin bisher recht zufrieden. Sie werden wahrscheinlich andere Arten von dbs brauchen, um damit zu gehen. Ich verwende postgresql für nicht-Traversal-Abfragen. Die Wrapper-Bibliothek [Borneo [(https://github.com/wagjo/borneo] ist die zu verwendende. Machen Sie sich keine Sorgen, wenn Ihre Daten keine natürliche Graphenstruktur haben. Außerdem, Mad Wombat, rate ich dazu, Ihre dbs als Datenstrukturen zu betrachten, die für bestimmte Abfragetypen optimiert sind, und nicht als Speichermedien mit einer einzigen Quelle. –
MongoDB im Vergleich mit CouchDB: http://www.mongodb.org/display/DOCS/Comparing+Mongo+DB+and+Couch+DB
von der mongo db Seite Ich sehe, nur zu sagen :-) –
Es wird deutlich angezeigt, dass es die Mongo-Site ist. – TTT
MongoDB haben ihre eigenen BSON (binäre JSON), die eine höhere Leistung beim Mischen einer Menge von Binärdaten geben kann.
Da es intern Javascript verwendet, wäre es wahrscheinlich gut für die Javascript-Teile des Projekts. Die Daten von clj-time sind nicht kompatibel mit MongoDBs Datumsformat, obwohl java.util.Date.s dies ist.
Wenn jemand diese Frage zu sehen, ist für eine aktuelle Version von redis-clojure suchen, der mit Clojure funktioniert 1.3, hier gehen Sie: https://github.com/tavisrudd/redis-clojure
- 1. Drive Space hungrig NoSQL-Datenbanken
- 2. SQL-Injektionen mit NoSQL-Datenbanken?
- 3. Verwenden oder benötigen NoSQL-Datenbanken Indizes?
- 4. Gibt es JDBC-Implementierungen für NoSql-Datenbanken?
- 5. NoSQL und räumliche Daten
- 6. NoSQL und meteorologische Daten
- 7. Wer nutzt NoSQL-Datenbanken für die Speicherung von Krankenakten?
- 8. Spring und Mixing SQL und NoSQL db
- 9. Kennen Sie einige gute Ressourcen zum Erlernen von NoSQL-Datenbanken?
- 10. Gibt es Tools für die Schemamigration für NoSQL-Datenbanken?
- 11. Merge RDBMS und NoSQL-Datenbank
- 12. NoSQL-Normalisierungsdatenmodell
- 13. Was sind die Unterschiede zwischen den NoSQL-Datenbanken und wie unterscheiden sie sich von traditionellen relationalen Datenbanken?
- 14. Beziehung zwischen Hadoop und Datenbanken
- 15. Welche NoSQL-Datenbanken unterstützen Textarray-Spalten (und Indizes für diese Spalten) wie den Typ postgreSQL text []?
- 16. NoSQL-Best Practices
- 17. Node.JS mit NoSQL oder SQL?
- 18. NoSQL-Technologien, Anwendungsfälle, Stärken und Schwächen
- 19. NHibernate und mehrere Datenbanken
- 20. SQLAlchemy und mehrere Datenbanken
- 21. Datenbanken und Python
- 22. Master- und Slave-Datenbanken
- 23. Ruby und Datenbanken
- 24. Programmierung und Datenbanken
- 25. Matrizen und Datenbanken
- 26. Relationale Datenbanken und Mathematik?
- 27. Skalierung und Leistung SQL oder NoSQL
- 28. Serverless Embedded NoSQL für Android und iOS
- 29. Subskriptionsbasierte NOSQL-In-Memory-Datenbank
- 30. Gibt es eine NoSQL/Schlüssel-Wert-Speicher-Abstraktions-Bibliothek, wie es JDBC für Datenbanken gibt?
Was ist besser oder anders zu Redis? –
Entschuldigung, ich habe keine Informationen über andere DBs, die du erwähnt hast. Ich habe gerade "redis" zu Ihrer Liste hinzugefügt die DB, die ich versuchte, mit Clojure zu verwenden. es läuft ok, aber es gab einige Probleme mit Build auf Windows. – zmila