java搜索引擎Apache的solr初探-安裝使用導入mysql數據

java搜索引擎Apache的solr初探-安裝使用導入mysql數據

前言碎語

Solr是一個高性能,基於Lucene的全文搜索服務器。同時對其進行了擴展,提供了比Lucene更為豐富的查詢語言,同時實現了可配置、可擴展並對查詢性能進行了優化,並且提供了一個完善的功能管理界面,和Elasticseach一樣是一款非常優秀的全文搜索引擎

寫此文的目的也是看網上諸多的安裝使用教程都比較老了,步驟也比較繁瑣,下面介紹的方法簡單高效,適合新手摸索入門

solr安裝

前提是已經有了java開發環境了,也就是安裝jdk了

最新版下載地址:http://apache.fayea.com/lucene/solr/6.4.1/

java搜索引擎Apache的solr初探-安裝使用導入mysql數據

如上圖有兩種方式可供選擇:

1.下載src的源文件,solr是使用ant構建的,所以需要安裝ant,自己構建,使用ant server啟動項目

2.下載打包好的,文件比較大,解壓縮好後,進入bin目錄,使用./solr start啟動項目,solr restart -p xxx重啟,其他的自己solr -help查看

solr默認的配置在server\solr\下,默認端口8983,故而訪問地址為:http://localhost:8983/solr/,如看到如下界面,恭喜你安裝成功了

java搜索引擎Apache的solr初探-安裝使用導入mysql數據

solr的基礎使用-導入mysql數據測試

1.新增Core

solr的管理已Core為單元,配置文件以及索引文件都存放在Core裡面,如下圖,創建test的Core

java搜索引擎Apache的solr初探-安裝使用導入mysql數據

注意的點:

  • 如圖箭頭所指的目錄需要自己在solr-6.4.1\server\solr目錄下創建,如solr-6.4.1\server\solr\new_coro

  • 拷貝solr-6.4.1\server\solr\configsets\basic_configs\conf目錄下的配置文件到自己的Core目錄,也就是新建的new_core

  • 在new_core目錄新增一個文件夾conf,拷貝\solr-6.4.1\server\solr\configsets\basic_configs\conf\elevate.xml這個文件到此目錄

  • 修改solrconfig.xml的${solr.data.dir:./kldata},為自己新建的索引目錄

2.導入mysql的數據

(1)在solrconfig.xml文件中新增如下請求節點。

java搜索引擎Apache的solr初探-安裝使用導入mysql數據

(2).在solrconfig.xml同層目錄新增如上箭頭所指文件,然後配置數據庫鏈接相關,如下

java搜索引擎Apache的solr初探-安裝使用導入mysql數據

箭頭所指為你要同步過來的查詢結果

更加詳細的配置可參考如下地址:

官方wiki:https://cwiki.apache.org/confluence/display/solr/

csdn博客:http://blog.csdn.net/boolbo/article/details/50352331

注意的點:

  • 如果配置更新了,可以使用接口/command=reload-config來重新加載配置文件,如http://localhost:8983/solr/#/new_core/dataimport/command=reload-config

(3).配置 schema

數據庫的列對應索引裡的文檔域field,所以要把你想同步的數據列結果的文檔域創建好,以及文檔域對應的類型fieldType

在第二步的第二點拷貝的配置文件中,找到managed-schema,這個文件沒有後綴名,但是是文本文件,使用文本編輯器打開它,

清除裡面的配置,配置自己的field,如下圖

java搜索引擎Apache的solr初探-安裝使用導入mysql數據

需要注意的點:

  • 需要分詞的字段需要使用solr.TextField類型,並指明你的建立索引和查詢時的分詞器,如上定義的text_cn便使用了林良益大神的ik分詞

  • ik的solr分詞器項目地址:https://github.com/EugenePig/ik-analyzer-solr5

(4)移動需要的jar

  • 數據庫驅動,已mysql為例,需要將mysql-connector-java-xxx.jar移動到\solr-6.4.1\server\solr-webapp\webapp\WEB-INF\lib目錄

  • 數據處理的j,將solr-6.4.1\dist下的solr-dataimporthandler-6.4.1.jar和solr-dataimporthandler-extras-6.4.1.jar移動到同上移動目錄

  • 分詞器 ,將你使用的中文分詞器的jar拷貝到如上移動目錄

(5)導入數據測試

java搜索引擎Apache的solr初探-安裝使用導入mysql數據

  • 箭頭一:選中你的test的Core

  • 箭頭二:數據導入的菜單

  • 箭頭四:數據導入的結果

  • 箭頭五:數據查詢測試菜單

我的測試結果

java搜索引擎Apache的solr初探-安裝使用導入mysql數據

ps:最後,如果你想測試你的分詞器的分詞效果,可參考如下

java搜索引擎Apache的solr初探-安裝使用導入mysql數據


分享到:


相關文章: