間の本質的な違いがあるのCouchDBとCouchbaseのは。
間の本質的な違いがあるのCouchDBとCouchbaseのは。
回答:
CouchDBとCouchbase Serverの間には、指摘しなければならない本質的な違いがあると思います。
CouchDBからCouchbase Serverへの切り替えの利点についてはほとんどどこでも説明されているので、ここでは触れません(Damien KatzによるCouchDBの未来または CouchbaseとCouchbaseに よるApache CouchDBの比較を参照)。代わりに、Couchbase ServerにはないCouchDBの機能を列挙してみます。
CouchDBとCouchbaseに関連するすべての名前は本当に混乱する可能性があるため、最も重要なものの簡単な説明から始めるために、この回答を更新しました。
CouchDB、CouchIO、CouchOne、Couchbase、Couchbase Server、Couchbase Mobile、Couchbase Lite、CouchApps、BigCouch、Touchbase、Membase、Memcached、MemcacheDBなどがありますが、名前だけからは明らかではない方法で関連付けられています。
最初に、元IBM開発者のDamien Katzが作成したデータベースであるCouchDBがありました。その正式名称は、Apacheプロジェクトとなった後にApache CouchDBに変更されました。
CouchIOという名前の会社がApache CouchDBで動作するように設立され、後にその名前をCouchOneに変更しました(「その名前」とは、データベース名ではなく会社名を意味します)。
CouchOne(以前のCouchIO)はMembase(以前のNorthScale)と合併して、Couchbaseという新しい会社を設立しました。Membase(会社)はMembase(同じ名前の製品)を開発しました。Membaseは、Memcachedプロジェクトの複数のリーダーによって作成され、Memcachedプロトコルを使用していました。CouchOneとMembaseの合併後、CouchbaseはMembaseソフトウェアの開発を継続し、後にその名前をCouchbase Serverに変更しました。
今日私は、ほとんどの人がCouchbase ServerがCouchDBの新しいバージョンであると信じていると思いますが、実際にはそれはMembaseの新しいバージョンです。それでも、CouchDBのRESTful APIではなく、Memcachedプロトコルを使用します。一方、CouchDBは引き続きCouchDBであり、Apacheプロジェクトとして積極的に維持および拡張されています。
次に、関連する違いについて説明します。
Couchbase Serverは完全にオープンソース / フリーのソフトウェアではありません。2つのバージョンがあります:Community Edition(無料ですが、最新のバグ修正はありません)とEnterprise Edition(使用に関する制限、機密保持規定、Couchbase Inc.による監査があり、「ライセンシーの施設で通常の営業時間中に行われます」とその他の一般的な条件があります。多くの人々が受け入れられないかもしれない独占的なソフトウェアに)。
CouchDBは、Apache Software Foundationのオープンソース/無料ソフトウェア(文字列は添付されていません)プロジェクトであり、Apache License、Version 2.0(DFSG互換、FSF承認、OSI承認、GPL互換、非コピーレフトでリリースされています。、商業向け)。
直接指摘したことはありませんが、特定の機能、API、またはライセンスだけでなく、分散コンピューティングモデルの根本的な哲学に深く関わっているので、これは実際にはこれら2つのデータベースの最も重要な違いかもしれません。CouchDBとCouchbase Serverは、分散システムとデータベースを構築するという考え方が完全に異なります。
CAPの定理によれば、分散データベースが一貫性、可用性、パーティション許容度を同時に提供することは不可能です。
CouchDBはAPタイプのシステムです(可用性とパーティションの許容範囲を提供します)。
Couchbase Serverは、CPタイプシステム(Wikipediaによる)またはCAタイプシステム(Couchbaseテクニカルアップデートによる)のどちらかです。どちらが正しいですか。コメントしてください。
これは、Couchbase ServerでサポートされていないCouchDB機能のリストであることがわかりました。
CouchDBのこれらの機能は、ユーザーにとって重要である場合とそうでない場合があるため、それらの欠如が不利益であるかどうかは厳密に主観的ですが、CouchDBからCouchbase Serverに切り替えるかどうかの決定は、それらの違いと現在のCouchDBデプロイメントにおけるそれらの機能への依存。
たとえば、CouchDBの変更フィード Mikeal RogersによるNodeCampトーク、またはJ. Chris Andersonによる素晴らしいCouchAppチュートリアルの1つを見た後でCouchDBに興味がある場合は、Couchbase Serverに切り替えたい場合は、彼らが話していたほとんどすべてを忘れなければならないでしょう。
そのため、Couchbase ServerはMemcachedとMembaseの進化(CouchDBの進化ではない)のように見えるため、現在MemchachedまたはMembaseを使用している場合は優れた製品のように見えます。CouchDBを最も基本的な方法で使用している場合は、同じ目的でCouchbase Serverを使用することを検討してください(ライセンスの制限を気にしない場合)。ただし、実際にCouchDBに固有の機能(変更フィード、CouchApps、2層アーキテクチャー、ピアツーピアレプリケーションなど)を使用している場合は、それらの機能を忘れるか、CouchDBを使い続けることができます。いずれの場合でも、切り替えを考える前に、CouchDBユーザー向けのCouchbaseへの移行のチュートリアルを読んで理解してください。
「CouchDBの未来は何か?それはCouchbaseです。」などを読んだ後、CouchDBがCouchbase Serverによって何らかの形で廃止されている、またはCouchbaseの古いレガシーバージョンであるという印象をよく受けます。一方、CouchDBはアクティブに維持されているオープンソースプロジェクトであり、Couchbaseサーバーは完全に別のプロジェクトです(これは新しいプロジェクトですが、CouchDBの新しいバージョンではありません-互換性さえありません)。開発中(たとえばKansoプロジェクトを参照)、CouchDBはすぐには機能しません。
それが混乱を明確にすることを願っています。ここで何か間違っている場合は修正してください。
Couchbase Serverは実際にはMembase Serverの新しい名前です(Membase Serverはバージョン1.8前後のどこかでCouchbase Serverに名前が変更されました)。Couchbase 2011 Year in Reviewをご覧ください。
残念ながら、私たちは潜在的なユーザーの多くを混乱させました。Membaseサーバーと新しいモバイル製品に加えて、Apache CouchDBの「配布」パッケージであるCouchbaseシングルサーバーも提供しました。さらに、CouchDBテクノロジーをMembaseサーバーに組み込んだCouchbase Server 2.0の開発者向けプレビューのリリースを開始しましたが、この製品はCouchbase Single Server(またはCouchDB)と互換性がありませんでした。[...] Membase Serverは、1月の次のリリースでCouchbase Server 1.8に名前が変更されます。これは、「名前」の混乱を軽減する小さなステップです。当初から計画されていたように、Couchbase Server 2.0リリース(現在はDeveloper Preview 3)では、インデックスとクエリ機能が追加されます。Couchbase Server 2.0にはCouchDBプロジェクトの重要なテクノロジーが組み込まれますが、CouchDBとの上位互換性がないため、「CouchDBのバージョン」と見なすべきではありません。【強調追加】
それらは異なるが類似したソフトウェアです。上位の回答のコンテンツを、「違い」や一般的なことを明確にするのに役立つ画像に再構成しました。
Matt Ingenthronからのコメントはこれに追加します:
コンテキスト/修正を追加するには:NorthScaleの創設者はSteve YenとDustin Sallingsです。創業して間もなく参加しました。また、Damienは後にCouchbaseに参加せず、合併前はCouchIO / Couch Oneのメンバーでした。楽しく歴史的な情報源:https : //youtube.com/watch?v=aZ_JOnU8tkI
CouchBaseは、CouchDBの「エンタープライズ」の代替として認識されているように思えます。これはある意味で本当のようです。CouchDBと比較して、ファイルをレコード(ドキュメント)に添付する機能と「すぐに使える」RESTエンドポイントが不足していることを除けば、CouchBaseにはSQLのような言語、つまりN1QL(時々Nickelと発音される)があります。これが、私が「NoSQL」という用語の使用を本当に好まない/推奨しない理由の1つです。私は個人的に「非リレーショナル」という言葉が好きです。