说明:请务必先了解如下知识,否则阅读本文会晕。

 Solr术语介绍:SolrCloud,单机Solr,Collection,Shard,Replica,Core之间的关系

Solr通过三个主要文件来作配置:solr.xml,solrconfig.xml,shema.xml。在Solr 4.5以前,(SolrCloud的)solr.xml不放在zookeeper上,其他的配置文件都存在zookeeper。Solr 4.5开始,solr.xml也支持放在zookeeper。(见开源问题单SOLR-4718)

Solr.xml

Solr首先会试图找到solr.xml,这个文件定义了solr的全局配置,告诉Solr在哪里能找到cores(新版本无需配置可以自动扫描cores),其他配置从各个core里面拿。如果找不到solr.xml,Solr会试图启动单core模式,不过这个模式在Solr5.0中已经被去掉了。在每个Core中,Solr会找conf/solrconfig.xml这个文件,solrconfig文件会指引Solr其他配置文件的位置,比如conf/dih-config.xml是导入数据的配置文件。如果solrconfig.xml中的配置文件的filename没有改,默认会使用conf/schema.xml来加载schema。

solrconfig.xml

solrconfig.xml包含了大部分solr的配置。(贴什么代码都比不上官网传送门->solr.xml例子)

lib 指定依赖的插件/jar包等,所有lib dir下的文件都会被(依次)加载到classpath,如下会先加载first目录后加载second目录,如果jar包在启动的时候有依赖关系需要注意加载顺序。

<lib dir="./lib/first" />
<lib dir="./lib/second" />

dataDir 指定索引的存放目录,如果不指定,默认放在$SOLR_HOME/data下。(Cloudera的SOLR_HOME默认在/var/lib/solr,在solr的web页面上有一个-Dsolr.solr.home参数显示了SOLR_HOME。)

<dataDir>/var/data/solr</dataDir>

 codecFactory 自定义编解码用什么类,solr提供了一个到DocValues的类,这个配置一般不改。(注:DocValues是一种倒排索引的格式。)

<codecFactory name="CodecFactory" class="solr.SchemaCodecFactory" /> 

indexConfig 是一个父节点,在它的作用域中定义了index的更低层的动作,本文暂不介绍,请参考solr.xml例子中的注释。

solrconfig.xml中其他底层配置:

updateHandler

query

caching

requestDispatcher

requestHandler

updateRequestProcessorChain

highlighting

admin

Solr配置除了以上写法还支持如下格式:

所有的属性都支持SystemProperty替代方式,格式如 ${property[:default value]}

<dataDir>${solr.data.dir:./solr/data}</dataDir>

<!--或者-->
<dataDir>${solr.data.dir}</dataDir>

第一行指定了默认值为./solr/data,第二行没有默认值,在启动application时指定solr.data.dir:

java -Dsolr.data.dir=/data/dir -jar start.jar

若未指定solr.data.dir则使用默认值,若二者均未指定,则抛异常。

除了在启动时指定SystemProperties之外,还可以将要指定的SystemProperties写在<solr.home>/conf/solrcore.properties里面。

#solrcore.properties
data.dir=/data/solrindex

然后再在solrconfig.xml中使用:

<dataDir>${data.dir}</dataDir>
 

