Имеет ли значение порядок ключей в документе MongoDB BSON? - PullRequest
5 голосов
/ 15 декабря 2010

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

например.

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

Будет ли работать на обоих:

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

Спасибо

1 Ответ

2 голосов
/ 15 декабря 2010

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

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

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

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

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

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

...