3.Solr4.10.3目錄結構
轉載請出自出處:http://www.cnblogs.com/hd3013779515/
1.整個目錄結構
(1)bin:是腳本的啟動目錄
(2)contrib:第三方包存放的目錄
(3)dist:編譯打包後存放目錄,即構建後的輸出產物存放的目錄
(4)docs:solr文檔的存放目錄
(5)example:示範例子的存放目錄和solr搜索引擎框架
(6)licenses:權限相關的
2.example目錄詳解
contexts:jetty的環境
etc:jetty的配置文件
example-DIH:示範例子的存放目錄,這裏展示了DIH,即數據導入處理的例子
lib:jetty服務器的jar包
multicore:core示例配置文件
resources:資源文件
scripts:腳本文件
solr:solr服務器的配置文件,solr基於jetty服務器開發的
webapps:solr的web工程
start.jar:啟動jar包。通過Java命令就可以啟動一個基於jetty服務器的web工程
3.認識概念“core”
打個比方,solr就像是個操作系統,安裝在操作系統中的軟件就是“core”,每個core有自身的配置文件及數據。解壓後的文件/example/solr/collection1就是一個core,這個core由/example/solr/solr.xml管理。
如圖:
一個core如果想讓solr管理,就需要註冊到solr.xml配置文件中,solr.xml配置如見如下:
<?xml version="1.0" encoding="UTF-8" ?> <solr persistent="true"> <cores defaultCoreName="collection1" adminPath="/admin/cores" zkClientTimeout="${zkClientTimeout:15000}" hostPort="8983" hostContext="solr"> <core loadOnStartup="true" instanceDir="collection1" transient="false" name="collection1"/> </cores> </solr>
4.創建多個core
在實際的項目中,有時候一個solr下面不可能只有一個core,會有多個。比如企業搜索、產品搜索等等。這時你可以復制一份或多份/example/solr/collection1到你的solr home中,並改成你想要的文件名,最後把新添加的core註冊到/example/solr/solr.xml中:
<?xml version="1.0" encoding="UTF-8" ?> <solr persistent="true"> <cores defaultCoreName="collection1" adminPath="/admin/cores" zkClientTimeout="${zkClientTimeout:15000}" hostPort="8983" hostContext="solr"> <core loadOnStartup="true" instanceDir="collection1" transient="false" name="collection1"/> <core loadOnStartup="true" instanceDir="newCore" transient="false" name="newCore"/> </cores> </solr>
5.認識core的目錄結構
每個core中都有兩個文件,conf和data
conf:主要用於存放core的配置文件,
(1)schema.xml用於定義索引庫的字段及分詞器等,這個配置文件是核心文件
(2)solrconfig.xml定義了這個core的配置信息,比如:
<autoCommit> <maxTime>15000</maxTime> <openSearcher>false</openSearcher> </autoCommit>
定義了什麽時候自動提交,提交後是否開啟一個新的searcher等等。
data:主要用於存放core的數據,即index-索引文件和log-日誌記錄。
3.Solr4.10.3目錄結構