国产亚洲精品福利在线无卡一,国产精久久一区二区三区,亚洲精品无码国模,精品久久久久久无码专区不卡

當(dāng)前位置: 首頁 > news >正文

滄州北京網(wǎng)站建設(shè)杭州網(wǎng)站推廣優(yōu)化公司

滄州北京網(wǎng)站建設(shè),杭州網(wǎng)站推廣優(yōu)化公司,醫(yī)院網(wǎng)站建設(shè)需要注意什么,莆田山亭鄉(xiāng)建設(shè)局網(wǎng)站一、什么是Elasticsearch Elasticsearch(簡(jiǎn)稱ES)是一款非常強(qiáng)大的開源搜索引擎,可以幫助我們從海量數(shù)據(jù)中快速找到需要的內(nèi)容。它使用Java編寫,基于Apache Lucene來構(gòu)建索引和提供搜索功能,是一個(gè)分布式、可擴(kuò)展、近實(shí)…

一、什么是Elasticsearch

Elasticsearch(簡(jiǎn)稱ES)是一款非常強(qiáng)大的開源搜索引擎,可以幫助我們從海量數(shù)據(jù)中快速找到需要的內(nèi)容。它使用Java編寫,基于Apache Lucene來構(gòu)建索引和提供搜索功能,是一個(gè)分布式、可擴(kuò)展、近實(shí)時(shí)的高性能搜索與數(shù)據(jù)分析引擎。

1、Elasticsearch用在哪些場(chǎng)景?

我們想想一下,例如我們?nèi)ithub上去搜索一些倉庫,它去搜索的時(shí)候,不僅僅是把相關(guān)的倉庫搜索出來,還可以把你搜索的關(guān)鍵字所在的相關(guān)代碼塊展示出來,并進(jìn)行了高亮顯示,非常智能:

又例如我們?nèi)ゾ〇|上買東西,輸入商品信息后,網(wǎng)站立馬就會(huì)顯示出和我們輸入的關(guān)鍵字有關(guān)的商品,例如下圖輸入“iPhone”后,下面商品搜索出與蘋果手機(jī)相關(guān)的商品,并且“iPhone”這個(gè)字還會(huì)高亮顯示:

還比如,我們平時(shí)編程時(shí)遇到一些問題,肯定會(huì)去百度和谷歌一下,找相關(guān)問題的答案。在搜索引擎中輸入相關(guān)問題描述,下面就會(huì)顯示和這個(gè)問題相關(guān)的答案,并且和搜索關(guān)鍵字相關(guān)的內(nèi)容也會(huì)被高亮顯示:

甚至是在我們平時(shí)打車的時(shí)候,我們搜索附近車輛的時(shí)候,每一輛車所在的位置也是搜索范圍,是否是我們所在區(qū)域關(guān)鍵字的位置的車,為我們匹配最近的車輛:

以上的這些場(chǎng)景,Elasticsearch都可以實(shí)現(xiàn)。

2、Elastic stack(ELK)技術(shù)棧介紹

Elasticsearch結(jié)合kibana、Logstash、Beats,也就是elastic stack(ELK)。被廣泛應(yīng)用在日志數(shù)據(jù)分析、實(shí)時(shí)監(jiān)控等領(lǐng)域。

什么是“日志數(shù)據(jù)分析”?就是我們的項(xiàng)目在實(shí)際運(yùn)行過程中,會(huì)產(chǎn)生海量的日志信息,這些日志信息會(huì)方便我們定義系統(tǒng)出現(xiàn)的問題。而Elasticsearch可以幫我們將這些日志進(jìn)行可視化展示,方便我們做日志分析。
另一個(gè)“實(shí)時(shí)監(jiān)控”的概念,即我們?cè)陧?xiàng)目運(yùn)行的過程中,它的運(yùn)行狀態(tài)也是數(shù)據(jù),如CPU、內(nèi)存等情況,也可以被Elasticsearch收集并展示過來:

這足以看出Elasticsearch這個(gè)搜索引擎的應(yīng)用范圍是非常廣泛的。

在ELK的技術(shù)棧中,盡管有很多個(gè)組件,但核心就是我們的Elasticsearch,它主要負(fù)責(zé)數(shù)據(jù)的存儲(chǔ)、計(jì)算、搜索和分析;而Logstash和Beats主要負(fù)責(zé)數(shù)據(jù)抓取,Kibana則是一個(gè)數(shù)據(jù)可視化組件,用來在頁面上展示數(shù)據(jù):

