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

 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. [教学] Firemonkey TImageList 加入原寸图片

    下面示范 Firemonkey TImageList 加入一张原始尺寸图片的方法: 使用代码加图 if Assigned(List) then begin MyList.Items.Clear; do ...

  2. 2016弱校联盟十一专场10.2---Around the World(深搜+组合数、逆元)

    题目链接 https://acm.bnu.edu.cn/v3/problem_show.php?pid=52305 problem  description In ICPCCamp, there ar ...

  3. Scalaz(50)- scalaz-stream: 安全的无穷运算-running infinite stream freely

    scalaz-stream支持无穷数据流(infinite stream),这本身是它强大的功能之一,试想有多少系统需要通过无穷运算才能得以实现.这是因为外界的输入是不可预料的,对于系统本身就是无穷的 ...

  4. hash简单介绍

    hash也称"散列", 是一种基于映射关系的存储方式,将任意长度的二进制值输出为固定长度的较小的二进制值,这种输出的小的固定长度的值为hash值: 1. 散列技术是在关键字key与 ...

  5. Tomcat中JVM内存溢出及合理配置

    Tomcat本身不能直接在计算机上运行,需要依赖于硬件基础之上的操作系统和一个Java虚拟机.Tomcat的内存溢出本质就是JVM内存溢出,所以在本文开始时,应该先对Java JVM有关内存方面的知识 ...

  6. 七个结构模式之装饰者模式(Decorator Pattern)

    定义: 使用组合的方法,动态给一个类增加一些额外的功能,避免因为使用子类继承而导致类继承结构复杂.并且可以保持和被装饰者同一个抽象接口,从而使客户端透明. 结构图: Component:抽象构件类,定 ...

  7. [LeetCode]String to Integer (atoi)

    题意:字符串转正数 原题来自:https://leetcode.com/problems/string-to-integer-atoi/ 分析: <程序员面试宝典>上出现的面试题,主要是考 ...

  8. javascript 异步模块加载 简易实现

    在javascript是没有类似java或其他语言的模块概念的,因此也不可能通过import或using等关键字来引用模块,这样造成了复杂项目中前端代码混乱,变量互相影响等. 因此在复杂项目中引入AM ...

  9. Reapp - 下一代的 Hybrid App 开发框架

    Reapp 与 React Native 有着惊人的相似之处,二者都使用 React 来创建应用程序用户界面的框架.然而,在底层机制上这两个框架之间却具有明显的哲学差异.React Native 将 ...

  10. Ajax关于readyState(状态值)和status(状态码)的研究

    var getXmlHttpRequest = function () { try{ //主流浏览器提供了XMLHttpRequest对象 return new XMLHttpRequest(); } ...