今日熱聞!【ES三周年】寫給ES開發(fā)者的Elasticsearch入門指南
2023-02-09 19:55:59 來源:騰訊云
前言
眾所周知,在做開發(fā)的時候使用傳統(tǒng)的通過數(shù)據(jù)庫搜索查詢數(shù)據(jù)的方式的時候,如果數(shù)據(jù)庫數(shù)據(jù)不多的情況下還能比較正常的做好及時搜索的需求,但是隨著大數(shù)據(jù)的井噴式發(fā)展,數(shù)據(jù)量級幾乎是呈現(xiàn)指數(shù)增長,如果還是通過傳統(tǒng)的方式來進行搜索數(shù)據(jù)庫的數(shù)據(jù),那就要等待非常久的時間來等待搜索結(jié)果,數(shù)據(jù)體量很大的情況下非常影響用戶的體驗,要想解決這種問題,使用的數(shù)據(jù)搜索引擎采用的是Elasticsearch來進行搜索的。那么本文就來分享一下Elasticsearch的使用入門,方便查閱使用。
Elasticsearch定義
首先,來了解一下Elasticsearch,它是一個分布式可擴展高實時的搜索和分析引擎,可以很輕松的讓高量級數(shù)據(jù)具有搜索分析和探尋能力,其自身的水平伸縮性可以讓數(shù)據(jù)在生產(chǎn)環(huán)境下具有更高價值。
【資料圖】
其次,Elasticsearch其實是一個建立在Apache Lucene全文搜索引擎基礎(chǔ)上的搜索引擎,它是基于RESTful web接口。一般情況下,Elasticsearch會和Logstash數(shù)據(jù)收集和日志解析引擎、Kibana分析和可視化平臺一起開發(fā)使用的,三者組成了一個集成解決方案,組合稱為“Elastic Stack”。其中,Elasticsearch 是位于Elastic Stack核心的分布式搜索和分析引擎;Logstash 和 Beats則是有助于收集、聚合和豐富用戶的數(shù)據(jù)并將其存儲在 Elasticsearch 中;Kibana 則是畫用戶能夠以交互方式探索、可視化和分享對數(shù)據(jù)的見解,并且進行管理和監(jiān)控堆棧的操作。Elasticsearch支持分布式,所以不需要用戶配置注冊中心,只需提供一個RESTful web接口,就可以隨時調(diào)用該接口來使用Elasticsearch了。
最后,Elasticsearch是通過Java來實現(xiàn)的,而且是基于Apache許可條款下的開源產(chǎn)品,也是目前很流行的企業(yè)級搜索引擎。Elasticsearch設(shè)計用于云計算中,Elasticsearch 是索引、搜索和分析發(fā)生的地方,它能夠達到實時搜索,具有穩(wěn)定、可靠、快速、安裝使用方便等特點。
Elasticsearch實現(xiàn)原理
Elasticsearch的實現(xiàn)其實過程不復(fù)雜,主要就是:首先,用戶把數(shù)據(jù)提交到Elasticsearch數(shù)據(jù)庫中,然后通過分詞控制器把對應(yīng)的語句分詞處理,接著把其權(quán)重和分詞結(jié)果都存入到數(shù)據(jù)中,當(dāng)用戶進行搜索數(shù)據(jù)的時候,根據(jù)權(quán)重把結(jié)果進行排序、打分處理,最后把返回的結(jié)果返回給用戶顯示。
Elasticsearch的作用
話又說回來了,文章開頭講到在實際開發(fā)中使用傳統(tǒng)的通過數(shù)據(jù)庫搜索查詢數(shù)據(jù),如果數(shù)據(jù)不多的情況下能正常的做好及時搜索的需求,但是數(shù)據(jù)體量很大的時候使用傳統(tǒng)的方式來進行搜索數(shù)據(jù)庫的數(shù)據(jù),那就要等待非常久的時間,這種情況下非常影響用戶的體驗,要想解決這樣的問題,就需要使用Elasticsearch來進行搜索查詢操作。
而且Elasticsearch 給所有類型的數(shù)據(jù)提供來一個近乎實時的搜索和分析功能且支持多租戶,無論是有結(jié)構(gòu)化、非結(jié)構(gòu)化文本、數(shù)字數(shù)據(jù)、地理空間數(shù)據(jù),Elasticsearch 都能以快速搜索的方式高效地存儲和索引數(shù)據(jù),可以用于搜索各種文檔。使用者可以超越簡單的數(shù)據(jù)檢索和聚合信息來發(fā)現(xiàn)數(shù)據(jù)中的趨勢和模式,隨著數(shù)據(jù)和查詢量的增加,Elasticsearch 的分布式特性讓部署能夠隨之無縫的增長。
且Elasticsearch是分布式的,意味著索引可以被分成分片的,比如每個分片可以有0個或多個副本;每個節(jié)點托管一個或多個分片,并且充當(dāng)協(xié)調(diào)器將操作委托給正確的分片的。相關(guān)數(shù)據(jù)通常存儲在同一個索引中,這個索引是由一個或多個主分片和零個或多個復(fù)制分片組成,但是一經(jīng)創(chuàng)建了索引,就不能更改主分片的數(shù)量。分布式實時文件存儲,并將每一個字段都編入索引,使其可以被搜索,是一個實時分析的分布式搜索引擎。
又有Elasticsearch支持實時GET請求,它比較適合作為NoSQL數(shù)據(jù)存儲,但是缺少分布式事務(wù)。Elasticsearch可以擴展到上百臺服務(wù)器,處理PB級別的結(jié)構(gòu)化或非結(jié)構(gòu)化數(shù)據(jù),其實關(guān)于Elasticsearch只需要知道3個關(guān)鍵字:分布式、實時、搜索引擎,即可。
騰訊云ES
騰訊云 Elasticsearch Service(ES)是基于開源引擎打造的云端全托管 ELK 服務(wù),集成 X-Pack 特性、獨有高性能自研內(nèi)核、QQ 分詞、集群巡檢、一鍵升級等優(yōu)勢能力,引入極致性價比的騰訊自研星星海服務(wù)器。輕松管理和運維集群,高效構(gòu)建日志分析、運維監(jiān)控、信息檢索、數(shù)據(jù)分析等業(yè)務(wù)。
Elasticsearch集群安裝
可以直接去騰訊云官網(wǎng)下載ES:https://artifacts.elastic.co/downloads/elasticsearch/elasticsearch-6.4.2.zip。
然后下載Elasticsearch的鏡像,可以直接通過稻殼去下載:
docker pull docker.elastic.co/elasticsearch/elasticsearch:7.17.1
還有filebeat鏡像和kibana鏡像的下載,同理:
docker pull docker.elastic.co/kibana/kibana:7.17.1
和
docker pull docker.elastic.co/beats/filebeat:7.17.1
注意:這里不在介紹安裝包的下載以及解壓,JDK安裝和環(huán)境變量的設(shè)置等基礎(chǔ)操作。
經(jīng)過Elasticsearch的安裝,直接elasticsearch -d后臺執(zhí)行,重啟服務(wù)之后即可。
Elasticsearch使用
由于篇幅問題,本文以Elasticsearch的查詢集群日志功能的簡單使用為例子來介紹。
經(jīng)過上面的集群安裝之后需要進行一些提前準備工作:
1、注冊并登錄騰訊云官網(wǎng),然后找到并進入https://console.cloud.tencent.com/es;
2、如果首次使用,需要新建創(chuàng)建“新建集群”,創(chuàng)建集群之后進入集群詳情;
3、集群詳情頁找到日志模塊,然后查看集群運行的日志信息;
4、通過騰訊云管理平臺可以按照時間范圍和關(guān)鍵字搜索來查詢對應(yīng)的集群日志信息;
5、通過命令docker compose logs 來查看容器運行日志信息。
具體信息如下所示:
[root@chen]# docker compose logs |headefk-kibana-1 | {"type":"log","@timestamp":"2023-02-07T01:23:47+00:00","tags":["info","plugins-service"],"pid":7,"message":"Plugin "metrics" is disabled."}efk-kibana-1 | {"type":"log","@timestamp":"2023-01-20T01:23:47+00:00","tags":["info","http","server","Pre"],"pid":7,"message":"http server running at http://0.0.0.0:5601"}...
6、最后就是通過查詢集群日志來解決集群運行遇到的問題。
7、注意的地方。
1??設(shè)置索引
PUT */_settings{"index.indexing.slowlog.threshold.index.debug" : "5ms","index.indexing.slowlog.threshold.index.info" : "50ms","index.indexing.slowlog.threshold.index.warn" : "100ms","index.search.slowlog.threshold.fetch.debug" : "10ms","index.search.slowlog.threshold.fetch.info" : "50ms","index.search.slowlog.threshold.fetch.warn" : "100ms","index.search.slowlog.threshold.query.debug" : "100ms","index.search.slowlog.threshold.query.info" : "200ms","index.search.slowlog.threshold.query.warn" : "1s"}
2??查詢集群日志的關(guān)鍵字查詢語法和lucene的查詢語法一樣。
如制定關(guān)鍵詞:message:NAME,又如多條件組合查詢:level:INFO and ip:10.0.1.2。
3??Elasticsearch Service會默認開啟GC日志。
GC日志會展示日志的時間、節(jié)點IP、級別等信息。
最后
本文關(guān)于Elasticsearch入門指南的簡單介紹,想必讀者會有所收獲,Elasticsearch 自從誕生以來,它應(yīng)用的地方越來越廣泛,特別是在大數(shù)據(jù)領(lǐng)域,功能也越來越強大。由于 Elasticsearch 集群的穩(wěn)定性,決定了其業(yè)務(wù)發(fā)展的高度,對于一個應(yīng)用來說其穩(wěn)定是第一目標(biāo),比如騰訊云基于 Elasticsearch 構(gòu)建的平臺服務(wù),幫助電商應(yīng)用程序、網(wǎng)站等提供安全、高可靠、低成本、低延時、高吞吐量的個性化搜索,使得 Elasticsearch 在更多的地方應(yīng)用,讓我們期待Elasticsearch帶來的新的技術(shù)革命吧!
參考文獻
官方文檔:https://cloud.tencent.com/product/es?from=10680
關(guān)鍵詞:
推薦內(nèi)容
- 當(dāng)前頭條:極目快評|3胞胎姐妹同日出嫁,只需隨一
- 天天動態(tài):安徽亳州多地市民凌晨聽到巨響,官方回應(yīng)
- 國網(wǎng)鄂州供電公司推進“鄂電紅馬甲”服務(wù)落地,保
- 環(huán)球觀焦點:走進湖北大學(xué)體育學(xué)院 感受沙湖畔
- 世界快看:一盤棋系統(tǒng)化 武漢市加速推進多城環(huán)保
- 環(huán)保先行,頗爾助力百威實現(xiàn)啤酒無硅藻土膜過濾項
- 請把手機橫過來! 這是一幅長長長長……長的各族
- 焦點訊息:ChatGPT爆火背后冷思考:人工智能落地
- 增額終身壽險持續(xù)受熱捧 “富德生命傳世金尊保障
- 怎樣選擇成長股?成長股的股票有哪些?
- 共享共創(chuàng)共贏:恩施神農(nóng)架襄陽攜手簽約創(chuàng)客協(xié)議
- 大亞灣海事局聯(lián)合鹽田海事局開展學(xué)雷鋒志愿服務(wù)活
- 【全球時快訊】華中地區(qū)最大載重噸原油船“長祥洲
- 西安班列再出發(fā)!西部陸海新通道持續(xù)助力企業(yè)出口
- 瓊州海峽2人騎水上自行車遇險被安全救起
- 世界觀點:滬蘇VTS覆蓋水域船舶 “一次性船位報
- 元培智庫正式更名為元培工匠專家谷
- 燕園人合集團董事長應(yīng)邀實地考察魯中職業(yè)學(xué)院
- 全球熱頭條丨桓臺縣召開大整治大提升行動暨全域公
- 當(dāng)前快訊:臥龍區(qū)應(yīng)急管理局:全面開展2023年備汛
- 世界快看點丨黎黃陂路歷史文化街區(qū)入選國家級旅游
- 開往春天的大巴——山東理工大學(xué)62名畢業(yè)生走進淄
- 【全球熱聞】武漢周末最高氣溫將超過20℃
- 焦點簡訊:對中國負責(zé)、對世界負責(zé)的現(xiàn)代化新路(
- 當(dāng)前信息:開局之年“hui”藍圖丨未來農(nóng)業(yè)什么樣
- 全球微頭條丨平凡英雄|我是人大代表
- 環(huán)球看熱訊:梁倩娟:加大農(nóng)產(chǎn)品深加工 讓農(nóng)產(chǎn)品
- 觀速訊丨年入賬100億、門店超8200家,瑞幸急赴下
- 焦點快播:雙休日天氣晴好,最高溫沖上20℃+
- 好戲連臺迎兩會!這里有個超10萬人看戲的“大劇場
- 天天快看:@太原人!婦女節(jié)即將來臨 我省景區(qū)專
- 天天熱文:宜賓南溪區(qū)發(fā)揮統(tǒng)戰(zhàn)資源優(yōu)勢助力鄉(xiāng)村教
- 環(huán)球熱點!武漢樓市回暖?2月新房成交創(chuàng)17年新高
- 指紋支付額度有限制嗎?指紋支付有什么要注意的?
- 如何設(shè)置指紋支付?指紋支付到底安全不安全?
- 法獅龍“頂墻一體·才高級”隱形變頻浴霸全國發(fā)布
- 全球觀熱點:中國博物館協(xié)會理事長劉曙光一行蒞臨
- 快資訊丨臨沂市體育局黨員志愿者到臨沭縣開展愛心
- 簡訊:先“成人”再“成才” 建立多元評價機制
- 天天視訊!“南粵21式”實在是高!哪招你最愛,快