2010-12-15 9 views
5

Я знаю, что некоторые комманды нуждаются в упорядочении хэш-карты/словаря, но действительно ли имеет место документ BSON в MongoDB, и будет ли индекс работать?Имеет ли ключевой порядок вопрос в докторе MongoDB BSON?

E.g.

db.people.ensureIndex({LName:1, FName:1}); 

Будет ли это работать как:

{LName:"abc", FName:"def"}, 
{FName:"ghi", LName:"jkl"} 

?

Благодаря

ответ

2

Порядок свойств документа не влияет на индексацию.

Вы можете увидеть это для себя, выполнив запрос:

db.people.find({LName: "abc"}).explain() 

, а затем этот запрос:

db.people.find({LName: "jkl"}).explain() 

вы должны увидеть, что MongoDB будет использовать индекс в обоих случаях (cursor собственности должно быть что-то вроде "BtreeCursor LName_1_FName_1").