2013-03-29 62 views
0

我正在用pymongo使用mongo2.4的自由文本搜索。 我想要的是獲取具有一些文本的文檔數量。在mongo shell中,增加限制是一個很好的轉換,但是從python開始,它會變得非常緩慢,因爲所有文檔都必須發送。爲了表示,與mongo shell相比,pymongo的查詢速度要慢50倍。pymongo全文搜索如何僅返回統計信息?

我用類似這樣的命令:

>>>res=db.command('text','mytable',search='eden',limit=100000) 
>>>numfound = res['stats']['nfound'] 

但正如我所說的,因爲將返回所有的文件,它實在是太慢了。有沒有一個命令來指定你不需要文件,只需要統計? 什麼是所有可用選項的列表?

THX, 科林

回答

0

我無法找到此功能的服務器的憑證 - 所以請添加一個功能要求:jira.mongodb.org然後你會得到從核心服務器開發人員的更新和反饋。

做一個文本查詢時,您可以項目,這樣就可以減少通過線路發送量 - 但仍然發送一些信息,例如:

db.mytable.runCommand("text", { search: "eden", project: {_id: 0, b: 1}}) 
+0

感謝小費 – colin

+0

這是否爲您一一解答@colin ? – Ross

+0

是的,它回答了這個問題。謝謝(我試圖爲它投票,但仍然沒有足夠的聲譽) – colin