solrconfig.xml介绍的更多相关文章

  1. solr4.2 solrconfig.xml配置文件简单介绍

    对于solr4.x的每个core有两个很重要的配置文件:solrconfig.xml和schema.xml,下面我们来了解solrconfig.xml配置文件. 具体很详细的内容请细读solrcofi ...

  2. solrconfig.xml解析

    solrconfig.xml配置文件主要定义了SOLR的一些处理规则,包括索引数据的存放位置,更新,删除,查询的一些规则配置.下面将对solrconfig进行详细描述:1 <luceneMatc ...

  3. solrconfig.xml和schema.xml说明

    1.   solrconfig.xml solrconfig.xml配置文件主要定义了SOLR的一些处理规则,包括索引数据的存放位置,更新,删除,查询的一些规则配置. 1.1.  datadir节点 ...

  4. Solr入门之(6)配置文件solrconfig.xml

    solrconfig.xml包含了用于配置自身行为的绝大部分参数,其作用范围是当前core.该文件位于${solr_home}/solr/core1/conf/下. 参数列表概览: A.lib B.d ...

  5. 利用SOLR搭建企业搜索平台 之——solr配置solrconfig.xml

    来源:http://blog.csdn.net/zx13525079024/article/details/25310781 solrconfig.xml配置文件主要定义了SOLR的一些处理规则,包括 ...

  6. 电商指尖---(6)solrconfig.xml配置具体解释

    solrconfig.xml配置文件主要定义SOLR理规则,包含索引数据的存放位置,更新,删除,查询的一些规则配置. 能够在tomcat的安装路径下找到这个文件C:\Program Files\Apa ...

  7. Solr 02 - 最详细的solrconfig.xml配置文件解读

    目录 1 luceneMatchVersion - 指定Lucene版本 2 lib - 配置扩展jar包 3 dataDir - 索引数据路径 4 directoryFactory - 索引存储工厂 ...

  8. solrconfig.xml配置详解

    solrconfig.xml配置文件主要定义了SOLR的一些处理规则,包括索引数据的存放位置,更新,删除,查询的一些规则配置. 可以在tomcat的安装路径下找到这个文件C:\Program File ...

  9. Solr 6.7学习笔记(03)-- 样例配置文件 solrconfig.xml

    位于:${solr.home}\example\techproducts\solr\techproducts\conf\solrconfig.xml <?xml version="1. ...

随机推荐

  1. gcd和ex_gcd

    gcd就是欧几里得算法,可以快速的求出俩个数的最大公因数,进而也可以求其最大公倍数(俩数之积除以最大公因数),比较简单直接看代码就好了,一般用递归版,简短精简,敲得快,但如果数剧奇葩,怕溢出,那就用递 ...

  2. mysql定时任务简单例子

    mysql定时任务简单例子 ? 1 2 3 4 5 6 7 8 9     如果要每30秒执行以下语句:   [sql] update userinfo set endtime = now() WHE ...

  3. Java RSA 分段加解密

    RSA加解密: 1024位的证书,加密时最大支持117个字节,解密时为128:2048位的证书,加密时最大支持245个字节,解密时为256. 加密时支持的最大字节数:证书位数/8 -11(比如:204 ...

  4. [AngularJS] 使用AngularAMD动态加载Controller

    [AngularJS] 使用AngularAMD动态加载Controller 前言 使用AngularJS来开发Single Page Application(SPA)的时候,可以选用AngularU ...

  5. Soundslice – 美妙乐谱!Web 技术高大上的应用

    Web 技术的不断发展让我们能够开发各种好玩的功能.这里给大家分享一个使用 HTML5 技术实现的在线乐谱,可以播放的哦,也可以选择一个片段进行循环播放.赶紧来体验一下:) 您可能感兴趣的相关文章 1 ...

  6. php获取数组第一个值 current()

    获取数组第一个元素的值,如果是数字索引那还好,直接$array[0],如果键名是字符串,你又未知这个字符串呢?用current()函数就可以做到. current() 函数返回数组中的当前元素(单元) ...

  7. JavaScript 开发者经常忽略或误用的七个基础知识点(转)

    JavaScript 本身可以算是一门简单的语言,但我们也不断用智慧和灵活的模式来改进它.昨天我们将这些模式应用到了 JavaScript 框架中,今天这些框架又驱动了我们的 Web 应用程序.很多新 ...

  8. [GitHub] GitHub使用教程for Eclipse

    1.下载egit插件 打开Eclipse,git需要eclipse授权,通过网页是无法下载egit的安装包的.在菜单栏依次打开eclipse→help→install new software→add ...

  9. DevExpress 13.1.8全面支持VS2013

    界面套包DevExpress 13.1.8重磅来袭.从这个版本开始所有.NET控件均正式支持VS2013,当然还有很多其他更新,下面是部分更新内容: DevExpress所有.NET控件: 正式支持V ...

  10. ADN用户的产品激活方法

    如果您是ADN用户,在使用在线激活产品时遇到问题导致不能激活时,您可以采用手动激活方式. 通常采用如下两种方式. 1. (推荐)ADN用户填写此表格提交申请,同时在补充信息中提供 ADN Develo ...