国产麻豆精品福利在线观看,亚洲人亚洲精品成人网站,亚洲熟妇无码AV另类VR影视,欧美A级毛欧美1级A大片免费播放

您的位置:首頁 > 推薦 >

【ES三周年】高效搜索引擎ElasticSearch介紹-世界時快訊

2023-02-23 08:08:11 來源: 騰訊云

官網(wǎng):https://www.elastic.co/cn/products/elasticsearch

ElasticSearch

簡介

官網(wǎng):https://www.elastic.co/cn/products/elasticsearch

特點:

高速、擴展性、最相關的搜索結果。分布式 - 節(jié)點對外表現(xiàn)對等,每個節(jié)點都可以作為入門,加入節(jié)點自動負載均衡。JSON - 輸入輸出格式是 JSON。Restful 風格,一切 API 都遵循 Rest 原則,容易上手。近實時搜索,數(shù)據(jù)更新在 Elasticsearch 中幾乎是完全同步的,數(shù)據(jù)檢索近乎實時。安裝方便 - 沒有其它依賴,下載后安裝很方便,簡單修改幾個參數(shù)就可以搭建集群。支持超大數(shù)據(jù):可以擴展到 PB 級別的結構化和非結構化數(shù)據(jù)。

■Elasticsearch是一個基于Lucene的搜索服務器。它提供了一個分布式多用戶能力的全文搜索引擎,基于RESTful web接口。


(資料圖)

■Elasticsearch是用Java語言開發(fā)的,并作為Apache許可條款下的開放源碼發(fā)布,是一種流行的企業(yè)級搜索引擎。Elasticsearch用于云計算中,能夠達到實時搜索,穩(wěn)定,可靠,快速,安裝使用方便。

■Elasticsearch 還是高擴展、高實時的搜索與數(shù)據(jù)分析引擎。它能很方便的使大量數(shù)據(jù)具有搜索、分析和探索的能力。充分利用Elasticsearch的水平伸縮性,能使數(shù)據(jù)在生產(chǎn)環(huán)境變得更有價值。

ElasticSearch信息概覽

什么是index,type,doc

■index:索引是文檔(Document)的容器,是一類文檔的集合,可以理解成我們常用的mysql中的數(shù)據(jù)庫。

■Type 可以理解成mysql中的表。

■Document Index 里面單條的記錄稱為Document(文檔)。等同于mysql中的一行數(shù)據(jù)。

建庫,建表,建字段

■建庫腳本

PUT http://127.0.0.1:9200/cunw-share-es-index

就這么一個請求就可以建成一個以cunw-share-es-index為庫名的ES數(shù)據(jù)庫索引庫;

■建表腳本,建字段

PUT http://127.0.0.1:9200/cunw-share-es-index/sanbu/1

PUT http://127.0.0.1:9200/cunw-share-es-index/sanbu/1{   "name":"大哥",   "sex": "男",   "hight":"180",   "date":"2022-01-01",   "info":"Hello World"}

索引基本創(chuàng)建完成。

什么是mapping

■mapping 是用來定義文檔及其字段的存儲方式、索引方式的手段,例如利用mapping 來定義以下內(nèi)容:哪些字段需要被定義為全文檢索類型;哪些字段包含number、date類型等格式化時間格式;自定義規(guī)則,用于控制動態(tài)添加字段的映射。

■mapping是一種簡單的數(shù)據(jù)類型,例如text、keyword、integer、double、boolean、long、date、ip類型。也可以是一種分層的json對象(支持屬性嵌套)。也可以是一些不常用的特殊類型,例如geo_point、geo_shape、completion。

■針對同一字段支持多種字段類型可以更好地滿足我們的搜索需求,例如一個string類型的字段可以設置為text來支持全文檢索,與此同時也可以讓這個字段擁有keyword類型來做排序和聚合,另外我們也可以為字段單獨配置分詞方式,例如"analyzer": "ik_max_word"。從某種意義上來講,就是表字段類型,int,varchar,date...

為什么要用mapping

提出疑問,修改一個字段的類型:

{  "sanbu": {    "properties": {      "hight": {         "type": "integer"         }      }   }}

為什么不能修改一個字段的type?原因是一個字段的類型修改以后,那么該字段的所有數(shù)據(jù)都需要重新索引。Elasticsearch底層使用的是lucene庫,字段類型修改以后索引和搜索要涉及分詞方式等操作。

ElasticSearch 分片,副本

數(shù)據(jù)分片:

簡單來講就是咱們在ES中所有數(shù)據(jù)的文件塊,也是數(shù)據(jù)的最小單元塊,整個ES集群的核心就是對所有分片的分布、索引、負載、路由等達到驚人的速度。

實列場景:

假設 IndexA 有2個分片,我們向 IndexA 中插入10條數(shù)據(jù) (10個文檔),那么這10條數(shù)據(jù)會盡可能平均的分為5條存儲在第一個分片,剩下的5條會存儲在另一個分片中。說白了:數(shù)據(jù)分片其實類似主流關系型數(shù)據(jù)庫的表分區(qū)(分表)的概念有點類似。這樣的好處是可以把一個大的索引拆分成多個,分布到不同的節(jié)點上。構成分布式搜索要注意的是分片的數(shù)量只能在索引創(chuàng)建前指定,并且索引創(chuàng)建后不能更改。

分片數(shù)量設置計算公式:

分片個數(shù)是越多越好,還是越少越好了?根據(jù)整個索引的數(shù)據(jù)量來判斷。SN(分片數(shù)) = IS(索引大小) / 30,當然也要根據(jù)能夠給ES分配資源的實際情況而定奪。

■數(shù)據(jù)副本

副本是主分片的拷貝,es可以設置多個索引的副本,副本的作用一是提高系統(tǒng)的容錯性,當某個節(jié)點某個分片損壞或丟失時可以從副本中恢復。二是提高es的查詢效率,es會自動對搜索請求進行負載均衡。副本分片數(shù),可以動態(tài)的修改。增加副本數(shù),還可以在一定程度上提高服務的可用性(讀取的吞吐)。

■設置分配,副本腳本代碼

