博客
关于我
强烈建议你试试无所不能的chatGPT,快点击我
跟益达学Solr5之core.properties配置详解
阅读量:4026 次
发布时间:2019-05-24

本文共 2747 字,大约阅读时间需要 9 分钟。

学习Solr之前,我想对于初学Solr的小伙伴们来说, Solrcore概念是最令人头疼的,到底该怎么理解Solr中的core呢?以下是我从Solr的官方文档中摘下来的一段文字说明:

In Solr, the term core is used to refer to a single index and associated transaction log and configuration files (including schema.xml and solrconfig.xml, among others). Your Solr installation can have multiple cores if needed, which allows you to index data with different structures in the same server, and maintain more control over how your data is presented to different audiences.

In older versions of Solr, cores had to be defined in solr.xml in order for Solr to know about them. Now, however, Solr supports automatic discovery of cores and they no longer need to be explicitly defined. Instead, core-specific properties (such as the directories to use for the indexes or configuration files, the core name, and other options) are defined in a core.properties file. Any core.properties file in any directory of your Solr installation (or in a directory under where solr_home is defined) will be found by Solr and the defined properties will be used for the core named in the file.

我大致翻译下:

Solr中,core术语是用来指代一个单独的索引、关联的事务日志以及一些配置文件(包括schema.xmlsolrconfig.xml等等),如果你需要的话,在安装solr的时候你可以创建多个core,core模式允许你在同一台服务器上使用不同的结构来索引你的数据以及在如何把索引数据展现给不同的用户方面提供了更多的控制。

在老版本Solr中,core必须按顺序定义在solr.xml配置文件中,这样Solr才能发现它们,不过现在Solr支持自动发现corecore不再需要显式明确的在solr.xml中定义,替而代之的是,使用core.properties属性文件来指定一些core属性,如:索引目录,配置文件,core名称以及其他可选项。Solr会自动在solr安装目录下发现core.properties文件(或者是solr_home目录下)core.properties配置文件中定义的参数是用来创建core的。

 

Core拥有自己独立的索引以及事务日志,每个core拥有自己独立的core目录,拥有自己独立的core访问URL,这里的coreName即你要访问的core名称,这为实现Solr distributed searching(分布式搜索)提供了便利。当然不同core不一定要在不同的服务器上,不同core可以在同一台server上。当然core也为索引数据分类提供了便利,同时也避免了单个索引目录下数据体积过大的问题。

 

下面来具体说说core.properties的配置:

name      core的名称,必填参数

config    用于指定solrconfig.xml配置文件的文件名,默认值是solrconfig.xml

dataDir   指定用于存放lucene索引和log日志文件的目录路径,该路径是相对于core根目录(在单core模式下,就直接是相对于solr_home),默认值是当前core目录下的data

ulogDir:用来配置指定事务日志文件路径的,默认值是当前core目录下的data目录下的tlog

schema: 即用来配置你的schema.xml配置文件的文件名的,schema.xml配置文件必须存放在当前core目录下的conf目录下

shard:用来设置当前core的分片id,可选参数

collection:用来配置当前core属于哪个solrClound collection,这里配置的是该solrClound collectionname值,可选参数

loadOnStartup:表示是否在solr启动部署的时候就加载core并为当前core创建一个新的IndexSearcher实例

transient:用来设置当Solrtransient-cacheSize阀值达到限制值的时候,是否自动卸载当前core.

 

下面是一个简单的core.properties配置示例:

 Solr在启动部署的时候,首先会加载core.properties配置文件,通过core.properties配置来自动发现core,然后根据里面配置的configschema来加载solrconfig.xmlschema.xml这两个核心配置文件.注意core.properties只是一些core名称、核心配置文件,data数据目录等等这些参数的定义,加载core.properties配置文件时,core并没有开始创建。solrconfig.xml才是关键,里面涉及到solr依赖的lucene版本号,solr依赖的扩展jar包加载地址、lucene索引创建相关参数(比如DirectoryFactory),过滤器缓存,查询结果集缓存,document缓存等等配置。有关solrconfig.xml配置文件的讲解留到下一篇再详细说明,今天就到这儿了,晚安,各位!

 

       如果你还有什么问题请加我Q-Q:7-3-6-0-3-1-3-0-5,

或者加裙

一起交流学习!

 

转载地址:http://ocxbi.baihongyu.com/

你可能感兴趣的文章
Android(三)数据存储之XML解析技术
查看>>
Spring JTA应用之JOTM配置
查看>>
spring JdbcTemplate 的若干问题
查看>>
Servlet和JSP的线程安全问题
查看>>
GBK编码下jQuery Ajax中文乱码终极暴力解决方案
查看>>
jQuery性能优化指南
查看>>
Oracle 物化视图
查看>>
PHP那点小事--三元运算符
查看>>
解决国内NPM安装依赖速度慢问题
查看>>
Brackets安装及常用插件安装
查看>>
在CentOS 7系统上搭建LNMP 环境
查看>>
Centos 7(Linux)环境下安装PHP(编译添加)相应动态扩展模块so(以openssl.so为例)
查看>>
fastcgi_param 详解
查看>>
Nginx配置文件(nginx.conf)配置详解
查看>>
标记一下
查看>>
一个ahk小函数, 实现版本号的比较
查看>>
IP报文格式学习笔记
查看>>
autohotkey快捷键显示隐藏文件和文件扩展名
查看>>
Linux中的进程
查看>>
学习python(1)——环境与常识
查看>>