<?xml version="1.0" ?> <schema name="metasearch" version="1.1"> <types> <!-- not analyzed--> <fieldType name="string" class="solr.StrField" sortMissingLast="true" omitNorms="true" /> <fieldType name="boolean" class="solr.BoolField" sortMissingLast="true" omitNorms="true" /> <fieldType name="sint" class="solr.SortableIntField" sortMissingLast="true" omitNorms="true" /> <fieldType name="slong" class="solr.SortableLongField" sortMissingLast="true" omitNorms="true" /> <fieldType name="sfloat" class="solr.SortableFloatField" sortMissingLast="true" omitNorms="true" /> <fieldType name="sdouble" class="solr.SortableDoubleField" sortMissingLast="true" omitNorms="true" /> <fieldType name="tdouble" class="solr.TrieDoubleField" precisionStep="8" omitNorms="true" positionIncrementGap="0"/> <!-- The format for this date field is of the form 1995-12-31T23:59:59Z --> <fieldType name="date" class="solr.DateField" sortMissingLast="true" omitNorms="true" /> <fieldType name="tdate" class="solr.TrieDateField" omitNorms="true" precisionStep="0" positionIncrementGap="0"/> <!--//todo 确定多长的文本需要compress--> <fieldType name="text" class="solr.TextField" positionIncrementGap="100" compressThreshold="1000"> <analyzer type="index"> <tokenizer class="solr.StandardTokenizerFactory" /> <filter class="solr.WordDelimiterFilterFactory"/> <filter class="solr.LowerCaseFilterFactory" /> </analyzer> <analyzer type="query"> <tokenizer class="solr.StandardTokenizerFactory" /> <filter class="solr.WordDelimiterFilterFactory"/> <filter class="solr.LowerCaseFilterFactory" /> </analyzer> </fieldType> </types> <fields> <field name="id" type="slong" indexed="true" stored="true" required="true" /> <field name="msg" type="text" indexed="true" stored="false" required="true" /> <field name="add_datetime" type="tdate" indexed="true" stored="false" required="false" /> <field name="last_replied_datetime" type="tdate" indexed="true" stored="false" required="false" /> </fields> <uniqueKey>id</uniqueKey> <!-- field for the QueryParser to use when an explicit fieldname is absent --> <defaultSearchField>msg</defaultSearchField> <!-- SolrQueryParser configuration: defaultOperator="AND|OR" --> <solrQueryParser defaultOperator="AND" /> </schema>
indexed Field 可以进行搜索和排序。您还可以在 indexed Field 上运行 Solr 分析过程,此过程可修改内容以改进或更改结果。
stored Field 内容保存在索引中。这对于检索和醒目显示内容很有用,但对于实际搜索则不是必需的。