solrconfig.xml配置文件主要定义了SOLR的一些处理规则,包括索引数据的存放位置,更新,删除,查询的一些规则配置。
可以在tomcat的安装路径下找到这个文件C:\Program Files\Apache Software Foundation\Tomcat 8.0\solr\collection1\conf
1.datadir节点
1.<dataDir>${solr.data.dir:d:/Server/Solr/data}</dataDir>定义了索引数据和日志文件的存放位置
2.luceneMatchVersion
<luceneMatchVersion>4.8</luceneMatchVersion>
表示solr底层使用的是lucene4.8
3. lib
<lib dir="../../../contrib/extraction/lib"regex=".*\.jar"/>
表示solr引用包的位置,当dir对应的目录不存在时候,会忽略此属性
4.directoryFactory
索引存储方案,共有以下存储方案
1、solr.StandardDirectoryFactory,这是一个基于文件系统存储目录的工厂,它会试图选择最好的实现基于你当前的操作系统和Java虚拟机版本。
2、solr.SimpleFSDirectoryFactory,适用于小型应用程序,不支持大数据和多线程。
3、solr.NIOFSDirectoryFactory,适用于多线程环境,但是不适用在windows平台(很慢),是因为JVM还存在bug。
4、solr.MMapDirectoryFactory,这个是solr3.1到4.0版本在linux64位系统下默认的实现。它是通过使用虚拟内存和内核特性调用
mmap去访问存储在磁盘中的索引文件。它允许lucene或solr直接访问I/O缓存。如果不需要近实时搜索功能,使用此工厂是个不错的方案。
5、solr.NRTCachingDirectoryFactory,此工厂设计目的是存储部分索引在内存中,从而加快了近实时搜索的速度。
6、solr.RAMDirectoryFactory,这是一个内存存储方案,不能持久化存储,在系统重启或服务器crash时数据会丢失。且不支持索引复制
5. codecFactory
编解码工厂允许使用自定义的编解码器。例如:如果想启动per-field DocValues格式, 可以在solrconfig.xml里面设置SchemaCodecFactory:
docValuesFormat="Lucene42": 这是默认设置,所有数据会被加载到堆内存中。
docValuesFormat="Disk": 这是另外一个实现,将部分数据存储在磁盘上。
docValuesFormat="SimpleText": 文本格式,非常慢,用于学习。
<codecFactory class="solr.SchemaCodecFactory"/>
<schemaFactory class="ClassicIndexSchemaFactory"/>
6.indexconfig节点
用于设置索引的低级别的属性
1、<filter class="solr.LimitTokenCountFilterFactory" maxTokenCount="10000"/>//限制token最大长度
2、<writeLockTimeout>1000</writeLockTimeout>//IndexWriter等待解锁的最长时间(毫秒)。
3、<maxIndexingThreads>8</maxIndexingThreads>//
4、<useCompoundFile>false</useCompoundFile>//solr默认为false。如果为true,索引文件减少,检索性能降低,追求平衡。
5、<ramBufferSizeMB>100</ramBufferSizeMB>//缓存
6、<maxBufferedDocs>1000</maxBufferedDocs>//同上。两个同时定义时命中较低的那个。
7、<mergePolicy class="org.apache.lucene.index.TieredMergePolicy">
<int name="maxMergeAtOnce">10</int>
<int name="segmentsPerTier">10</int>
</mergePolicy>
//合并策略。
8、<mergeFactor>10</mergeFactor>//合并因子,每次合并多少个segments。
9、<mergeScheduler class="org.apache.lucene.index.ConcurrentMergeScheduler"/>//合并调度器。
10、<lockType>${solr.lock.type:native}</lockType>//锁工厂。
11、<unlockOnStartup>false</unlockOnStartup>//是否启动时先解锁。
12、<termIndexInterval>128</termIndexInterval>//Lucene loads terms into memory 间隔
13、<reopenReaders>true</reopenReaders>//重新打开,替代先关闭-再打开。
14、<deletionPolicy class="solr.SolrDeletionPolicy">//提交删除策略,必须实现org.apache.lucene.index.IndexDeletionPolicy
15、<str name="maxCommitsToKeep">1</str>
16、<str name="maxOptimizedCommitsToKeep">0</str>
17、<str name="maxCommitAge">30MINUTES</str> OR <str name="maxCommitAge">1DAY</str><br>
18、 <infoStream file="INFOSTREAM.txt">false</infoStream>//相当于把创建索引时的日志输出。
<lockType>${solr.lock.type:native}</lockType>
设置索引库的锁方式,主要有三种:
1.single:适用于只读的索引库,即索引库是定死的,不会再更改
2.native:使用本地操作系统的文件锁方式,不能用于多个solr服务共用同一个索引库。Solr3.6 及后期版本使用的默认锁机制。
3.simple:使用简单的文件锁机制
7. updateHandler节点
定义更新处理器,
设置索引库更新日志,默认路径为solr home下面的data/tlog。随着索引库的频繁更新,tlog文件会越来越大,
所以建议提交索引时采用硬提交方式<autoCommit>,即批量提交。
自动硬提交方式:maxTime:设置多长时间提交一次maxDocs:设置达到多少文档提交一次openSearcher:文档提交后是否开启新的searcher,
如果false,文档只是提交到index索引库,搜索结果中搜不到此次提交的文档;如果true,既提交到index索引库,也能在搜索结果中搜到此次提交的内容。
8.Query查询节点
<maxBooleanClauses>1024</maxBooleanClauses>
设置boolean 查询中,最大条件数。在范围搜索或者前缀搜索时,会产生大量的 boolean 条件,
如果条件数达到这个数值时,将抛出异常,限制这个条件数,可以防止条件过多查询等待时间过长。
缓存方法http://www.cnblogs.com/phinecos/archive/2012/05/24/2517018.html
9.Request Dispatcher
请求转发器
10.requestHandler
请求处理器
相关推荐
一个讲解solr配置和应用demo的文档
包括solr的所有资源文件文件清单如下: IKAnalyzer.cfg.xml ik-analyzer-solr5-5.x.jar solr-analyzer-ik-5.1.0.jar managed-schema mysql-connector-java-5.1.7-bin.jar ...data-config.xml ext.dic stopword.dic
ccs容器基于Apache Solr的Cisco Config Search Appliance(Docker Image)概述ccs-container是一个即用型Docker映像,用于索引和搜索基于Cisco的企业(或家庭)网络的配置。 它提供了以下用户界面: 这是什么意思,...
本代码主要包含SOLR基本可视化运维,如通过控制套...部署方式:1、解压后在源码中修改solr-config.properties配置文件信息,修改完成后,直接发布到tomcat服务中,启动即可。系统当前支持绑定的数据库为ORACLE和mysql.
基于solr-geo空间搜索 1、Solr的schema.xml配置 定义坐标field 2、Solr的data-config.xml配置 建立索引 3、java查询语法 坐标距离、分页、排序
Solr安装,配置及使用说明 已级对主要文件data-config.xml说明
Solr4.3.1配置好的Solr,分词器使用IK。使用步骤:拷贝solr目录到web服务器,如:tomcat的webapp目录下。拷贝solr_home到任意目录,如:/home目录下...修改solr_config.xml,配置索引提交的频率。启动web服务器,访问:
Solr Redis扩展该扩展是一个ParserPlugin,它基于Redis中存储的数据提供Solr查询... 将以下内容添加到solrconfig.xml的“ config”部分: < queryParser xss=removed xss=removed> < str xss=removed>localhost</
solr-zkutil CLI实用程序关于solr-zkutil是使用...zkutil config --add 'DEV=zk01.host.com:2181,zk02.host.com:2181,zk03.host.com:2181'或使用有效的json完全替换配置solr-zkutil config --configuration '{\"DEV\
有一个名为SolrCoreContainerManager的声明性组件,它监视以下各项: ConfigurationAdmin服务中的solr.core或solr.core- 配置PID。 此配置定义了核心配置。 这些属性与CoreAdmin API中可以使用的属性非常相同。 ...
java -jar solr-loader3-standalone.jar --upload <config> 配置 配置是使用原生 Clojure 格式在 EDN 文件中指定的。 用于索引的数据库连接参数和实体以及用于提取实体的 SQL 在配置文件中指定。 有关详细信息,请...
配置 通过环境变量设置Solr URL 使用Solrb的最简单方法是SORL_URL环境变量(其中包含核心名称): ENV[ ' SOLR_URL ' ] = ' http://localhost:8983/solr/demo ' 您还可以使用Solr.configure显式指定solr URL: ...
Apache-Solr-RCE-Velocity模板突破产生原因:当攻击者可以直接访问Solr控制台时,可以通过发送类似/例程名/ config的POST请求该例程的配置文件进行更改。 Apache Solr内置IntegratedVelocityResponseWriter插件,在...
git clone https://github.com/Terminus004/solrsearch.git && cd solrsearch运行npm install: npm i复制配置(然后为您的环境配置): cp config.json.example config.json然后,使用节点启动SolrSearch服务器: ...
CakePHP Solr 数据源 SolPHP的CakePHP数据源实现所有CRUD方法 依赖关系 ... Solr 5.0.0 日光浴室 3.3.0 ... 之后查看Config/database.php以设置 SolrSource 的 Solr 配置。 我还包含了 Solr 模型Model/Sol
Solr DIH JDBC 数据源这种在 Solr DIH 之上开发的目标是通过将一些设置外部化到共享配置文件,允许 DIH 配置对各种集合通用。 多个集合可以使用相同的架构和相同的 DIH 设置。 例如,SqlEntityProcessor 的query、...
描述 这个插件增加了全文搜索功能以及从Apache 到任何Rails模型的许多其他漂亮功能。 它基于Erik Hatcher的初稿。 该插件旨在用于旧版本的Rails。 对于较新的版本,强烈建议您使用Sunspot!...请参阅config
3、修改文件elasticsearch-1.1.0/config/elasticsearch.yml,新增如下配置: index.analysis.analyzer.default.type : "word" index.analysis.tokenizer.default.type : "word" 4、启动ElasticSearch测试效果,...
将项目直接发布到\ Website文件夹中,然后将ADFS.Authenticator.config配置文件复制到\ Website \ App_Config \ Include文件夹中。 或者将预编译的模块作为Sitecore软件包安装。贡献如果您想对此存储库做出贡献,请...
:bullet_train: Ironstar的Tokaido Tokaido是一个用于MacOS,Linux和... 易于配置的配置编辑器( tok config )高度可tok config 包括Varnish和HAProxy的生产级环境。 轻松添加Mailhog,Solr,PHP Adminer,Xdebug