2012-09-13 33 views
1

與結構130K元素的集合:

{ 
    "tags": ["restaurant", "john doe"] 
} 

有40K的文件與「餐廳」的標籤,但只能用「無名氏」 2。所以接下來的疑問是不同的:

// 0.100 seconds (40.000 objects scanned) 
{"tags": {$all: [/^restaurant/, /^john doe/]}} 

// 0.004 seconds (2 objects scanned) 
{"tags": {$all: [/^john doe/, /^restaurant/]}} 

這是有辦法優化查詢,而無需在客戶端排序來解決?我現在能夠想象的唯一方法是在搜索陣列開始時放置較不頻繁的標籤。

回答