SOLR作為成熟的企業級檢索服務,已經有些年頭。我在5年前,也接觸部分皮毛。當時跟另外一個同事,一起學習學運用到我們的產品之中,當時是面對的數據量是500-700百W,多表聯合處理。然后通過SOLR,引入索引,再走日常的查詢。大概也是在4年前,在入門MVN之后,通過MVN快速搭建了SOLR運行環境,幾天前,又翻看了一下寫的POM,覺得很有必要與大家進行一下REVIEW,溫故而知新!我也對比了當前網上多如牛毛的SOLR搭建文章,總感覺我照著做,還是不會。當然,當時的POM,我是參照了國外一個大牛弄的,當時的SOLR版本是4.4.0.目前SOLR的6版本都出來,不過,需要JDK8以上。鄙人一直在用JDK7,所以,不考慮一下跨那么大,怕扯到蛋了。哈哈,玩笑話。另外由于之前分詞,是用的jcseg,當時的版本也比較舊(1.8.9),所以今天做了相關升級。我就分享一下相關的心得,多有不足,歡迎指正。
環境說明:
WEB服務器:
apache-tomcat-7.0.68
JDK:
java version "1.7.0_45"
OpenJDK Runtime Environment (rhel-2.4.3.3.el6-x86_64 u45-b15)
OpenJDK 64-Bit Server VM (build 24.45-b08, mixed mode)
MVN:3.0.5
SOLR:4.10.4
分詞器:jcseg1.9.7
業務場景:一般我們需要對一些大數據量的表進行查詢,如果涉汲到多個表,是比較難辦的。這個時候,SOLR就能解決我們的燃眉之急。首先,我們通過把數據映射到SOLR的索引之中,這樣查詢先走SOLR的索引,(千W數據毫無壓力)毫秒級。查詢到概要數據,當需要明細,再檢索庫就很快了。我們今天就講一下如何通過MVN,把數據庫的數據快速全量同步到SOLR,然后有一個基本的界面然我們可以操作,測試一下效果。
配置文件結構:
從上往下,一一進行說明:
jscseg.properties:分詞器的配置文件
log4j.propertes:日志文件
solr.xml:這個是SOLR運行時,首先加載的一個配置文件,它會根據這里面的CORE去找相應的庫的索引,很重要。
看src/main/config下面,有幾個文件夾,除了lexicon是分詞的庫文件之外,其它都是你業務庫的索引配置文件,我們以tagger為例
主要看一下 db-data-config.xml,schema.xml.
db-data-config:固明思義,就是存數據庫訪問,SQL相關的。
里面的具體配置,現在不講,不然,篇幅不夠。
schema是定義索引字段類型,哪些字段需要分詞等相關的。
這里面描述了某個字段的類型,是否索引,是否持久化等等。
src/main/webapp下面還有一個solr.xml這個是放在tomcat的目錄下面的。用來啟動SOLR
實際上定義了solr.solr.home這個環境變量(關鍵)
下面,就是POM部分了,點鏈接下載。POM
我的微信公眾號,歡迎溝通學習。
posted on 2016-05-20 18:38
alexcai 閱讀(217)
評論(0) 編輯 收藏