在ELK數(shù)據(jù)棧中,Logstash和Beats、Kibana都不是不可替代的,我們可以使用自己的方法抓取數(shù)據(jù),和進(jìn)行圖形化展示。而Elasticsearch這個(gè)核心組件是不可替代的。

二、Elasticsearch的底層

Elasticsearch底層基于Apache Lucene開源庫進(jìn)行封裝。Lucene是一個(gè)Java語言的高性能、可擴(kuò)展的搜索引擎類庫,它提供了全文索引和搜索的底層實(shí)現(xiàn)。是Apache公司的頂級(jí)項(xiàng)目,由DougCutting于1999年研發(fā)。

官網(wǎng)地址:https://lucene.apache.org/

打開官網(wǎng)首頁我們可以看到,截止到2024年11月Lucene的最新版本是10.0.0版,已經(jīng)迭代了很多版本了。

1、Lucene的優(yōu)點(diǎn)

Lucene其實(shí)就是一個(gè)濃縮的jar包(類庫),它有以下的優(yōu)點(diǎn):
(1)易擴(kuò)展
Lucene具有高度的可擴(kuò)展性和可定制性,其系統(tǒng)架構(gòu)設(shè)計(jì)精良,使得開發(fā)者能夠方便地根據(jù)業(yè)務(wù)需求進(jìn)行功能擴(kuò)展和定制(二次開發(fā))。通過實(shí)現(xiàn)特定的接口和繼承相關(guān)類,開發(fā)者可以輕松地添加新功能、優(yōu)化現(xiàn)有功能或調(diào)整索引和搜索邏輯。
(2)高性能(基于倒排索引)
Lucene的高性能主要得益于其采用的倒排索引技術(shù)。倒排索引是一種將文檔中的詞匯項(xiàng)作為關(guān)鍵字,文檔ID作為值,形成的“值-鍵”對(duì)調(diào)的索引結(jié)構(gòu)。這種結(jié)構(gòu)使得Lucene在搜索時(shí)能夠直接根據(jù)關(guān)鍵詞快速定位到包含該詞的所有文檔,從而極大地提高了搜索效率。此外,Lucene還通過一系列優(yōu)化措施,如壓縮索引數(shù)據(jù)、使用緩存等,進(jìn)一步提升了搜索性能。
想象我們有一堆書,想要快速找到包含某個(gè)關(guān)鍵詞的書,最直接的方法是逐本翻閱,但這顯然非常耗時(shí)。而Lucene則采用了一種更聰明的方法,即倒排索引。它首先為每本書中的每個(gè)關(guān)鍵詞建立一個(gè)索引,記錄下這個(gè)關(guān)鍵詞出現(xiàn)在哪些書中以及出現(xiàn)的位置。這樣,當(dāng)我們想要找到包含某個(gè)關(guān)鍵詞的書時(shí),只需要查看這個(gè)索引,就能迅速定位到相關(guān)的書。這種索引方式就像是一個(gè)高效的“書簽”,幫助我們快速找到目標(biāo)內(nèi)容,從而大大提高了搜索效率。

2、Lucene的缺點(diǎn)

以上是Lucene的優(yōu)點(diǎn),但同時(shí)它也存在以下缺點(diǎn):
(1)只限于Java語言開發(fā)
Lucene是一個(gè)基于Java語言開發(fā)的搜索引擎庫,這意味著它主要適用于Java語言的項(xiàng)目和開發(fā)環(huán)境。對(duì)于那些不使用Java的項(xiàng)目或團(tuán)隊(duì)來說,可能需要額外的學(xué)習(xí)和集成成本。
(2)學(xué)習(xí)曲線陡峭
Lucene作為一個(gè)功能強(qiáng)大且復(fù)雜的搜索引擎庫,API設(shè)計(jì)非常復(fù)雜晦澀,其學(xué)習(xí)曲線相對(duì)陡峭。對(duì)于初學(xué)者來說,需要花費(fèi)較多的時(shí)間和精力來熟悉Lucene的架構(gòu)、API和最佳實(shí)踐。
(3)不支持水平擴(kuò)展(需二次開發(fā))
Lucene的主要目的是為了實(shí)現(xiàn)搜索,而對(duì)于高并發(fā)、高可用等場(chǎng)景沒有技術(shù)支持,無法直接進(jìn)行水平擴(kuò)展(集群擴(kuò)展),即通過在多個(gè)服務(wù)器上部署多個(gè)實(shí)例來共同處理搜索請(qǐng)求。雖然Lucene可以通過分片(sharding)等技術(shù)在一定程度上實(shí)現(xiàn)數(shù)據(jù)的分布式存儲(chǔ)和搜索,但這需要開發(fā)者進(jìn)行額外的二次開發(fā)工作。

