elasticsearch搭建與使用(原創)

1.概述html

Elastic Search 是一個基於Lucene構建的開源,分佈式搜索引擎。設計用於雲計算中,可以達到實時搜索,穩定,可靠,快速,安裝使用方便。支持經過HTTP使用JSON進行數據索引前端

 

2 、環境介紹與安裝準備java

    一、環境說明node

       MAC OS X 10.10.95android

    二、安裝準備git

        ElasticSearch(簡稱ES)由java語言實現,運行環境依賴java。ES 1.x版本,官方推薦至少使用jdk1.7及以上的環境,建議使用Oracle java,能夠去官網下載,本文使用http://www.oracle.com/technetwork/java/javase/downloads/jdk8-downloads-2133151.html  。ES能夠去官網下載,也能夠這裏https://download.elasticsearch.org/elasticsearch/release/org/elasticsearch/distribution/zip/elasticsearch/2.1.0/elasticsearch-2.1.0.zip  ,本文使用elasticsearch-2.1.0.zip。github

 

三、安裝apache

  一、安裝JAVAvim

        關於Java的安裝,請參照這裏 http://www.ifunmac.com/2013/04/mac-jdk-7/ 後端

  二、安裝ES

以目前最新的elasticsearch-2.1.0.zip爲例,將zip文件解壓到指定目錄:/usr/local,解壓開來後爲三個目錄:bin、config、lib及三個文本文件。三個文本文件咱們能夠不用管。

進入:

cd /usr/local/elasticsearch-2.1.0/bin

運行以下命令便可啓動elasticsearch

./elasticsearch

 

上面的啓動命令將使得elasticsearch進程在後端運行,若是想使其在前端運行,這樣能夠看到服務啓動時的打印信息,那麼咱們能夠運行以下命令便可:

 ./elasticsearch –f

若是咱們使用

 

ps aux | grep elasticsearch

會發現分配給elasticsearch的最小與最大內存爲:

 

-Xms256m -Xmx1g,咱們能夠經過如下的命令來指定分給elasticsearch的最大與最小內存:

 

./elasticsearch -f -Xmx2g -Xms2g -Des.index.storage.type=memory

一般分配的最大與最小內存大小相等爲最好。

 

若是是採用加-f的命令啓動服務,則在當前界面能夠按Ctrl+C關掉服務。

 

Elasticsearch啓動後,咱們能夠經過訪問以下url在前端查詢該服務是否啓動成功:

 

http://localhost:9200/

 

{

  "name" : "Ghost Girl",

  "cluster_name" : "elasticsearch",

  "version" : {

    "number" : "2.1.0",

    "build_hash" : "72cd1f1a3eee09505e036106146dc1949dc5dc87",

    "build_timestamp" : "2015-11-18T22:40:03Z",

    "build_snapshot" : false,

    "lucene_version" : "5.3.1"

  },

  "tagline" : "You Know, for Search"

}

啓動成功!

 

9200是http訪問端口,還有一個端口是9300,是各節點間彼此通訊的端口。

 

PS. 配置文件

 

經過config/elasticsearch.yml設置cluster.name和node.name ,詳細請查看: http://www.zihou.me/html/2014/01/17/9061.html 

 

四、安裝apache-maven

 

1. 配置Maven須要檢查下Java環境變量的設置。須要檢查JAVA_HOME環境變量以及Java命令

在終端輸入查看java版本:

java -version

若是顯示版本就說明安裝好了.

在MAC上查找和設置$JAVA_HOME

#輸入命令查看java home變量是否設置:

echo $JAVA_HOME

另外可使用-V選項列出全部版本的JAVA_HOME:

/usr/libexec/java_home -V

配置JAVA_HOME

 

1,打開 應用程序 -> 實用工具 -> 終端; 

2,在終端中定位到本身用戶的主目錄,輸入: cd ~ ; 

3,建立一個空文件,輸入:touch .bash_profile ; 

4,編輯這個文件,輸入:open .bash_profile ; 

 

5,在這個文件中輸入:export PATH=${PATH}:<文件目錄> ;(將"<文件目錄>"替換成本身想要的目錄)export PATH=${PATH}:/Users/rye/android/android-sdk-mac_x86/tools; 

6,若是須要添加其餘的環境變量例如JAVA_HOME,能夠輸入:export JAVA_HOME=/Library/Java/Home ; 

7,source .bash_profile重啓終端,測試。

 

注意:

根據蘋果的官方說明,Mac OS X 10.5 及之後的版本應該使用 /usr/libexec/java_home 命令來肯定 JAVA_HOME ,而在此以前的版本因爲沒有這個命令,則應該使用固定的 /Library/Java/Home 目錄。

最佳方式是:

export JAVA_HOME=`/usr/libexec/java_home`

另外,你還能夠這樣用,來選擇不一樣的Java版本:

export JAVA_HOME=`/usr/libexec/java_home -v 1.6`

or

export JAVA_HOME=`/usr/libexec/java_home -v 1.8`

 

2.接着到http://maven.apache.org/download.html下載Maven安裝文件,如apache-maven-3.3.9-bin.zip,而後解壓到:/usr/local/目錄

接下來,咱們須要設置M2_HOME(IntelliJ默認爲M2_HOME)環境變量指向apache-maven-3.3.9,而且把Maven安裝目錄下的bin/文件夾添加到系統環境變量PATH中去:

 

vim打開/Users/gaoaifei/.bash_profile文件 加入以下代碼:    

 

export MAVEN_HOME=/Users/gaoaifei/apache-maven-3.3.9

 

export PATH=$PATH:$MAVEN_HOME/bin

 

至此,安裝完成,咱們能夠運行如下命令檢查Maven安裝:

 

echo $MAVEN_HOME

mvn –version

 

五、下載中分文詞庫

下載:https://github.com/medcl/elasticsearch-analysis-mmseg

解壓: tar xvf elasticsearch-analysis-mmseg**gz

cd elasticsearch-analysis-mmseg

mvn package 編譯打包

編譯完成,會在elasticsearch-analysis-mmseg文件夾目錄下生成一個target文件夾,

 

/Users/gaoaifei/Downloads/elasticsearch-analysis-mmseg-master/target/releases

下會有個編譯好的zip壓縮包

 

elasticsearch-analysis-mmseg-1.6.0.zip

 

 

配置中文搜索

1.進入elasticsearch目錄:/Users/gaoaifei/Downloads/elasticsearch-2.1.0  執行./bin/plubin install  或者手動生成plugins文件夾

2. 生成完成,在plugins文件夾下新建:mkdir  analysis-mmseg

3.將編譯好的elasticsearch-analysis-mmseg目錄下的打包文件

/Users/gaoaifei/Downloads/elasticsearch-analysis-mmseg-master/target/releases/elasticsearch-analysis-mmseg-1.6.0.zip

解壓並拷貝到elasticsearch的plugins目錄下

4.編輯elasticsearch配置文件,進行簡單配置: 

 sudo vi /Users/gaoaifei/Downloads/elasticsearch-2.1.0/config/elasticsearch.yml

複製這段代碼到此文件下:

index:
  analysis: 
    analyzer:
      mmseg_maxword:
        type: custom
        filter:
        - lowercase
        tokenizer: mmseg_maxword
      mmseg_maxword_with_cut_letter_digi:
        type: custom
        filter:
        - lowercase
        - cut_letter_digit
        tokenizer: mmseg_maxword

:wq!保存退出

 

6.啓動搜索引擎服務 ,進入 

/Users/gaoaifei/Downloads/elasticsearch-2.1.0/bin

重啓服務:

./elasticsearch

 

七、建立索引,參考資料:

https://github.com/medcl/elasticsearch-analysis-mmseg 

相關文章
相關標籤/搜索