Elasticsearch的介紹與安裝配置啟動問題
Elasticsearch的介紹
1.產生的背景是大規模數據要如何去進行檢索,怎么樣去保證數據的安全,出現單點故障不會造成影響,以及如何備份與提高檢索的速度
2.Elasticsearch是一款基於Lucene的分布式搜索和分析引擎,全文檢索引擎,它是由java開發的,但是目的在於通過簡單的restful api來隱藏Luncene的復雜性,使得全文檢索變得簡單
3.Lucene與Elasticsearch的關系?
Luncene只是java的一個庫,只能java來使用,而Elasticsearch是基於Luncene來封裝的,做成服務,通過restful來調用,使用全文檢索
4.Elasticsearch與solr
solr也是一個全文檢索引擎,傳統的如銀行等用solr比較多,而新興的互聯網用Elasticsearch比較多
5.es核心概念有以下幾點:
集群:多台服務器的集合,稱為es的集群
節點: 集群的每一個服務器稱為節點
分片:對數據進行分片,分別放在不同的節點上
副本:為提高查詢吞吐量或者實現高可用性,可以使用分片副本(分片副本存不同的內容)
全文檢索:分詞和全文檢索
6.es跟mysql比較
mysql es
數據庫 索引
表 類型
一條條的數據 文檔
一列列的字段 字段
字段的屬性 映射
索引 所有字段建立索引(倒排索引)
增刪改查 get,post,delete請求
7.ELK指的是Elasticsearch——Logstash+kibana
日志的收集和分析系統
8 Elasticsearch索引到底能處理多大數據
-es一個索引(數據庫)可以有多個分片,一個分片是一個lucene的索引
-lucene一個索引不能處理多於21億篇文檔,或者多於2740億的唯一詞條
-理論上是可以無限加的
Elasticsearch的配置與安裝
1.基於java開發的,安裝jdk,windows上安裝(jdk 1.8 以上),一路下一步(jdk,jre),(不需要配置環境變量了)
2.安裝es(去官網下載相應的版本,es+kiban. 注意版本一定要對應)
-haystack:不支持es,6以上版本,django上做全文檢索的框架(對接es,對接solr,對接whoosh)
-whoosh-純Python的全文搜索庫,Whoosh是索引文本及搜索文本的類和函數庫。它能讓你開發出一個個性化的經典搜索引擎
-6以后,不允許一個索引下建多個type(類型)---》一個數據庫只能有一個表
3.解壓到指定目錄(隨便,不要有空格,中文 )
4.啟動es
-到es的bin路徑下,elasticsearch.bat
-Kibana 就是es的客戶端(官方提供,相當於Navicat)
-Elasticsearch-head 就是es的客戶端(第三方的,相當於Navicat)
5.啟動kibana
-修改kibana配置文件
server.port: 5601
server.host: "127.0.0.1"
server.name: lqz
elasticsearch.hosts: ["http://localhost:9200/"]
-配置跨域(改es的配置)
-elasticsearch.yml
http.cors.enabled: true
http.cors.allow-origin: "*"
-到kibana的bin路徑下,kibana.bat 啟動
6. 啟動Elasticsearch-head(第三方用node 寫的一個es客戶端)
-node 環境要裝好
-下載:https://github.com/mobz/elasticsearch-head
-解壓
-執行
npm install
npm run start
http://localhost:9100/
# kibana:官方提供的es客戶端,主要用來做增刪查改,有提示(postman,Elasticsearch-head)
# Elasticsearch-head :看集群的狀態,索引的狀態
Elasticsearch啟動成功

啟動kibana


啟動Elasticsearch-head