三、Elasticsearch的發(fā)展


Elasticsearch的起源可以追溯到2004年,當(dāng)時(shí)Shay Banon基于Lucene開發(fā)了一個(gè)名為Compass的搜索引擎(單體應(yīng)用,主要為他老婆搜索食譜用)。然而,隨著技術(shù)的不斷演進(jìn)和需求的日益增長(zhǎng),Shay Banon在2010年決定重寫Compass(支持分布式和集群環(huán)境),并將其命名為Elasticsearch。這一決定標(biāo)志著Elasticsearch作為一個(gè)獨(dú)立的開源項(xiàng)目正式誕生,并迅速在搜索和分析領(lǐng)域嶄露頭角。
Elasticsearch的官網(wǎng)地址為:https://www.elastic.co/cn/:

這是一個(gè)提供Elasticsearch相關(guān)資源、文檔和社區(qū)支持的權(quán)威平臺(tái),它是由Elastic公司管理,這個(gè)公司的創(chuàng)始人就是上面提到Elasticsearch的原創(chuàng)者Shay Banon。
截止至2024年11月,Elasticsearch已經(jīng)發(fā)展到了8.15.3版本,這一版本在性能、功能和安全性等方面都進(jìn)行了諸多優(yōu)化和升級(jí)。隨著版本的迭代,Elasticsearch不斷引入新技術(shù)和特性,以滿足日益復(fù)雜和多樣化的搜索和分析需求。
相比于Lucene,Elasticsearch具備下列優(yōu)勢(shì):

1、支持分布式,可水平擴(kuò)展:

Elasticsearch采用了分布式架構(gòu),可以輕松擴(kuò)展到多個(gè)節(jié)點(diǎn),以便處理大規(guī)模數(shù)據(jù)。這種架構(gòu)使得Elasticsearch能夠應(yīng)對(duì)PB級(jí)別的數(shù)據(jù)存儲(chǔ)和搜索需求,同時(shí)保持高性能和可用性。
通過分片(sharding)和復(fù)制(replication)機(jī)制,Elasticsearch實(shí)現(xiàn)了數(shù)據(jù)的高可用性和容錯(cuò)性。即使某個(gè)節(jié)點(diǎn)發(fā)生故障,系統(tǒng)也能快速切換到其他節(jié)點(diǎn),確保搜索和分析服務(wù)的連續(xù)性。

2、提供Restful接口,可被任何語言調(diào)用:

Elasticsearch提供了一個(gè)簡(jiǎn)單易用的RESTful API,使得數(shù)據(jù)的索引、搜索和分析變得非常簡(jiǎn)單。這一API遵循REST風(fēng)格,支持HTTP協(xié)議,因此可以被任何編程語言調(diào)用。
通過RESTful API,開發(fā)者可以輕松地將Elasticsearch集成到各種應(yīng)用程序中,實(shí)現(xiàn)數(shù)據(jù)的實(shí)時(shí)搜索、分析和可視化。這種靈活性使得Elasticsearch成為構(gòu)建現(xiàn)代搜索和分析應(yīng)用的理想選擇。
綜上所述,Elasticsearch作為L(zhǎng)ucene的衍生產(chǎn)品,不僅繼承了Lucene的強(qiáng)大搜索功能,還通過分布式架構(gòu)和RESTful API等創(chuàng)新特性,實(shí)現(xiàn)了更高的可擴(kuò)展性、易用性和集成性。這些優(yōu)勢(shì)使得Elasticsearch在搜索和分析領(lǐng)域具有廣泛的應(yīng)用前景和巨大的市場(chǎng)潛力。

四、為什么學(xué)習(xí)Elasticsearch?

實(shí)際上,從Lucene誕生開始,就不止Elasticsearch一個(gè)搜索引擎程序問世,其中還包含Splunk(商業(yè)項(xiàng)目)、Solr(Apache的開源搜索引擎),但是Elasticsearch在全球搜索引擎排名中,一直穩(wěn)坐第一名的寶座,并且和第二名Splunk拉開了很大差距:

其實(shí)在Elasticsearch剛剛誕生時(shí),Solr在全球搜索引擎中占有很大比例,但是隨著后來的發(fā)展,Solr漸漸地被Elasticsearch超越了(大概是2016年):

