0
我想訪問自定義請求處理程序中的字段。我正在像這樣訪問每個文檔:solr-api訪問文檔字段花費了大量的時間
Document doc;
doc = reader.document(id);
DocFields = doc.getValues("state");
solr中有大約600,000個文檔。對於在所有文檔上運行的查詢,它需要超過65秒。
我也試過SolrIndexSearcher.doc
的方法,但它也需要60秒左右。
刪除上面的代碼行將qtime降低到毫秒。但是,我需要爲我的算法訪問該字段。
有沒有更好的方法來做到這一點?
我已經在查詢中使用了'*:*'。在「自定義請求處理程序」中,我需要每個文檔的特定字段值來實現算法。如上所述,爲每個文檔獲取該字段值的函數調用花費的時間太多。 –
您正在查詢代碼中的特定ID。難道你不能在Solr返回給你的代碼中迭代你的Java代碼嗎? –
不,我不能。正如我已經提到的,我需要在自定義處理程序中運行我的算法文檔。在自定義處理程序中,solr僅返回文檔的Id和分數。我正嘗試訪問另一個字段(每個文檔可能有不同的值),這是算法要求的工作。 –