PGメモ

非エンジニアの記録

solrで日本語形態素解析を使う

<?xml version="1.0" ?>

<schema name="title and description" version="1.1">
  <types>
    <fieldtype name="string"  class="solr.StrField" sortMissingLast="true" omitNorms="true" />
    <fieldType name="long" class="solr.TrieLongField" precisionStep="0" positionIncrementGap="0" />
    <fieldType name="text_ja" class="solr.TextField">
      <analyzer>
        <tokenizer class="solr.JapaneseTokenizerFactory" mode="search" userDictionary="lang/userdict_ja.txt" />
      </analyzer>
    </fieldType>
  </types>

 <fields>
  <!-- general -->
  <field name="id"  type="string"   indexed="true"  stored="true"  multiValued="false" required="true"/>
  <field name="title"  type="text_ja"   indexed="true"  stored="true"  multiValued="false" required="true"/>
  <field name="description"  type="text_ja"   indexed="true"  stored="true"  multiValued="false" required="true"/>
  <field name="_version_" type="long"      indexed="true"  stored="true"/>
 </fields>

こんな感じでsolr.JapaneseTokenizerFactoryを使う事で日本語形態素解析が使えるので
後は使いたいフィールドに適用するだけです。

※要solrの再起動とインデックスの張り直し