solr schema.xml文檔節點配置

首先,講解一下/usr/local/solr/collection1/conf/schema.xml的配置,此文檔功能相似於配置索引數據庫。數據庫

Field:相似於數據庫字段的屬性(此文統一使用用「字段」描述它),請看一條fieldapache

<field name="user" type="string" indexed="true" stored="true" multiValued="true" /> 

name:當前字段名 type:當前字段使用的分詞類型(在schemal.xml文件的fieldType中進行配置) indexed:當前字段進行索引(當用戶查詢時能夠使用到該字段) stored:當前字段進行存儲(當用戶查詢到該字段時,能返回字段的原文) multiValued:當前字段可存在多個值(如:user字段可存儲多個用戶)svn

fieldType:字段處理,此類節點能夠配置各類數據類型的處理方式,如:分詞,過濾測試

<fieldType name="textComplex" class="solr.TextField">  
  <analyzer>  
    <tokenizer class="com.chenlb.mmseg4j.solr.MMSegTokenizerFactory" mode="complex" dicPath="/usr/local/solr/dic"/>  
  </analyzer>  
</fieldType>  

copyField:當添加一條索引時,可將source字段的值複製到dest字段上去,可設置多個source字段指向同一個dest字段,這樣對dest進行索引的話,能夠查詢到全部source字段的索引。this

如:在一個新聞系統中,將標題,內容複製到一個統一的字段,這樣搜索all字段時,只要title,content中任意存在就能被搜索到。spa

<copyField source="title" dest="all"/>
<copyField source="content" dest="all"/>

 

OK,此文檔配置成功後,接下來能夠添加一條索引試試效果,在solr的後臺管理界面能夠直接添加索引,並作查詢,分析測試。code

solr爲咱們準備了一些文檔添加實例,能夠參考一下:http://svn.apache.org/repos/asf/lucene/dev/trunk/solr/example/exampledocs/xml

複製代碼
<add>
  <doc>
    <field name="employeeId">05991</field>
    <field name="office">Bridgewater</field>
    <field name="skills">Perl</field>
    <field name="skills">Java</field>
  </doc>
  [<doc> ... </doc>[<doc> ... </doc>]]
</add>
複製代碼

 

此配置文檔還有兩個重要的配置節點blog

  <uniqueKey>節點用於配置主鍵,跟數據庫主鍵功能相似,主要用於標示一條數據,當要刪除一條數據時能夠用該值精肯定位,當添加數據主鍵重複時可設置是覆蓋,仍是更新。索引

 <uniqueKey>clipId</uniqueKey>

   <defaultSearchField>節點用於配置查詢默認字段,當查詢數據時,未指定具體查詢字段,將使用該默認字段。

 <defaultSearchField>_all</defaultSearchField>
相關文章
相關標籤/搜索