我的問題是非常相似的this question
區別,我需要最少的RAM密集方式來收集有關不同值的信息。在這種情況下,我不在乎實際的數量,我只是想知道該領域的可能值。
我經常用完堆空間(3000萬文件)並且必須有某種方式/參數才能以內存節省的方式做到這一點不同的SOLR字段值沒有計數
回答
我不知道RAM的使用情況,但您可能想要請嘗試Field collapsing您會發現Solr here的修補程序。
這似乎只與結果集相關。我不讓solr返回任何行。我只對方面領域感興趣 – 2010-07-16 09:03:04
如果不同值的數量很高,您可能需要進行方面分頁。使用facet.offset和facet.limit參數。
什麼是「高」?頂部字段可能有100個可能值 – 2010-07-14 14:39:50
默認值爲100,因此通常不會將其視爲「高」。但嘗試facet.limit = 10,看看它是如何發展。 – 2010-07-14 16:25:19
使用StatsComponenet檢索不同值的列表某一個領域: https://cwiki.apache.org/confluence/display/solr/The+Stats+Component
參數stats.calcdistinct
:
如果爲真,不同的值將被計算並返回爲「countDistinct」和「 distinctValues「。對於某些字段,這種計算可能會很昂貴,所以默認情況下它是錯誤的。如果只想爲特定字段返回不同的值,則還可以指定f..stats.calcdistinct,替換爲字段名稱,以將不同值計算限制爲必填字段。
爲了減少負載,儘可能少地檢索它並緩存結果,並在數據發生變化時再次檢索。
如果您的索引一般較慢,您可能需要查看緩存配置和/或給予SOLR更多RAM(如果您有辦法)。
最初回答這裏(由我):
該選項在v3.x中不可用。對於v3.x有沒有答案? – 2015-11-05 09:22:02
@ScottChu你的意思是Solr 1.3.x?這真的很古老,我已經用這個版本很長一段時間了。我認爲你可以使用術語組件來實現它,即使是1.3,因爲如果我沒有記錯的話,Luke(Solr Admin)也有這個信息。 – Risadinha 2015-11-05 11:36:47
不!我的意思是Solr 3.x.我們有一箇舊的Solr 3.5產品。我試過你的答案,但它不起作用! – 2015-11-12 02:05:17
- 1. SOLR計數多值字段查詢
- 2. 具有數萬個值的Solr字段
- 3. 嘗試根據不同字段的值計算#個字段的不同值
- 4. SOLR多值字段
- 5. Solr的多值字段串
- 6. 如何獲得solr中字段唯一值的總計數
- 7. solr fq沒有指定字段
- 8. 如何使用Solr選擇不同的字段值?
- 9. 試圖從Solr搜索中獲得不同的字段值
- 10. Solr字段:針或q =針&qf =字段不同的結果
- 11. 索引太陽黑子(Solr)中不同字段類型的不同字段
- 12. Solr一個字段根據某些條件具有不同的值
- 13. Solr:字段沒有丟失時「缺少必填字段」錯誤?
- 14. Solr在沒有任何數據時刪除分面的字段
- 15. Solr:沒有顯式設置默認值的字段默認值是什麼?
- 16. Solr dynamicField不在查詢中搜索沒有字段名稱
- 17. Solr的:搜索相同的字段或
- 18. 只搜索Solr多值字段的單個值,不跨越值
- 19. 在多值字段的計數上操作的Solr函數查詢
- 20. 加入和計數在相同的查詢沒有雙字段計算
- 21. 沒有得到不同的字符串的計數 - MySQL的
- 22. 計算Solr中多值文本字段的完整匹配
- 23. 查詢計數字段值
- 24. 計數不同值
- 25. Solr檢索未存儲字段的值
- 26. Solr pivoting獲得多個字段的值
- 27. Solr的搜索多值字段
- 28. 查詢多值字段在Solr的
- 29. 將值插入Solr的布爾字段
- 30. solr多值字段的得分
你發揮與facet.method參數? – 2010-07-14 12:38:45
nope,但由於「fc」是solr 1.4中的新默認值,所以我不知道應該放入什麼 – 2010-07-14 14:41:36
另一個是「枚舉」,但「fc」應該使用較少的內存。請參閱http://wiki.apache.org/solr/SimpleFacetParameters#facet.method – 2010-07-14 16:22:08