1. ElasticSearch簡介與安裝????
????1.1 簡介:?
????1.2 安裝:?
????1.3 圖形化界面:
2. 基本概念
????2.1 Node 與 Cluster:
????2.2 index:
????2.3 type:
????2.4 Mapping:
????2.5 Document:
3. 基本操作:
????3.1 創建索引index與映射mapping
????3.2 刪除索引:
????3.3 新增與修改文檔
????3.4 刪除文檔
????3.5 數據查詢
????3.6 IK中文分詞器
????3.7 字符串查詢與詞條查詢
4. 集群:
1. ElasticSearch簡介與安裝
????1.1 簡介:
????????Elastic 的底層是開源庫 Luence。Elastic 是 Lucene 的封裝,提供了REST API的操作接口
????1.2 安裝:
? ? ? ? 雙擊啟動,ES會開啟兩個端口,其中9200是http端口,9300是tcp端口
? ? ? ? config/elasticsearch.yml配置文件下追加配置,允許其跨域(因為圖形化界面是node.js開發)
????1.3 圖形化界面:
? ??????elasticsearch-head-master(js開發的es圖形化界面)
? ? ? ? npm install
? ? ? ? npm install -g grunt-cli
????????grunt server
2. 基本概念
????2.1 Node 與 Cluster:
????????Elastic 本質上是一個分布式數據庫,允許多臺服務器協同工作,每臺服務器可以運行多個 Elastic 實例。單個 Elastic 實例稱為一個節點(node)。一組節點構成一個集群(cluster)
????2.2 index:
? ? ? ? Elastic 會索引所有字段,經過處理后寫入一個反向索引。查找數據的時候,直接查找該索引(名字必須是小寫,等同于數據庫的概念)
? ? 2.3 type:
? ? ? ? 等同于表,對數據分組。ES 早期版本一個索引可以有多個Type ,從7.0開始一個索引只有一個Type,也可以說一個Type有一個 Mapping 定義。
? ? 2.4?Mapping:
????????類似于數據庫中的表結構定義 schema。定義索引中的字段的名稱,定義字段的數據類型,字段,倒排索引的相關配置
? ? 2.5 Document:
? ? ? ? Index 里面單條的記錄稱為 Document(文檔)
????????許多條 Document 構成了一個 Index。
????????Document 使用 JSON 格式表示
3. 基本操作:
? ? 3.1?創建索引index與映射mapping?
????3.2 刪除索引:
? ? ? ? DELETE: {host}/索引名稱
????3.3 新增與修改文檔
? ? ? ? POST/PUT
? ? 3.4 刪除文檔
? ???????DELETE: {host} / index / type / id
????3.5 數據查詢
? ? ? ? GET: {host} / index / type / id
????3.6 IK中文分詞器
? ? ? ? plugins目錄下放入elasticsearch-analysis-ik-5.6.8
? ? ? ? standard:我,是,程,序,員
? ? ? ? ik_smart:我,是,程序員
? ? 3.7 字符串查詢與詞條查詢
4. 集群:
? ? ? ? 配置文件新增:
? ? ? ? 啟動三個服務。
????????默認5個分片,每個分片都有一個復制