PUT /index    {        "settings":{            "number_of_shards" : 3, //指 這個index主分片分布在3個節(jié)點上            "number_of_replicas":1  //指 每一個主分片都有一個副本         }    }

■查詢寫法

es中的查詢請求有兩種方式,一種是簡易版的查詢,另外一種是使用JSON完整的請求體,叫做結構化查詢(DSL)。由于DSL查詢更為直觀也更為簡易,所以大都使用這種方式。DSL查詢是POST過去一個json,由于post的請求是json格式的,所以存在很多靈活性,也有很多形式。

最基本的查詢語句,查詢所有數(shù)據(jù)值得注意的是,在請求之前一定確保它是正確的Json。

{    "query": {        "match_all": {}    }}

查詢過濾條件關鍵字

■查詢關鍵字的用法match,term,wildcard,range....

1.match 通過單詞字面意思理解是匹配的意思,顧名思義如果匹配到其中的任意字詞就會命中,其實就是通過ES默認的ik分詞器去做分詞查詢。

{    "query": {        "match": {       "name":軟"    }    }}

2.term 如果匹配到其中所有字詞才會命中。

{    "query": {        "match": {       "name":"軟"    }    }}

3.wildcard 用法類似mysql的like,注意這里的通配符是*

{    "query": {        "match": {       "name":"*軟*"    }    }}

4.range 看到這個詞就會想到區(qū)間,它的用法類似于mysql的between ..and ..

{    "query": {        "range": {     "height":{     "gt": "150",     "lt": "170"      } }    }}

update,delete語句

■ 根據(jù)ID進行單個更新

POST /index/type/_id/_update{   "doc" : {      "publish_date" :"2021-11-10",   }}

■ 根據(jù)ID進行單個刪除

DELETE /index/type/_id

Elastic 有一條完整的產(chǎn)品線 ELK - Elasticsearch、Logstash、Kibana,前面說的三個就是常說的 ELK 技術棧(開源實時日志分析平臺)。Logstash 的作用就是一個數(shù)據(jù)收集器,將各種格式各種渠道的數(shù)據(jù)通過它收集解析之后格式化輸出到 Elastic Search ,最后再由 Kibana 提供的比較友好的 Web 界面進行匯總、分析、搜索。ELK 內(nèi)部實際就是個管道結構,數(shù)據(jù)從Logstash 到 Elastic Search 再到 Kibana 做可視化展示。這三個組件各自也可以單獨使用,比如 Logstash 不僅可以將數(shù)據(jù)輸出到 Elastic Search ,也可以到數(shù)據(jù)庫、緩存等。

關于ES的內(nèi)容還有很多東西等著我們,搭建、分詞器、集群、節(jié)點角色分配、冷熱分離、讀寫分離等等,后續(xù)我們再輸出相關詳細內(nèi)容。

Kibana

簡介

Kibana 是 Elastic Stack 成員之一,它是一個基于 Node.js 的 Elasticsearch 索引庫數(shù)據(jù)統(tǒng)計工具,可以利用 Elasticsearch 的聚合功能,生成各種圖表,如柱形圖,線狀圖,餅;而且還提供了操作 Elasticsearch 索引數(shù)據(jù)的控制臺,并且提供了一定的 API 提示。您可以使用 Kibana 對 Elasticsearch 索引中的數(shù)據(jù)進行搜索、查看、交互操作。您可以很方便地利用圖表、表格及地圖對數(shù)據(jù)進行多元化的分析和呈現(xiàn)。

Kibana 可以使大數(shù)據(jù)通俗易懂。它很簡單,基于瀏覽器的界面便于您快速創(chuàng)建和分享動態(tài)數(shù)據(jù)儀表板來追蹤 Elasticsearch 的實時數(shù)據(jù)變化。

搭建

搭建 Kibana 非常簡單。可以分分鐘完成 Kibana 的安裝并開始探索 Elasticsearch 的索引數(shù)據(jù) ——— 沒有代碼、不需要額外的基礎設施。當前我們公司使用的版本是 5.5.1。

常用模塊

■ Discover

Discover 主要是做索引查詢,功能非常強大。從發(fā)現(xiàn)頁可以交互地探索ES的數(shù)據(jù)。可以訪問與所選索引模式相匹配的每一個索引中的每一個文檔。可以提交搜索查詢、篩選搜索結果和查看文檔數(shù)據(jù)。還可以看到匹配搜索查詢和獲取字段值統(tǒng)計的文檔的數(shù)量。如果一個時間字段被配置為所選擇的索引模式,則文檔的分布隨著時間的推移顯示在頁面頂部的直方圖中。

■ Visualize

視圖展示,支持許多風格??梢暬苁鼓銊?chuàng)造你的 Elasticsearch 指標數(shù)據(jù)的可視化。然后你可以建立儀表板顯示相關的可視化。Kibana 的可視化是基于 Elasticsearch 查詢。通過一系列的 Elasticsearch聚合提取和處理您的數(shù)據(jù),您可以創(chuàng)建圖表顯示你需要知道的關于趨勢,峰值和驟降。您可以從搜索保存的搜索中創(chuàng)建可視化或從一個新的搜索查詢開始。

■ Dashboard

圖表展示,一個儀表板顯示Kibana保存的一系列可視化。你可以 根據(jù)需要安排和調(diào)整可視化,并保存儀表盤,可以被加載和共享。

■ Timelion

Timelion 是一個時間序列數(shù)據(jù)的可視化功能,可以結合在一個單一的可視化完全獨立的數(shù)據(jù)源。它是由一個簡單的表達式語言驅動的,你用來檢索時間序列數(shù)據(jù),進行計算,找出復雜的問題的答案,并可視化的結果。這個功能由一系列的功能函數(shù)組成,同樣的查詢的結果,也可以通過 Dashboard 顯示查看。

■ Dev Tools

其實就是一個控制臺,可以直接使用 DSL語法來直接操作es中的數(shù)據(jù),使用戶方便地通過瀏覽器直接與 Elasticsearch 進行交互。

使用

■ 搜索、查看并可視化 Elasticsearch 中所索引的數(shù)據(jù),并通過創(chuàng)建柱狀圖、餅狀圖、表格、直方圖和地圖對數(shù)據(jù)進行分析。儀表板視圖能將這些可視化元素集中到一起,然后通過瀏覽器加以分享,以提供有關海量數(shù)據(jù)的實時分析視圖,為下列用例提供支持:

a:日志處理和分析

b:基礎設施指標和容器監(jiān)測

c:應用程序性能監(jiān)測 (APM)

d:地理空間數(shù)據(jù)分析和可視化

e:安全分析

f:業(yè)務分析

■ 借助網(wǎng)絡界面來監(jiān)測和管理 Elastic Stack 實例并確保實例的安全。

■ 針對基于 Elastic Stack 開發(fā)的內(nèi)置解決方案(面向可觀測性、安全和企業(yè)搜索應用程序),將其訪問權限集中到一起

如何使用

使用 Discover 搜索欄進行搜索。使用 Dev Tools 的 Console 直接與 Elastcsearch 進行交互 。

DSL語法

■ 查詢所有

■ 查詢特定的字段,按照指定字段排序

■ 查詢指定字段的日志

■ 分頁查詢所有的日志

本人就職于公司大數(shù)據(jù)組,正好近期我在公司分享了關于ES、Kiban和機器學習的一些知識,總結出本文獻給大家。

關鍵詞: 搜索引擎 Apache

精選 導讀

募資55億港元萬物云啟動招股 預計9月29日登陸港交所主板

萬科9月19日早間公告,萬物云當日啟動招股,預計發(fā)行價介乎每股47 1港元至52 7港元,預計9月29日登陸港交所主板。按發(fā)行1 167億股計算,萬

發(fā)布時間: 2022-09-20 10:39
管理   2022-09-20

公募基金二季度持股情況曝光 隱形重倉股多為高端制造業(yè)

隨著半年報披露收官,公募基金二季度持股情況曝光。截至今年二季度末,公募基金全市場基金總數(shù)為9794只,資產(chǎn)凈值為269454 75億元,同比上

發(fā)布時間: 2022-09-02 10:45
資訊   2022-09-02

又有上市公司宣布變賣房產(chǎn) 上市公司粉飾財報動作不斷

再有上市公司宣布變賣房產(chǎn)。四川長虹25日稱,擬以1 66億元的轉讓底價掛牌出售31套房產(chǎn)。今年以來,A股公司出售房產(chǎn)不斷。根據(jù)記者不完全統(tǒng)

發(fā)布時間: 2022-08-26 09:44
資訊   2022-08-26

16天12連板大港股份回復深交所關注函 股份繼續(xù)沖高

回復交易所關注函后,大港股份繼續(xù)沖高。8月11日大港股份高開,隨后震蕩走高,接近收盤時觸及漲停,報20 2元 股。值得一提的是,在7月21日

發(fā)布時間: 2022-08-12 09:56
資訊   2022-08-12

萬家基金再添第二大股東 中泰證券擬受讓11%基金股權

7月13日,中泰證券發(fā)布公告,擬受讓齊河眾鑫投資有限公司(以下簡稱齊河眾鑫)所持有的萬家基金11%的股權,交易雙方共同確定本次交易的標的資

發(fā)布時間: 2022-07-14 09:39
管理   2022-07-14

央行連續(xù)7日每天30億元逆回購 對債市影響如何?

央行12日再次開展了30億元逆回購操作,中標利率2 10%。這已是央行連續(xù)7日每天僅進行30億元的逆回購縮量投放,創(chuàng)下去年1月以來的最低操作規(guī)

發(fā)布時間: 2022-07-13 09:38
資訊   2022-07-13

美元指數(shù)創(chuàng)近20年新高 黃金期貨創(chuàng)出逾9個月新低

由于對美聯(lián)儲激進加息的擔憂,美元指數(shù)11日大漲近1%創(chuàng)出近20年新高。受此影響,歐美股市、大宗商品均走弱,而黃金期貨創(chuàng)出逾9個月新低。美

發(fā)布時間: 2022-07-13 09:36
資訊   2022-07-13

美股三大股指全線下跌 納斯達克跌幅創(chuàng)下記錄以來最大跌幅

今年上半年,美股持續(xù)回落。數(shù)據(jù)顯示,道瓊斯指數(shù)上半年下跌15 3%,納斯達克綜合指數(shù)下跌29 5%,標普500指數(shù)下跌20 6%。其中,納斯達克連續(xù)

發(fā)布時間: 2022-07-04 09:51
推薦   2022-07-04

融資客熱情回升 兩市融資余額月內(nèi)增加超344億元

近期A股走強,滬指6月以來上漲4%,融資客熱情明顯回升。數(shù)據(jù)顯示,截至6月16日,兩市融資余額1 479萬億元,月內(nèi)增加344 67億元,最近一個半

發(fā)布時間: 2022-06-20 09:41
資訊   2022-06-20

4個交易日凈買入超百億元 北向資金持續(xù)流入A股市場

北向資金凈流入態(tài)勢延續(xù)。繼6月15日凈買入133 59億元后,北向資金6月16日凈買入44 52億元。自5月27日至今,除6月13日以外,北向資金累計凈

發(fā)布時間: 2022-06-17 09:37
推薦   2022-06-17

熱門TAG

more
重磅突發(fā)!王思聰在上海打人?警方剛剛通報 女子隨手捐10元4個月后收到還款道謝 看到回復破防 國內(nèi)豬肉價格開啟新一輪周期?專家:國家調(diào)控政策正在起作用 彩電市場價格持續(xù)走低:50英寸千元輕松購還會降價嗎? 鶴崗中介談1.5萬全款買房:別沖動 詳情曝光系40年房齡的老房子價格自然便 穩(wěn)外貿(mào) 福建拓“新”途 福建也積極開辟國際物流新通道 這條名為BarMar的能源運輸路線以幫助緩解歐洲所面臨的能源危機 寧波銀行:聚焦主責主業(yè),更好服務實體經(jīng)濟 重磅利好!涉房企業(yè)A股融資審核放寬,“白名單”浮出水面 能源是經(jīng)濟發(fā)展的動力源泉 美國經(jīng)濟蕭條對汽車和電力市場的沖擊力有多 多頭醞釀更大爆發(fā)!美元有望再大漲近百點 廣西北部灣畔崛起國際大港 商企耕耘十年等來春暖花開時 中國A股半導體板塊周四大漲 十年時間增長超1200億元 2021年創(chuàng)造天津市進出口歷史最高紀錄 天津口岸完成進出口貿(mào)易值2381億美元 較2012年增長16.6% 深圳機場口岸通過發(fā)揮東南亞航線優(yōu)勢 不斷豐富進口水果品類 國際航線(含港澳臺)日均執(zhí)行客運航班量達143班次 創(chuàng)今年新高 待中吉烏鐵路建成后 將高效聯(lián)通中歐班列的中通道與南通道線路 中國與RCEP成員國經(jīng)過陸海新通道進出口總量52068標箱 國航已率先在空客、波音機型上開展可持續(xù)航空燃料應用 中國制造業(yè)屢創(chuàng)奇跡 牢牢站穩(wěn)世界“C位” 今年新疆不斷加大能源增產(chǎn)增供力度 新疆煤炭產(chǎn)量增長31.1%、排全國第2位 陶悅群計劃圍繞大健康等產(chǎn)業(yè)進行增資擴產(chǎn) 光伏電站位于Kharsaa地區(qū) 是卡塔爾首個太陽能發(fā)電廠 過去十年,重慶工業(yè)增加值總額由2012年的4291.4億元提高至2021年的7888.7億元 2021年鹽湖化工產(chǎn)業(yè)實現(xiàn)產(chǎn)值331.8億元 增長46.2% 切入儲能賽道的消費電池頭部玩家德賽電池近兩日連續(xù)打板漲停 6個二線城市首套房貸款利率跌破4% 低至3.8% 倡議項目將由德國聯(lián)邦經(jīng)濟和氣候保護部的能源研究預算提供資金 2022年東亞峰會新能源論壇20日在昆明舉辦