solr5.X的几个重要配置模板

来源:互联网 发布:ubuntu如何卸载jdk 编辑:程序博客网 时间:2024/05/14 11:33

solr5.X版本里有几个比较重要的配置文件,

如data-config.xml、dataimport.properties、managed-schema、solrconfig.xml、solr.in.sh

下面将我的测试配置模板发出来(模板中只包含了一些重要部分)。

1.data-config.xml  :

<dataConfig>
<dataSource type="JdbcDataSource" name="mysql_ds"
driver="com.mysql.jdbc.Driver"
url="jdbc:mysql://192.168.10.100:3306/car_repos"
user="123"
password="123"/>
<document>
<entity name="car"
dataSource="mysql_ds"
query="select * from t_vehicle_info"
deltaQuery="SELECT id FROM t_vehicle_info  where update_time > '${dataimporter.last_index_time}'"
deltaImportQuery="SELECT * FROM t_vehicle_info  where id='${dih.delta.id}'"
>

<field column="id" name="id" />
<field column="name" name="name" />
<field column="brand_name" name="brandName" />
<field column="family_name" name="familyName" />

</entity>
</document>
</dataConfig>


2.dataimport.properties:

#Mon Jul 06 11:37:26 UTC 2015
#  to sync or not to sync  
#  1 - active; anything else - inactive  
syncEnabled=1  
#  which cores to schedule  
#  in a multi-core environment you can decide which cores you want syncronized  
#  leave empty or comment it out if using single-core deployment  
# syncCores=game,resource #因为我的是single-core,所以注释掉了,默认就是collection1  
syncCores=userinfo
#  solr server name or IP address  
#  [defaults to localhost if empty]  
server=localhost
#  solr server port  
#  [defaults to 80 if empty]  
port=8983
#  application name/context  
#  [defaults to current ServletContextListener's context (app) name]  
webapp=solr
#  URL params [mandatory]  
#  remainder of URL  
#  增量更新的请求参数  
params=/dataimport?command=delta-import&commit=true  
#  schedule interval  
#  number of minutes between two runs  
#  [defaults to 30 if empty]  
#  这里配置的是2min一次  
interval=2
#  重做索引的时间间隔,单位分钟,默认7200,即5天;   
#  为空,为0,或者注释掉:表示永不重做索引  
#reBuildIndexInterval=7200
#  重做索引的参数  
#reBuildIndexParams=/dataimport?command=full-import&clean=true&commit=true
#  重做索引时间间隔的计时开始时间,第一次真正执行的时间=reBuildIndexBeginTime+reBuildIndexInterval*60*1000;  
#  两种格式:2012-04-11 03:10:00 或者  03:10:00,后一种会自动补全日期部分为服务启动时的日期  
#reBuildIndexBeginTime=03:10:00



3、managed-schema:


   <field name="_version_" type="long" indexed="true" stored="true"/>
     <field name="_text_" type="text_general" indexed="true" stored="false" multiValued="true"/>
    
    <field name="id" type="string" indexed="true"  stored="true" required="true" multiValued="false" />
    <field name="name" type="text_ik_edge" indexed="true"  stored="true" required="false" multiValued="false" />
    <field name="brandName" type="string" indexed="true"  stored="true" required="false" multiValued="false" />
    <field name="familyName" type="text_ik" indexed="true"  stored="true" required="false" multiValued="false" />


    <field name="complexSearch" type="text_ik_edge" indexed="true"  stored="false" required="false" multiValued="true" />
<field name="pinyin" type ="text_pinyin" indexed ="true"    stored ="false" multiValued ="true"/>

    <copyField source="brandName" dest="complexSearch"/>
    <copyField source="familyName" dest="complexSearch"/>
    <copyField source="name" dest="complexSearch"/>
<copyField source="name" dest="pinyin"/>
<copyField source="brandName" dest="pinyin"/>




 <fieldType name="text_pinyin"    class="solr.TextField" positionIncrementGap="0">
   
     <analyzer type="index">
   
         <tokenizer    class="solr.SmartChineseSentenceTokenizerFactory"/>
   
          <filter    class="solr.SmartChineseWordTokenFilterFactory"/>
   
         <filter    class="com.shentong.search.analyzers.PinyinTransformTokenFilterFactory"    minTermLenght="2" />
   
         <filter    class="com.shentong.search.analyzers.PinyinNGramTokenFilterFactory"    minGram="1" maxGram="20" />
   
      </analyzer>
   
     <analyzer type="query">
   
         <tokenizer    class="solr.SmartChineseSentenceTokenizerFactory"/>
   
         <filter    class="solr.SmartChineseWordTokenFilterFactory"/>
   
         <filter    class="com.shentong.search.analyzers.PinyinTransformTokenFilterFactory"    minTermLenght="2" />
   
         <filter    class="com.shentong.search.analyzers.PinyinNGramTokenFilterFactory"    minGram="1" maxGram="20" />
   
      </analyzer>
   
</fieldType>




4.solrconfig.xml:


<!--自定义suggest用来智能建议搜索配置开始 -->
<searchComponent name="suggest" class="solr.SpellCheckComponent">
<str name="queryAnalyzerFieldType">string</str>
<lst name="spellchecker">  
<str name="name">suggest</str>  
<str name="classname">org.apache.solr.spelling.suggest.Suggester</str>  
<str name="lookupImpl">org.apache.solr.spelling.suggest.tst.TSTLookup</str>  
<str name="field">complexSearch</str>
<float name="threshold">0.0001</float>
        <str name="comparatorClass">freq</str>
        <str name="buildOnOptimize">true</str>
<str name="buildOnCommit">true</str>     
</lst>  
</searchComponent>


<requestHandler name="/suggest" class="org.apache.solr.handler.component.SearchHandler">
     <lst name="defaults">
        <str name="spellcheck">true</str>
        <str name="spellcheck.dictionary">suggest</str>
        <str name="spellcheck.count">8</str>    
        <str name="spellcheck.onlyMorePopular">true</str>  
        <str name="spellcheck.collate">true</str> 
      </lst>
     <arr name="components">
         <str>suggest</str> 
     </arr>    
  </requestHandler>
<!--自定义suggest用来智能建议搜索配置结束 -->


<!--数据导入使用 开始-->

  <requestHandler name="/dataimport"   
     class="org.apache.solr.handler.dataimport.DataImportHandler">  
    <lst name="defaults">  
      <str name="config">data-config.xml</str>  
    </lst>  
</requestHandler> 

<!--数据导入使用 结束-->


5、solr.in.sh:


ZK_HOST="192.168.10.156:2181,192.168.10.155:2181,192.168.10.154:2181/solr"

这个配置比较重要,里面包含了启动的JVM参数,这里就不贴出来了。



0 0
原创粉丝点击