私の場合、the documentationはかなり明快で簡単です。これは、SQLの古い学校の方法に言及している:
SQLデータベースのインデックスインデックスがどのように機能するかについて
クイック補習:MySQLとPostgreSQLのような リレーショナルデータベースでは、あなたが通常 どんなフィールドにあなたを照会することができます欲しい:
SELECT * FROM pokemon WHERE name = 'Pikachu';
しかし、あなたはあなたのパフォーマンスがひどいことしたくない場合は、まず インデックスを追加します。
ALTER TABLE pokemon ADD INDEX myIndex ON (name);
インデックスのジョブのでクエリはOではなく O(N)時間(ログ(n))を実行時、フィールドはデータベース内のBツリー に格納されていることを確認することです。
そこから、それはNoSQLのと比較すると起動します:上記のすべては、CouchDBのと のMongoDBなどのドキュメント店でも同様ですが、概念的のNoSQLデータベースで
インデックス
をそれは少し異なります。デフォルトで のドキュメントは、1つの主キー (MongoとCouchの両方で_idと呼ばれます)を持つスキームレスブロブであるとみなされ、他のキーは個別に である必要があります。概念はほぼ同じです。それはほとんどが の異なる語彙です。
CouchDBでは、クエリはmap/reduce関数と呼ばれます。これは、 がNoSQLデータベースのように、CouchDBは 複数のコンピュータにまたがり、 パラレルで効率的なクエリ操作を実行できるように設計されているからです。基本的には、クエリをマップ 関数とreduce関数に分割し、それぞれがマルチノードクラスタで並列に で実行される可能性があります。
マップ/リデュース機能、一時的/永続的なビューなどに関する説明とサンプルコードが続きます。
何を試しましたか?あなたはそれでどんな問題を抱えていますか? – Flimzy