2010-11-27 21 views
3

真実になるには、Questionタイトルだけを入力した後、私はWikiでDB索引付けについて調べました。 ここでは、一般的なインデックス作成について知っています。しかし、まだMongoDBのインデックス作成に関するいくつかの質問があります。MongoDBでのインデックス作成とは何ですか?

MongoDBではインデックス作成とは何ですか?それが正確に何をするか、私はコレクションをインデックス化する場合? MongoDBでのインデックス作成は何ができますか? 特定のデータを検索するために使用できますか?

MongoDBのコレクションには、以下のドキュメントセットで説明できますか?

{ "_id":"das23j..", "x": "1", "y":[ {"RAM":"2 GB"}, {"Processor":"Intel i7"}, {"Graphics Card": "NVIDIA.."}]} 

ありがとう!!!

+3

MongoDbのインデックスはBツリーです.Wikipediaで詳しく説明しています。http://en.wikipedia.org/wiki/B-tree – TTT

+0

その部分は、OracleやMySQLなどのRDBMSでの索引付けとほぼ同じです。 – Thilo

答えて

6

索引は、検索スペースを犠牲にして検索速度を上げます。索引は、属性(または列)のデータの追加コピーと考えてください。順序付けされたコレクションを持っている場合、バイナリ検索のようなものを実行することができます。これは、シーケンシャル検索よりもはるかに高速です(データが順序付けられていない場合に必要です)。索引を使用して必要なデータを見つけたら、対応するレコードを参照することができます。

その列のデータの「順序付けられた」コピーを格納するために追加スペースが必要であり、新しいレコードを正しい順序で挿入する必要があるため、わずかなスピードのトレードオフがあります。働く

mongodb索引付けの詳細は、http://www.mongodb.org/display/DOCS/Indexesを参照してください。

+0

ロードマスター、良い、簡潔な説明、よくできました。 – raffian

関連する問題