想法占位
Solr cache sizes should be tuned to the number of documents in the
index, the queries, and the number of results you usually get from Solr.
我想,我应该做一个自动调整缓存的功能。先占个位,等全面了解完 solr 后再行实行。
Solr cache sizes should be tuned to the number of documents in the
index, the queries, and the number of results you usually get from Solr.
我想,我应该做一个自动调整缓存的功能。先占个位,等全面了解完 solr 后再行实行。
接下来本来应该讲解 Solr 自带的分词器、过滤器和语言分析,鉴于这一部分内容多而繁琐,很多在中文处理中用不到,暂时先略过,以后有时间补上。
文本字段的分词器配置在 schema.xml 中的 <analyzer> 元素下的:
<br /> <fieldType name="text" class="solr.TextField"><br /> <analyzer type="index"><br /> <tokenizer class="solr.StandardTokenizerFactory" /><br /> <filter class="solr.StandardFilterFactory" /><br /> </analyzer><br /> </fieldType><br />
这个class属性指明一个工厂类,这个工厂类在需要的时候可以产生一个分词器的实例。分词器工厂类实现了 org.apache.solr.analysis.TokenizerFactory ,TokenizerFactory 的 create 方法接受一个 reader 然后返回一个 TokenStream。当 solr 创建了分词器,通过一个 reader 传递文本的字段内容给分词器。
<br /> <fieldType name="semicolonDelimited" class="solr.TextField"><br /> <analyzer type="query"><br /> <tokenizer class="solr.PatternTokenizerFactory" pattern="; " /><br /> <analyzer><br /> </fieldType><br />
<fieldType name="text" class="solr.TextField"><br /> <analyzer><br /> <tokenizer class="solr.StandardTokenizerFactory"/><br /> <filter class="solr.StandardFilterFactory"/><br /> <filter class="solr.LowerCaseFilterFactory"/><br /> <filter class="solr.EnglishPorterFilterFactory"/><br /> </analyzer><br /> </fieldType>
<br /> <fieldType name="text" class="solr.TextField"><br /> <analyzer><br /> <tokenizer class="solr.StandardTokenizerFactory"/><br /> </analyzer><br /> </fieldType><br />
在两个时间需要用到分析。在索引时,当一个字段被创建时,分析这个字段得到的 token stream 将被加入索引库,并且定义出这个字段的 terms(包括位置、大小等等)。在查询时,搜索词将被分析,并且去字段的索引中匹配相应的 terms。
<br /> <fieldType name="nametext"><br /> <analyzer *type="index"{*}><br /> <tokenizer/><br /> <filter/><br /> <filter words="keepwords.txt"/><br /> <filter synonyms="syns.txt"/><br /> </analyzer><br /> <analyzer *type="query"{*}><br /> <tokenizer/><br /> <filter/><br /> </analyzer><br /> </fieldType><br />
<br /> <fieldType name="nametext" class="solr.TextField"><br /> <analyzer class="org.apache.lucene.analysis.WhitespaceAnalyzer"/><br /> </fieldType><br />
<br /> <fieldType name="nametext" class="solr.TextField"><br /> <analyzer><br /> <tokenizer class="solr.StandardTokenizerFactory"/><br /> <filter class="solr.StandardFilterFactory"/><br /> <filter class="solr.LowerCaseFilterFactory"/><br /> <filter class="solr.StopFilterFactory"/><br /> <filter class="solr.EnglishPorterFilterFactory"/><br /> </analyzer><br /> </fieldType><br />
<schema><br /> <types><br /> <fields><br /> <uniqueKey><br /> <defaultSearchField><br /> <solrQueryParser defaultOperator><br /> <copyField><br /> </schema>
其中最重要的是 types 和 fields,另外包括 复制字段、唯一键、默认查询操作符
<br /> <solrQueryParser defaultOperator="OR"/><br />
Copyright © All Rights Reserved · Green Hope Theme by Sivan & schiy · Proudly powered by WordPress 闽ICP备18020075号-1