簡體   English   中英

更喜歡Apache Lucene而不是Solr的情況?

[英]Situations to prefer Apache Lucene over Solr?

使用Solr 1.4(開箱即用的分面搜索,分組,復制,http管理與luke,......)有幾個優點。

即使我在我的Java應用程序中嵌入了搜索功能,我也可以使用SolrJ來避免在使用Solr時進行HTTP權衡。 是SolrJ推薦的嗎?

那么,你什么時候推薦使用“純Lucene”? 它有更好的性能還是需要更少的RAM? 是否可以更好地進行單元測試?

PS:我知道這個問題

如果您有一個Web應用程序,請使用Solr - 我嘗試集成兩者,並且Solr更容易。 否則,如果您不需要Solr的功能(想到最重要的功能是分面搜索),那么請使用Lucene。

如果您想在搜索應用程序中完全嵌入搜索功能,並且不想維護像Solr這樣的單獨進程,那么使用Lucene可能更可取。 例如,桌面應用程序可能需要一些搜索功能(例如使用Lucene搜索其文檔的Eclipse IDE)。 您可能不希望這種應用程序啟動像Solr這樣繁重的過程。

這是我必須使用Lucene的一種情況。

給出一組文檔,找出其中最常見的術語。

在這里,我需要訪問每個文檔的術語向量(使用TermVectorMapper的低級API)。 使用Lucene非常容易。

另一個用例是搜索結果的非常專業的排序。 例如,我想要搜索一個作者姓名(誰寫了多本書),從前10個結果中的每個商店得到一本書。 在這種情況下,我會找到每家書店的結果並顯示最終結果,我會從每家書店中選擇一個結果。 在這里,您實際上是在進行多次搜索以生成最終結果。 訪問lucene的低級API肯定有幫助。

去Lucene的另一個原因是盡快獲得新的好東西。 這不再是真的,因為它們已經合並並且將有同步版本。

我很驚訝沒有人提到NRT - 近實時搜索,可用Lucene,但不是Solr(還)。

如果您更關注可伸縮性而不是性能,請使用Solr;如果您更關注性能而不是可伸縮性,請使用Lucene。

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM