日韩性视频-久久久蜜桃-www中文字幕-在线中文字幕av-亚洲欧美一区二区三区四区-撸久久-香蕉视频一区-久久无码精品丰满人妻-国产高潮av-激情福利社-日韩av网址大全-国产精品久久999-日本五十路在线-性欧美在线-久久99精品波多结衣一区-男女午夜免费视频-黑人极品ⅴideos精品欧美棵-人人妻人人澡人人爽精品欧美一区-日韩一区在线看-欧美a级在线免费观看

歡迎訪問 生活随笔!

生活随笔

當(dāng)前位置: 首頁 > 编程资源 > 编程问答 >内容正文

编程问答

Elastic Search入门:架构说明及Docker方式体验

發(fā)布時間:2025/4/5 编程问答 20 豆豆
生活随笔 收集整理的這篇文章主要介紹了 Elastic Search入门:架构说明及Docker方式体验 小編覺得挺不錯的,現(xiàn)在分享給大家,幫大家做個參考.

Elastic Search簡稱ES,是一款在搜索和日志檢索領(lǐng)域極其成功的開源產(chǎn)品,當(dāng)然ES背后的商業(yè)化公司也很成功。很多大的知名品牌,像是SAP、Booking、Ebay都在使用ES,

今天就來實(shí)際使用一下ES這款成功的商業(yè)化產(chǎn)品,并且介紹一下它的特點(diǎn)。

Elastic Search VS Luncence

說到搜索還是要提下Luncence,Luncence基本上可以稱為搜索領(lǐng)域的鼻祖了,是很早期的索引構(gòu)建庫。但是Luncence的主要問題有兩點(diǎn),其一是只支持Java類庫的調(diào)用方式,學(xué)習(xí)和使用門檻很高,其二是Luncence沒有線性擴(kuò)展能力。搜索又是一個幾乎隨業(yè)務(wù)量線性擴(kuò)張的功能,所以是否支持線性拓展資源很重要。

ES其實(shí)是對Luncence的庫的上層封裝,通過Restful的形式可以讓日志的構(gòu)建和檢索等功能更容易在多語言環(huán)境下調(diào)用,做到即使是開發(fā)小白也能快速上手。另外,ES支持線性拓展,使得使用ES的用戶不需要擔(dān)心資源協(xié)調(diào)的問題。

Elastic Search整體架構(gòu)

接下來介紹下ES的各個模塊,從下向上介紹。

(1)?Beat

Beat是一個輕量的數(shù)據(jù)采集器,Beat可以采集各種格式的數(shù)據(jù),比如日志文件、值班、網(wǎng)絡(luò)數(shù)據(jù)等,并且把這些數(shù)據(jù)傳輸?shù)絃ogstash。

(2)Logstash

Logstash是一個服務(wù)端的數(shù)據(jù)管道,能夠從多個數(shù)據(jù)來源采集數(shù)據(jù),完成數(shù)據(jù)轉(zhuǎn)換,然后將數(shù)據(jù)傳輸?shù)紼lastic Search。在Logstash中可以實(shí)現(xiàn)一些數(shù)據(jù)的過濾、轉(zhuǎn)碼等功能,比如把非結(jié)構(gòu)化數(shù)據(jù)轉(zhuǎn)化成結(jié)構(gòu)化數(shù)據(jù),比如從IP地址破譯出地理坐標(biāo)。

(3)Elastic Search

Elastic Search主要做數(shù)據(jù)和索引的存儲以及相關(guān)查詢的計(jì)算。

(4)Kibana

Kibana主要是一個數(shù)據(jù)可視化界面,通過可視化的方式展示ES的計(jì)算和索引結(jié)果。

(5)X-Pack

X-Pack是ES內(nèi)部插件,在老的ES版本是收費(fèi)的,在新的版本中很多插件是被開源免費(fèi)使用的。在X-Pack中可以直接使用機(jī)器學(xué)習(xí)、圖關(guān)系、安全相關(guān)的插件。

所以整體的流程如下,先通過Beat采集數(shù)據(jù),然后數(shù)據(jù)通過管道寫到Logstash做一步處理,接著寫到Elastic Search,然后通過Kibana做數(shù)據(jù)的可視化展現(xiàn)。

?

具體操作體驗(yàn)

?接下來就具體體驗(yàn)下ES的功能,當(dāng)然是選擇通過Docker的模式run一下最快。可以參考:

https://www.elastic.co/guide/en/elasticsearch/reference/current/docker.html

可以選擇通過拉起單一Docker的模式體驗(yàn),也可以通過Docker Compose的方式體驗(yàn)(Docker Compose比較適合構(gòu)建一個分布式ES集群)。我兩個方案都試了試,Docker Compose一堆坑,官方案例都沒跑起來。

具體操作流程如下:

(1)?先Pull一個官方鏡像

?docker pull docker.elastic.co/elasticsearch/elasticsearch:7.10.2

(2)?接著拉起這個鏡像

docker run -p 9200:9200 -p 9300:9300 -e "discovery.type=single-node" docker.elastic.co/elasticsearch/elasticsearch:7.10.2

(3)這個時候ES的服務(wù)就已經(jīng)跑起來了,Docker化的模式就是如此方便,服務(wù)的本地地址是localhost:9200。

(4)發(fā)送服務(wù)請求到localhost:9200,

curl -X GET "localhost:9200/_cat/nodes?v=true&pretty"

可以查到ES服務(wù)的節(jié)點(diǎn)的具體情況。

總結(jié)一下

?

ES基本上是目前業(yè)內(nèi)在搜素和日志檢索領(lǐng)域非常成熟的開源工具,ES有很多豐富的插件,比如Kibana、Logstash,而且ES對于容器化技術(shù)非常擁抱,可以快速的做部署。最后一點(diǎn)是ES的全部功能都可以通過一套標(biāo)準(zhǔn)的RestFul接口去調(diào)用,這個設(shè)計(jì)很方便用戶使用。

?

總結(jié)

以上是生活随笔為你收集整理的Elastic Search入门:架构说明及Docker方式体验的全部內(nèi)容,希望文章能夠幫你解決所遇到的問題。

如果覺得生活随笔網(wǎng)站內(nèi)容還不錯,歡迎將生活随笔推薦給好友。