所以我們主要還是以學(xué)習(xí)目前占比最高的搜索引擎作為我們本次學(xué)習(xí)的目標(biāo)。

五、學(xué)習(xí)總結(jié)

本篇博客,我們一共學(xué)習(xí)了以下三個(gè)知識(shí),大家可以回顧一下:
1、什么是elasticsearch?
一個(gè)開源的分布式搜索引擎,可以用來實(shí)現(xiàn)搜索、日志統(tǒng)計(jì)、分析系統(tǒng)監(jiān)控等功能
2、什么是elastic stack(ELK)?
是以elasticsearch為核心的技術(shù)棧,包括beats、Logstash、kibana、elasticsearch
3、什么是Lucene?
是Apache的開源搜索引擎類庫,提供了搜索引擎的核心API

至此,關(guān)于elasticsearch的基礎(chǔ)介紹就到此結(jié)束了,為了更加深入理解elasticsearch為的原理,下一篇我們來學(xué)習(xí)什么是“倒排索引”。

參考:《黑馬Elasticsearch全套教程》

轉(zhuǎn)載請(qǐng)注明出處:https://guangzai.blog.csdn.net/article/details/143658138

http://m.aloenet.com.cn/news/36553.html

相關(guān)文章:

  • 上海高端網(wǎng)站制作公司網(wǎng)站推廣優(yōu)化怎么做最好
  • 四子王旗建設(shè)局網(wǎng)站營(yíng)銷策略
  • 三農(nóng)建設(shè)委員官方網(wǎng)站口碑營(yíng)銷案例2021
  • 普陀網(wǎng)站建設(shè)seo外包公司多少錢
  • 深圳交友網(wǎng)站建設(shè)nba交易最新消息
  • 貿(mào)易公司做網(wǎng)站有優(yōu)勢(shì)嗎怎么在百度做網(wǎng)站推廣
  • 網(wǎng)站優(yōu)化培訓(xùn)學(xué)校成都網(wǎng)站建設(shè)方案外包
  • 搭建視頻服務(wù)器武漢網(wǎng)站搜索引擎優(yōu)化
  • 網(wǎng)站改版開發(fā)公司鄭州做網(wǎng)站推廣哪家好
  • 百度做網(wǎng)站審核要多久服務(wù)營(yíng)銷理論
  • 網(wǎng)站頁面怎么做識(shí)別二維碼谷歌引擎搜索入口
  • 網(wǎng)站建設(shè)和網(wǎng)絡(luò)營(yíng)銷濟(jì)寧百度推廣公司
  • 專業(yè)制作網(wǎng)站服務(wù)公司深圳龍崗區(qū)優(yōu)化防控措施
  • 長(zhǎng)沙專業(yè)做網(wǎng)站seo含義
  • 如何做外圍網(wǎng)站的代理關(guān)鍵詞排名是由什么決定的
  • 官方網(wǎng)站做自適應(yīng)好還是響應(yīng)式廈門人才網(wǎng)個(gè)人會(huì)員
  • 設(shè)計(jì)集合網(wǎng)站北京seo推廣服務(wù)
  • 潛江網(wǎng)站建設(shè)如何提高搜索引擎優(yōu)化
  • 長(zhǎng)沙企業(yè)網(wǎng)站建設(shè)品牌廣州各區(qū)最新動(dòng)態(tài)
  • 上海網(wǎng)站關(guān)鍵字優(yōu)德國(guó)搜索引擎
  • 滎陽做網(wǎng)站推廣知乎推廣渠道
  • 海南??谧鼍W(wǎng)站軟文推廣發(fā)稿
  • 淘寶客網(wǎng)站制作教程推廣團(tuán)隊(duì)
  • 西安網(wǎng)站外包臺(tái)州做優(yōu)化
  • 好網(wǎng)站開發(fā)培訓(xùn)夜夜草
  • php無版權(quán)企業(yè)網(wǎng)站管理系統(tǒng)企業(yè)網(wǎng)站推廣外包
  • 網(wǎng)站做推廣頁需要什么軟件seo收錄查詢
  • 外貿(mào)響應(yīng)式網(wǎng)站google服務(wù)框架
  • 贛icp上饒網(wǎng)站建設(shè)seo網(wǎng)站推廣實(shí)例
  • 可以做科學(xué)模擬實(shí)驗(yàn)的網(wǎng)站百度指數(shù)怎么查詢