chinese直男口爆体育生外卖, 99久久er热在这里只有精品99, 又色又爽又黄18禁美女裸身无遮挡, gogogo高清免费观看日本电视,私密按摩师高清版在线,人妻视频毛茸茸,91论坛 兴趣闲谈,欧美 亚洲 精品 8区,国产精品久久久久精品免费

0
  • 聊天消息
  • 系統(tǒng)消息
  • 評論與回復(fù)
登錄后你可以
  • 下載海量資料
  • 學(xué)習(xí)在線課程
  • 觀看技術(shù)視頻
  • 寫文章/發(fā)帖/加入社區(qū)
會員中心
創(chuàng)作中心

完善資料讓更多小伙伴認識你,還能領(lǐng)取20積分哦,立即完善>

3天內(nèi)不再提示

ElasticSearch是什么?應(yīng)用場景是什么?

電子工程師 ? 來源:Xlucas ? 作者:Xlucas ? 2022-10-09 18:38 ? 次閱讀
加入交流群
微信小助手二維碼

掃碼添加小助手

加入工程師交流群

1、什么是搜索

2、如果用數(shù)據(jù)庫做搜索會怎么樣

3、什么是全文檢索、倒排索引和Lucene

4、ElasticSearch是什么

ElasticSearch的功能

ElasticSearch的應(yīng)用場景

ElasticSearch的特點

ElasticSearch是一個分布式,高性能、高可用、可伸縮的搜索和分析系統(tǒng)

看了上面這段話,估計很多人都懵了,這個是啥。我們先從搜索說起,先介紹下面幾點

1、什么是搜索

百度、Google :我們想尋找一個我們喜歡的電影或者書籍就會去百度或者Google搜索一下。

互聯(lián)網(wǎng)搜索 :電商搜索商品,招聘網(wǎng)站搜索簡歷或者崗位

IT系統(tǒng)的搜索 :員工管理搜索,會議管理搜索

2、如果用數(shù)據(jù)庫做搜索會怎么樣

在軟件開發(fā)里面,數(shù)據(jù)都是存儲在數(shù)據(jù)庫里面的,比如電商網(wǎng)站的商品信息,員工的信息等等,如果從員工角度去做搜索功能,我們會這么設(shè)計

dc5017f0-30e2-11ed-ba43-dac502259ad0.png

以上會存在幾個問題:

如果表記錄上千萬上億了這個性能問題,另外一個如果有一個本文字段要在里面模糊配置,這個就會出現(xiàn)嚴重的性能問題

還不能將搜索詞拆分開來,比如上面這個只能搜索名字是“張三”開頭的員工,如果想搜出“張小三”那是搜索不出來的。

總體來說,用數(shù)據(jù)庫來實現(xiàn)搜索,是不太靠譜的,通常性能也會很差

3、什么是全文檢索、倒排索引和Lucene

舉個簡單的例子:比如最近上映的熱劇(碟中諜6:全面瓦解),我們想搜索一下全面瓦解這個電視劇,可是在輸入的過程,不小心輸入了”全瓦解”,我們看看百度這個返回了什么,百度返回的結(jié)果確實是我想要找到的內(nèi)容,現(xiàn)在我們介紹一下全文檢索和倒排索引是什么

dc6620c2-30e2-11ed-ba43-dac502259ad0.png

我們看看下面這個圖,假如我們有很多數(shù)據(jù)”全面瓦解電影,全面瓦解海報,全面瓦解評論,全面瓦解文章”等等信息,從數(shù)據(jù)到構(gòu)建倒排索引的過程我們圖中標(biāo)記為“1”,通俗一點講就是,倒排索引就是講數(shù)據(jù)中的詞拆分構(gòu)建一個大表,將關(guān)鍵字拆出來,后面帶上這個文章的documentid號,例如中間這個就是倒排索引了。

全文檢索就比較好理解的,就是當(dāng)我們輸入“全瓦解”,會被拆分成”全”,“瓦解”2個此,用2個詞去倒排索引里面去檢索數(shù)據(jù),檢索到的數(shù)據(jù)返回。整個過程就叫做全文檢索

dc70c770-30e2-11ed-ba43-dac502259ad0.png

如果這個用數(shù)據(jù)庫的思維來做的話,假如一共100W的記錄,按照之前的思路就是掃描100W次,而且每次掃描,都需要匹配那個文本所有的字符,確認是否包含搜索的關(guān)鍵詞,而且還不能將搜索詞拆解來進行檢索

