1、solr配置
? ? ? ? 首先我使用的是solr7.4所以下載解壓后無需進行tomcat關(guān)聯(lián),直接在解壓目錄下solr-7.4.0/bin/solr start 就可以運行 ,也可進入到bin目錄使用./solr start 進行運行,solr默認端口為8983,如需要自定義端口,則在啟動是后面加上 -p 如./solr start -p 8888,啟動后,在瀏覽器中輸入http://localhost:8983/solr即可跳轉(zhuǎn)到solr控制臺頁面

2、創(chuàng)建Core
? ? ? solr以文件的方式將數(shù)據(jù)存儲在core下,接下來我們就創(chuàng)建自己的core,點擊控制臺左邊的Core admin

點擊Add Core


core home的路徑的查看我們稍后再聊,點擊Add Core,我們認為會在core home路徑下,創(chuàng)建了一個名為coreTest的文件夾并完成core的創(chuàng)建,然而

上方紅色報錯信息中指出的/Users/edz/Documents/ide/solr/solr-7.4.0/server/solr/ 即為core home路徑,可以用如下方式查看

我們進入到core home中

發(fā)現(xiàn)僅僅是創(chuàng)建了coreTest文件夾,core并未成功創(chuàng)建,因為我們?nèi)鄙賡olrconfig.xml,將solr-7.4.0/server/solr/configsets/_default/下的conf文件夾,復制到新建的core目錄下,即coreTest,再次點擊Add Core

創(chuàng)建成功,點擊左側(cè)Core Selector選擇新添加的coreForCheck

添加自定義key


看到了存儲類型,就要開始講一下分詞了,講分詞之前我們先看一下field type的類別,

他的這些類別實際上是在配置文件中,配置文件路徑如下 solr home/coreTest(上面創(chuàng)建core時的instanceDir路口)/conf/managed-schema 我們打開看一下

下拉列表中的類型都是在此文件中配置的,solr默認添加了英文的分詞,但是沒有中文分詞,這意味在此文件中并無英文分詞的filed type,如果我們要進行分詞,需進行如下操作
3、分詞配置
鏈接: https://pan.baidu.com/s/116BEGAB0HXMtIei8SViyqw 密碼: d3hy
將jar包復制到路徑solr-7.4.0/server/solr-webapp/webapp/WEB-INF/lib下,在上文提到的配置文件managed-schema中添加中文分詞的field類別
<fieldType name="worddata_ik" class="solr.TextField">?
?????<analyzer type="index">?
?????????<tokenizer class="org.wltea.analyzer.lucene.IKTokenizerFactory" conf="ik.conf" useSmart="false"/>?
?????????<filter class="solr.LowerCaseFilterFactory"/>
?????</analyzer>?
?????<analyzer type="query">?
?????????<tokenizer class="org.wltea.analyzer.lucene.IKTokenizerFactory" conf="ik.conf" useSmart="true"/>
?????????<filter class="solr.LowerCaseFilterFactory"/>?
?????</analyzer>?
?</fieldType>

添加solr自帶的中文分詞
將solr-7.4.0\contrib\analysis-extras\lucene-libs中的lucene-analyzers-smartcn-7.4.0.jar 復制到
solr-7.4.0/server/solr-webapp/webapp/WEB-INF/lib下,在配置文件managed-schema中添加中文分詞的field類別
<fieldType name="worddata_smart" class="solr.TextField" positionIncrementGap="100"> ????<analyzer type="index">
?????????<tokenizer class="org.apache.lucene.analysis.cn.smart.HMMChineseTokenizerFactory"/> ????</analyzer>
?????<analyzer type="query">?
?????????<tokenizer class="org.apache.lucene.analysis.cn.smart.HMMChineseTokenizerFactory"/> ????</analyzer>
?</fieldType>
重啟solr, bin/solr restart -force
再次進行添加


為方便比較,再建一個field

再添加一個使用自帶分詞

進行分詞校驗


結(jié)果如下
無中文分詞的字段

ik分詞

自帶分詞

上述為基本solr操作,下一步研究添加自定義分詞詞匯??