Solr中我有以下字段對文本字段(每個> 1KB)進行精確短語搜索的正則表達式:任何改善solr正則表達式搜索性能的建議?
<fieldType name="text_keyword_lowercase" class="solr.TextField" positionIncrementGap="100">
<analyzer>
<tokenizer class="solr.KeywordTokenizerFactory"/>
<filter class="solr.LowerCaseFilterFactory" />
</analyzer>
</fieldType>
- 正則表達式搜索文本的開頭是超級快 預期(
/sear.* ph.ase.*/
); - 其他人,中間和結尾(
/.*sear.* ph.ase.*/
,/.*sear.* ph.ase/
)是 慢(在Solr的20萬個文件內搜索把我的工作站上以防萬一 900毫秒);
要求是能夠在幾秒鐘內搜索幾億個文檔。 關於提高後兩者性能的任何建議? 或者,也許對不同的方法/工具的建議?
你的正則表達式中'。*'的用途是什麼? – MikeM
@MikeM對不起,這篇文章有一個格式錯誤。 '。*'表示可以有零個或多個字符。 – Rahim
是的,我只是想知道,如果你正在執行「精確的短語正則表達式搜索」他們提供了什麼目的。 – MikeM