如果是利用倒排索引的話,假設(shè)還是100W,拆分出來的詞語,假設(shè)有1000W個詞語,那么在倒排索引中,就有1000W行。我們可能不需要檢索1000W詞,有可能檢索1次,就能找到我們需要的數(shù)據(jù),也有可能是100W次,也有可能是1000W次

lucene:就是一個jar包,里面包含了封裝好的各種建立倒排索引,以及進行搜索的代碼,包括各種算法。我們就用java開發(fā)的時候

4、ElasticSearch是什么

Lucene是單機的模式,如果你的數(shù)據(jù)量超過了一臺物理機的容量,你需要擴容,將數(shù)據(jù)拆分成2份放在不同的集群,這個就是典型的分布式計算了。需要拷貝容錯,機器宕機,數(shù)據(jù)一致性等復(fù)雜的場景,這個實現(xiàn)就比較復(fù)雜了。

ES解決了這些問題

自動維護數(shù)據(jù)的分布到多個節(jié)點的索引的建立,還有搜索請求分布到多個節(jié)點的執(zhí)行

自動維護數(shù)據(jù)的冗余副本,保證了一旦機器宕機,不會丟失數(shù)據(jù)

封裝了更多高級的功能,例如聚合分析的功能,基于地理位置的搜索

dc7e764a-30e2-11ed-ba43-dac502259ad0.png

ElasticSearch的功能

1、分布式的搜索引擎和數(shù)據(jù)分析引擎

搜索:網(wǎng)站的站內(nèi)搜索,IT系統(tǒng)的檢索

數(shù)據(jù)分析:電商網(wǎng)站,統(tǒng)計銷售排名前10的商家

2、全文檢索,結(jié)構(gòu)化檢索,數(shù)據(jù)分析

全文檢索:我想搜索商品名稱包含某個關(guān)鍵字的商品

結(jié)構(gòu)化檢索:我想搜索商品分類為日化用品的商品都有哪些

數(shù)據(jù)分析:我們分析每一個商品分類下有多少個商品

3、對海量數(shù)據(jù)進行近實時的處理

分布式:ES自動可以將海量數(shù)據(jù)分散到多臺服務(wù)器上去存儲和檢索

海聯(lián)數(shù)據(jù)的處理:分布式以后,就可以采用大量的服務(wù)器去存儲和檢索數(shù)據(jù),自然而然就可以實現(xiàn)海量數(shù)據(jù)的處理了

近實時:檢索數(shù)據(jù)要花費1小時(這就不要近實時,離線批處理,batch-processing);在秒級別對數(shù)據(jù)進行搜索和分析

ElasticSearch的應(yīng)用場景

維基百科

The Guardian(國外新聞網(wǎng)站)

Stack Overflow(國外的程序異常討論論壇

GitHub(開源代碼管理)

電商網(wǎng)站

日志數(shù)據(jù)分析

商品價格監(jiān)控網(wǎng)站

BI系統(tǒng)

站內(nèi)搜索

ElasticSearch的特點

可以作為一個大型分布式集群(數(shù)百臺服務(wù)器)技術(shù),處理PB級數(shù)據(jù),服務(wù)大公司;也可以運行在單機上,服務(wù)小公司

Elasticsearch不是什么新技術(shù),主要是將全文檢索、數(shù)據(jù)分析以及分布式技術(shù),合并在了一起

對用戶而言,是開箱即用的,非常簡單,作為中小型的應(yīng)用,直接3分鐘部署一下ES

Elasticsearch作為傳統(tǒng)數(shù)據(jù)庫的一個補充,比如全文檢索,同義詞處理,相關(guān)度排名,復(fù)雜數(shù)據(jù)分析,海量數(shù)據(jù)的近實時處理;

聲明:本文內(nèi)容及配圖由入駐作者撰寫或者入駐合作網(wǎng)站授權(quán)轉(zhuǎn)載。文章觀點僅代表作者本人,不代表電子發(fā)燒友網(wǎng)立場。文章及其配圖僅供工程師學(xué)習(xí)之用,如有內(nèi)容侵權(quán)或者其他違規(guī)問題,請聯(lián)系本站處理。 舉報投訴
  • JAVA
    +關(guān)注

    關(guān)注

    20

    文章

    3005

    瀏覽量

    116800
  • 數(shù)據(jù)庫
    +關(guān)注

    關(guān)注

    7

    文章

    4078

    瀏覽量

    68520
  • Elasticsearch
    +關(guān)注

    關(guān)注

    0

    文章

    30

    瀏覽量

    3150

原文標(biāo)題:ElasticSearch是什么?應(yīng)用場景是什么?

文章出處:【微信號:芋道源碼,微信公眾號:芋道源碼】歡迎添加關(guān)注!文章轉(zhuǎn)載請注明出處。

收藏 人收藏
加入交流群
微信小助手二維碼

掃碼添加小助手

加入工程師交流群

    評論

    相關(guān)推薦
    熱點推薦

    Windows安裝ElasticSearch

    Windows安裝ElasticSearch
    的頭像 發(fā)表于 02-15 17:09 ?1715次閱讀
    Windows安裝<b class='flag-5'>ElasticSearch</b>

    CW32L083有哪些應(yīng)用場景?

    CW32L083有哪些應(yīng)用場景
    發(fā)表于 11-24 07:37

    Switch的應(yīng)用場景

    Switch的應(yīng)用場景如下: 調(diào)用一到多個函數(shù) 設(shè)置變量值或者返回一個值 執(zhí)行一到多個代碼片段 如果case標(biāo)簽很多,在switch的前兩個使用場景中,使用查找表可以更高效的完成。例如下面的兩種
    發(fā)表于 12-12 07:28

    MOS管的應(yīng)用場景

    mos管的應(yīng)用場景,你了解么?低壓MOS管可稱為金屬氧化物半導(dǎo)體場效應(yīng)管,因為低壓MOS管具有良好的開關(guān)特性,廣泛應(yīng)用在電子開關(guān)的電路中。如開關(guān)電源,電動馬達、照明調(diào)光等!下面銀聯(lián)寶科技就跟大家一起
    發(fā)表于 11-14 09:24

    linux安裝配置ElasticSearch之源碼安裝

    ElasticSearch是基于Lucene這個非常成熟的索引方案,另加上一些分布式的實現(xiàn):集群,sharding,replication等。以下是對其采用源碼安裝的方法1.下載
    發(fā)表于 01-11 17:27

    this的使用場景及與C,Java中的this的區(qū)別

    【JS】this有哪些使用場景?跟C,Java中的this有什么區(qū)別?如何改變this的值?
    發(fā)表于 03-11 10:17

    ElasticSearch的初步環(huán)境

    ElasticSearch最實用入門指南——初步環(huán)境
    發(fā)表于 03-31 11:32

    =>的使用場景有哪些

    使用場景
    發(fā)表于 10-27 13:25

    藍牙低功耗常見的應(yīng)用場景及架構(gòu)

    淺談藍牙低功耗(BLE)的幾種常見的應(yīng)用場景及架構(gòu)
    發(fā)表于 06-15 09:51

    FPGA的應(yīng)用場景

    目錄文章目錄目錄FPGAFPGA 的應(yīng)用場景FPGA 的技術(shù)難點FPGA 的工作原理FPGA 的體系結(jié)構(gòu)FPGA 的開發(fā)FPGA 的使用FPGA 的優(yōu)缺點參考文檔FPGAFPGA(Field
    發(fā)表于 07-28 08:43

    ARM的技術(shù)特征是什么?應(yīng)用場景有哪些?

    ARM的技術(shù)特征是什么?應(yīng)用場景有哪些?
    發(fā)表于 11-05 07:32

    MS9331的應(yīng)用場景是什么?

    MS9331的應(yīng)用場景是什么?
    發(fā)表于 02-11 06:41

    RK3308的特點及應(yīng)用場景是什么?

    RK3308的特點及應(yīng)用場景是什么?
    發(fā)表于 03-09 08:04

    labview 和 wincc 的區(qū)別 使用場景

    labview 和 wincc 的區(qū)別 使用場景 都是上位機軟件,都可以做監(jiān)控軟件 wincc的名氣也比較大 對比的資料較少 寫這些文章的人,從自己的從事的行業(yè)出發(fā),帶有自己的思維 使用的場景 肯定
    發(fā)表于 10-27 18:01

    Elasticsearch保姆級入門

    我們需要創(chuàng)建一個供 Elasticsearch 和 Kibana 使用的 network。這個 network 將被用于 Elasticsearch 和 Kibana 之間的通信。
    的頭像 發(fā)表于 09-01 15:24 ?1676次閱讀
    <b class='flag-5'>Elasticsearch</b>保姆級入門