1. 程式人生 > >Solr[04.檢索Mysql字段]

Solr[04.檢索Mysql字段]

alt and delta analyze 就是 apache gin ado cal

Mysql配置
  • 設計表bless

技術分享圖片

  • 導入測試數據

技術分享圖片

Solr基本配置

  • 將mysql-connector-java-5.1.6-bin.jar、solr-dataimporthandler-7.1.0.jar、solr-dataimporthandler-extras-7.1.0.jar到/usr/local/apache-tomcat-8.5.12/webapps/solr/WEB-INF/lib/,用於連接mysql數據庫以及數據導入
    技術分享圖片

  • 在/usr/local/apache-tomcat-8.5.12/solrhome中創建mysql_core目錄

技術分享圖片

  • 復制/opt/solr-7.1.0/example/example-DIH/solr/db下的所有文件到/usr/local/apache-tomcat-8.5.12/solrhome/mysql_core目錄

技術分享圖片

  • 編輯/usr/local/apache-tomcat-8.5.12/solrhome/mysql_core/core.properties文件,定義core的名稱

技術分享圖片

  • 復制/opt/solr-7.1.0/dist以及contrib目錄到/usr/local/apache-tomcat-8.5.12/solrhome下面

技術分享圖片

  • 修改/usr/local/apache-tomcat-8.5.12/solrhome/mysql_core/conf/solrconfig.xml

修改jar依賴包的路徑

技術分享圖片

修改dataimport的依賴實現類為org.apache.solr.handler.dataimport.DataImportHandler

技術分享圖片

  • 修改/usr/local/apache-tomcat-8.5.12/solrhome/mysql_core/conf/db-data-config.xml,配置相關數據源以及對應的導入表

技術分享圖片

  • 修改/usr/local/apache-tomcat-8.5.12/solrhome/mysql_core/conf/managed-schema,添加在db-data-config.xml中定義的字段

由於db-data-config.xml中bless_id對應的name為id,而id在managed-schema文件已經存在,故不需要重新定義

技術分享圖片

  • 在/usr/local/apache-tomcat-8.5.12/solrhome/mysql_core/conf目錄創建dataimport.properties文件,記錄索引更新日期
#Tue Dec 26 06:48:43 UTC 2017
interval=1
port=8080
server=localhost
bless.last_index_time=2017-12-26 06\:48\:43
params=/dataimport?command\=delta-import&clean\=false&commit\=true
webapp=solr
reBuildIndexInterval=2
syncEnabled=1
last_index_time=2017-12-26 06\:48\:43
reBuildIndexBeginTime=03\:10\:00
reBuildIndexParams=/dataimport?command\=full-import&clean\=true&commit\=true
syncCores=mysql_core

技術分享圖片

  • 重啟Tomcat

全量導入

  • 導入數據

技術分享圖片

技術分享圖片

  • 查詢數據

技術分享圖片

我們執行一次導入操作,會將mysql_core這個core實例更新索引的日期記錄下來,用來記錄的就是dataimport.properties文件,下圖日期已經發生變化

技術分享圖片

中文分詞

借鑒配置IKAnalyzer的中文分詞章節的配置規則

  • 修改/usr/local/apache-tomcat-8.5.12/solrhome/mysql_core/conf/managed-schema,添加ik分詞的fieldType

技術分享圖片

  • 修改/usr/local/apache-tomcat-8.5.12/solrhome/mysql_core/conf/managed-schema中新增加的字段bless_title、bless_content的type為text_ik

技術分享圖片

  • 重啟Tomcat

  • 全量導入數據

配置好中文分詞,如果不執行一遍全量導入,中文查詢會失敗

技術分享圖片

  • 查詢數據

技術分享圖片

Solr[04.檢索Mysql字段]