Unterschied zwischen CouchDB und Couchbase
Gibt es keine wesentlichen Unterschiede zwischen CouchDB und Couchbase die einen oder die anderen bevorzugt zu verwenden?
Kommentar zu dem Problem
Verwirrt über die Namen? So war ich, so begann ich durch mischen der Namensgebung info aus dem dieses top-Antwort in eine Visualisierung der Benennung Geschichte, die dazu beitragen sollen, verstehen diese Angaben.
@Jeroen Das ist eine wunderbare Visualisierung. Sollte es bearbeitet werden, in die top-Antwort?
@shoover Thx, bin froh, dass es geholfen hat.Ich kann es nicht ganz beurteilen, ob es genau genug, aber wenn rsp (der Haupt-Autor der Antwort) / die Gemeinschaft hält es für würdig, dann fühlen Sie sich frei, Sie gehören unter die SO Lizenz.
InformationsquelleAutor der Frage yojimbo87 | 2011-04-07
Du musst angemeldet sein, um einen Kommentar abzugeben.
Haben wir geschrieben, in dem Ausführlicher die Beziehung zwischen CouchDB und Couchbase. In einer nussschale, Couchbase Server nimmt alle zäh NoSQL Güte von CouchDB, und gibt es die knackig harte Kante eines memcache Zuckerguss.
Wenn Sie neu sind NoSQL, im Grunde, Sie speichern Sie Ihre JSON-in Couchbase. Es ist sehr schnell und kann Skalierung auf bis zu Verkehrslasten, wie groß Sie sind wahrscheinlich zu sehen.
Wie eine relationale Datenbank, es gibt Sie wieder, was Sie gespeichert, wenn Sie es brauchen. Yay Datenbanken!
Im Gegensatz zu einer relationalen Datenbank, anstatt dass Sie geben Sie vor, was Sie gehen, um zu speichern, können Sie einfach speichern Sie es (wir sind ein drop-in-upgrade", wenn Sie mit memcached) und wir werden Ihnen helfen, Sortieren Sie aus später.
InformationsquelleAutor der Antwort J Chris A
Ich denke, es gibt einige wesentliche Unterschiede zwischen CouchDB und Couchbase Server, müssen darauf hingewiesen werden.
Ich werde nicht schreiben über die Vorteile der Umstellung von CouchDB auf den Couchbase Server, weil diejenigen, die beschrieben sind ziemlich überall (siehe Die Zukunft von CouchDB von Damien Katz oder
Couchbase vs. Apache CouchDB
von Couchbase). Stattdessen werde ich versuchen, aufzuzählen, features von CouchDB zu, dass Sie nicht in der Couchbase Server.
Alle Namen, die im Zusammenhang mit CouchDB und Couchbase kann wirklich verwirrend, so dass ich aktualisiert diese Antwort, um zu beginnen, mit einer kurzen Erklärung der wichtigsten.
Namen und Verwirrung
Es ist CouchDB, CouchIO, CouchOne, Couchbase, Couchbase Server, Couchbase Mobile Couchbase Lite, CouchApps, BigCouch, Touchbase, Membase, Memcached, MemcacheDB... die alle unterschiedliche und doch Verwandte in einer Weise, die nicht immer offensichtlich, aus dem Namen allein.
Erste, es war CouchDB, eine Datenbank erstellt und von Damien Katz, einem ehemaligen IBM-Entwickler. Sein offizieller name war geändert zu Apache CouchDB nach wurde es zu einem Apache-Projekt.
Einer Firma namens CouchIO wurde gegründet, um die Arbeit auf Apache CouchDB und änderte später seinen Namen zu CouchOne ("seinen Namen" ich meine, der name des Unternehmens - nicht der name der Datenbank).
CouchOne (ehemals CouchIO) fusioniert mit Membase (ehemals NorthScale), um ein neues Unternehmen mit dem Namen Couchbase. Membase (die Firma) entwickelt, Membase (ein Produkt mit dem gleichen Namen). Membase wurde erstellt, indem einige Führer des Memcached-Projekts, und es verwendet das Memcached-Protokoll. Nach der Fusion von CouchOne und Membase, Couchbase weiterhin die Entwicklung der Membase software und änderte später seinen Namen Couchbase Server.
Heute denke ich, die meisten Menschen glauben, dass Couchbase Server ist eine neue version von CouchDB, aber es ist in der Tat eine neue version von Membase. Es verwendet noch das Memcached-Protokoll und nicht für die RESTful API von CouchDB. Inzwischen CouchDB ist noch CouchDB, aktiv gepflegt und ständig erweitert als Apache-Projekt.
Nun zu den relevanten Unterschiede:
Lizenzierung
Den Couchbase Server, ist nicht ganz open-source/freie software. Es gibt zwei Versionen: Community Edition (kostenlos, aber keine neuesten bug-fixes) und Enterprise Edition (es gibt Einschränkungen hinsichtlich der Nutzung, der Geheimhaltung Vorschriften, audits durch Couchbase Inc. "durchgeführt werden, wird während der regulären Geschäftszeiten an den Lizenznehmer Einrichtungen" und andere Begriffe typisch für proprietäre software, dass viele Menschen nicht akzeptabel).
CouchDB ist ein open-source/free software (no strings attached) Projekt Der Apache Software Foundation und ist veröffentlicht unter der Apache-Lizenz, Version 2.0 (DFSG-kompatibel, FSF genehmigt, OSI-approved, GPL-kompatibel, nicht-copyleft -, Gewerbe-freundlich).
Philosophie
Habe ich noch nie gesehen es direkt darauf hingewiesen, aber vielleicht ist das tatsächlich der wichtigste Unterschied zwischen diesen beiden Datenbanken, da ist es tief über die zugrunde liegende Philosophie der verteilten computing-Modelle und nicht nur über bestimmte Funktionen, APIs oder Lizenzierung. CouchDB und Couchbase Server komplett unterscheiden sich in Ihrer Philosophie, den Aufbau verteilter Systeme und Datenbanken.
Entsprechend der CAP-theorem es ist unmöglich für eine verteilte Datenbank zum gleichzeitigen bereitstellen von Konsistenz, Verfügbarkeit und partition tolerance.
CouchDB ist ein AP type system (bietet Verfügbarkeit und Partition tolerance).
Couchbase Server ist ENTWEDER ein CP type system (nach Wikipedia) ODER eine CA type system (nach Couchbase technical update) - , WELCHE DIESER KORREKT IST? BITTE KOMMENTIEREN.
Funktionen
Dies ist, was ich gefunden, um eine Liste von CouchDB features, die nicht unterstützt von der Couchbase Server:
Diese features von CouchDB werden können oder nicht, wichtig ist, dass Sie so ist, ob das fehlen von Ihnen ist ein Nachteil, oder nicht, ist streng subjektiv, aber ich denke, dass die Entscheidung, ob ein wechseln von CouchDB, Couchbase Server oder nicht, sollte auf diese Unterschiede und Ihre Abhängigkeit auf diese Funktion in Ihre aktuelle CouchDB-Bereitstellungen.
Zum Beispiel, wenn Sie haben interessiert, CouchDB, nachdem ich Die CouchDB-änderungen-feed NodeCamp Vortrag von Mikeal Rogers oder einer der großen CouchApp tutorials von J. Chris Anderson, dann müssen Sie erkennen, dass, wenn Sie wechseln wollen, auf den Couchbase Server, dann haben Sie vergessen, über so ziemlich alles, was Sie reden.
Weil das so ist, würde ich sagen, dass Couchbase Server sieht aus wie eine Weiterentwicklung von Memcached und Membase (nicht eine Entwicklung von CouchDB) und als solche sieht es aus wie ein großartiges Produkt, wenn Sie derzeit mit Memchached oder Membase. Wenn Sie mit CouchDB in der einfachsten Weise, dann können Sie erwägen, mit dem Couchbase Server für die gleichen Dinge und es kann oder kann nicht besser (wenn Sie nichts dagegen haben die Einschränkungen der Lizenz). Aber wenn Sie tatsächlich nutzen die features, die einzigartig sind in CouchDB (wie die änderungen-feed, CouchApps, zwei-tier-Architektur, peer-to-peer-Replikation usw.) dann können Sie entweder vergessen diese features oder bleiben Sie mit CouchDB.
In jedem Fall stellen Sie sicher, zu Lesen und zu verstehen, die Migration zu Couchbase für CouchDB-Anwender tutorial, bevor Sie denken über einen Wechsel.
Menschen oft den falschen Eindruck (vielleicht nach dem Lesen Dinge wie "Was ist die Zukunft von CouchDB? Es ist Couchbase."), dass CouchDB ist irgendwie überholt von der Couchbase Server, oder es ist eine alte, ältere version von Couchbase. Mittlerweile CouchDB ist mit einem aktiv gepflegten open-source-Projekt, Couchbase server ist ein komplett separates Projekt (es ist ein neueres Projekt, aber es ist nicht eine neuere version von CouchDB - Sie sind auch nicht kompatibel) und da auch neue Werkzeuge für das erstellen von CouchApps noch immer entwickelt (zB. finden Sie die Kanso Projekt), dann CouchDB ist nicht überall bald.
Ich hoffe das klärt die Verwirrung. Bitte korrigieren Sie mich, wenn ich falsch bin, auf alles hier.
Update:
Couchbase Server ist eigentlich ein neuer name für die Membase Server (die Membase Server wurde umbenannt, um Couchbase Server irgendwo um version 1.8). Sehen Couchbase 2011 das Jahr im Rückblick:
Siehe auch:
InformationsquelleAutor der Antwort rsp
Sind Sie anders noch ähnliche Stücke von software. Ich habe remixed den Inhalt von die top-Antwort in ein Bild, das helfen könnte, zu klären, die "Differenz" sowie die gemeinsamen Dinge:
Einen Kommentar von Matt Ingenthron fügt hinzu:
InformationsquelleAutor der Antwort Jeroen
Couchbase Lite implementiert die CouchDB-Replikation-Protokoll und ist zu 100% kompatibel mit CouchDB. Allerdings Couchbase Server erfordert keine bestimmte Dokument-Metadaten, die CouchDB-Dokumente enthalten, aus performance-Gründen. Sync-Gateway ist, wie die notwendigen meta-Daten Hinzugefügt wird, Couchbase Server.
InformationsquelleAutor der Antwort Marcos Gotado