Elasticsearch基礎介紹
1. Elasticsearch的概述
-
Elasticsearch是一個高可擴展的開源全文搜索和分析引擎,它允許存儲、搜索和分析大量的數據,並且這個過程是近實時的。它通常被用作底層引擎和技術,爲複雜的搜索功能和要求提供動力。Elasticsearch還是一個分佈式文檔數據庫,其中每個字段均可被索引,而且每個字段的數據均可被搜索,ES能夠橫向擴展至數以百計的服務器存儲以及處理PB級的數據。可以在極短的時間內存儲、搜索和分析大量的數據。通常作爲具有複雜搜索場景情況下的核心發動機。
-
ElasticSearch就是爲高可用和可擴展而生的。可以通過購置性能更強的服務器或者升級硬件來完成系統擴展,稱爲垂直或向上擴展(Vertical Scale/Scaling Up)。另一方面,增加更多的服務器來完成系統擴展,稱爲水平擴展或者向外擴展(Horizontal Scale/Scaling Out)。
2. Elasticsearch可以做什麼
- 一個線上商城系統,用戶需要搜索商城上的商品。
在這裏你可以用es存儲所有的商品信息和庫存信息,用戶只需要輸入”空調”就可以搜索到他需要搜索到的商品。 - 一個運行的系統需要收集日誌,用這些日誌來分析、挖掘從而獲取系統業務未來的趨勢。
你可以用logstash(elk中的一個產品,elasticsearch/logstash/kibana)收集、轉換你的日誌,並將他們存儲到es中。一旦數據到達es中,就你可以在裏面搜索、運行聚合函數等操作來挖掘任何你感興趣的信息。 - 如果你有想基於大量數據(數百萬甚至數十億的數據)快速調查、分析並且要將分析結果可視化的需求。可以用es來存儲你的數據,用kibana構建自定義的可視化圖形、報表,爲業務決策提供科學的數據依據。
開始安裝
1.這裏我們安裝最新版elasticsearch
拉取elasticsearch最新鏡像
docker pull docker.elastic.co/elasticsearch/elasticsearch:7.5.1
2.查看是否安裝成功
docker images 查看docker內部鏡像
如圖安裝成功
3.啓動elasticsearch,並且查看是否啓動成功
//啓動elasticsearch
docker run -d --name es -p 9200:9200 -p 9300:9300 -e "discovery.type=single-node" docker.elastic.co/elasticsearch/elasticsearch:7.5.1
//查看docker內部啓動的容器
docker ps
啓動參數說明
-d 後臺啓動
--name 指定啓動容器的名稱
-p 9200 是ES節點與外部通訊使用的端口。它是http協議的RESTful接口(各種CRUD操作都是走的該端口,如查詢:http://localhost:9200/user/_search)。
-p 9300是ES節點之間通訊使用的端口。它是tcp通訊端口,集羣間和TCPclient都走的它。(java程序中使用ES時,在配置文件中要配置該端口)
-e 設置環境變量
效果如下圖 elasticsearch 啓動成功
4.進入es容器
docker exec -it d5ef764b6cbc bash 進入es容器內
ll 查看es目錄
5.本機訪問測試
// 使用curl命令
curl 127.0.0.1:9200
如圖測試啓動成功
6.外部主機訪問測試
打開瀏覽器,輸入服務器的id:9200,如下圖即爲成功
謝謝您的閱讀!如果本文對您有幫助,您可以給我點個贊哦!