隨筆-35  評論-33  文章-0  trackbacks-0
                  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)  編輯  收藏

          只有注冊用戶登錄后才能發表評論。


          網站導航:
           
          主站蜘蛛池模板: 泽普县| 滕州市| 临清市| 徐汇区| 剑川县| 霞浦县| 和龙市| 剑河县| 梨树县| 西乌| 铜陵市| 合阳县| 乌兰察布市| 屯留县| 达州市| 黔南| 盱眙县| 通州市| 阿拉善右旗| 黄梅县| 沧源| 澄江县| 定陶县| 商城县| 兰西县| 公安县| 信宜市| 鄢陵县| 霍山县| 社旗县| 望江县| 琼海市| 陆河县| 措美县| 凌源市| 元阳县| 阜阳市| 荔浦县| 小金县| 郎溪县| 闵行区|