ES是一款開源的搜索引擎,相比于mysql,它提供了非常強大的搜索功能
下面我們需要簡單的了解一下ES相比于mysql中的一些基本概念的區別:
首先我們要知道es在存儲數據的時候都是以json格式來存儲的
mysql <------> ES:
table <------> index:文檔的集合,類似數據庫的表
row <------> document:數據庫中的行,文檔都是json格式
column <------> field:數據庫中的行,就是json文檔中的字段
schema(約束) <------> mapping(映射)索引中文檔的約束,比如字段類型的約束,類似mysql中的表結構
sql <------> dsl:es提供的json風格的查詢語句,用于操作es實現crud
es的安裝
對于es的安裝這里選擇使用docker安裝
這里簡單說下對于兩個概念的理解:
- es:搜索引擎,他最小運行內存需要512mb,9200端口用戶對外暴露http請求,9300端口用于集群之間的通信
- kibana:es的可視化客戶端,可以幫助我們用可視化的界面進行dsl的請求收發,5601端口,用于客戶端界面的展示
這里注意:我們在docker中需要創造一個網絡環境,同時需要確保es與kibanna都在這一個網絡環境內,同時這兩個軟件的版本也需要相同才可以,我們的kibanna才可以正常運作。