1、solr配置
? ? ? ? 首先我使用的是solr7.4所以下載解壓后無需進行tomcat關聯(lián),直接在解壓目錄下solr-7.4.0/bin/solr start 就可以運行 化戳,也可進入到bin目錄使用./solr start 進行運行戴已,solr默認端口為8983本橙,如需要自定義端口扳躬,則在啟動是后面加上 -p 如./solr start -p 8888,啟動后,在瀏覽器中輸入http://localhost:8983/solr即可跳轉到solr控制臺頁面
2、創(chuàng)建Core
? ? ? solr以文件的方式將數據存儲在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)建,因為我們缺少solrconfig.xml,將solr-7.4.0/server/solr/configsets/_default/下的conf文件夾嘲叔,復制到新建的core目錄下,即coreTest,再次點擊Add Core
創(chuàng)建成功抽活,點擊左側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
再添加一個使用自帶分詞
進行分詞校驗
結果如下
無中文分詞的字段
ik分詞
自帶分詞
上述為基本solr操作探熔,下一步研究添加自定義分詞詞匯??