隨筆-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)  編輯  收藏

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


          網站導航:
           
          主站蜘蛛池模板: 神池县| 精河县| 大理市| 陈巴尔虎旗| 布拖县| 皮山县| 黄石市| 洛川县| 无锡市| 宝山区| 哈尔滨市| 文昌市| 恩平市| 个旧市| 宁城县| 游戏| 彭水| 云林县| 城固县| 平武县| 桐城市| 天津市| 彭山县| 松原市| 白玉县| 平邑县| 邯郸县| 平远县| 元朗区| 永福县| 平谷区| 牙克石市| 祁阳县| 海兴县| 进贤县| 师宗县| 原平市| 海伦市| 民县| 惠州市| 沂南县|