新版Solr中的core概念

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

在老版本Solr中,core必须按顺序定义在solr.xml配置文件中,这样Solr才能发现它们,不过现在Solr支持自动发现core,core不再需要显式明确的在solr.xml中定义,替而代之的是,使用core.properties属性文件来指定一些core属性,如:索引目录,配置文件,core名称以及其他可选项。Solr会自动在solr安装目录下发现core.properties文件(或者是solr_home目录下),core.properties配置文件中定义的参数是用来创建core的。
Core拥有自己独立的索引以及事务日志,每个core拥有自己独立的core目录,拥有自己独立的core访问URL即http://ip:port/solr/coreName,这里的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 collection的name值,可选参数
collection:用来配置当前core属于哪个solrClound collection,这里配置的是该solrClound collection的name值,可选参数
loadOnStartup:表示是否在solr启动部署的时候就加载core并为当前core创建一个新的IndexSearcher实例
transient:用来设置当Solr的transient-cacheSize阀值达到限制值的时候,是否自动卸载当前core.

你可能感兴趣的:(Solr)