2009-06-05 85 views

回答

4

MultiSearcher的主要缺點是在將來自多個搜索者的結果合併到一組匹配中時存在一些開銷。這與您未經優化的指數所遭受的懲罰相似,儘管可能並不嚴重—這取決於涉及多少搜索者。

但是,如果您有大量文檔或需要頻繁更新,則MultiSearcher可能非常有用。如果您有一個龐大的數據庫,它可以讓您將文檔拆分爲多個組,並行編入索引,然後一起搜索。如果您需要頻繁更新,您可能會發現一個MultiSearcher具有一個文件系統目錄,一個RAM目錄可爲您提供快速索引更新。新文檔進入RAM目錄,並定期將RAM目錄的內容合併到文件系統目錄中。

也請考慮ParallelMultiSearcher。根據您的機器體系結構和查詢負載,這可能會受到傷害或幫助。如果你有很多內核,它可能會有所幫助,但是線程會涉及額外的開銷,所以它需要在代表負載下進行一些分析。

+0

你能回答這個嗎? http://stackoverflow.com/questions/899542/problem-using-same-instance-of-indexsearcher-for-multiple-requests – 2009-06-12 02:41:26