當前位置: 首頁 > 綜合 >

微動態丨【ES三周年】一份初學者的Elasticsearch入門筆記

2023-02-14 02:18:17 來源:騰訊云

在這之前,我并不是很了解Elasticsearch,也是偶然看文章的時候刷到Elasticsearch一詞,但并沒有深究,僅僅知道有這么個東西存在,它可以來做搜索的,今天借著ES三周年活動來了解一下。


(資料圖片)

Elasticsearch是何許人也?

在對Elasticsearch沒有任何了解的情況下,第一步肯定就去百度一下嘍!

結果:

騰訊云 Elasticsearch Service(ES)是基于開源搜索引擎 Elasticsearch 打造的高可用、可伸縮的云端全托管的 Elasticsearch 服務,包含 Kibana 及常用插件,并集成了安全、SQL、機器學習、告警、監控等高級特性(X-Pack)。

可結果不盡人意,說了等于沒說,或者說不知道說了個啥!是不是跟我一樣一臉懵逼,哈哈!啥叫高可用?啥叫可伸縮?艸

遇到這種太官方的話,我一般就繼續搜,看看有沒有什么白話文,如果實在沒有就多看看其他小伙伴的理解,然后自己再總結總結。

這里的高可用其實是指的是Elasticsearch Service給我們提供了多個部署方案,可以保障任何因素造成的故障而不停服,COS 數據備份策略可以定時備份數據,保障數據因意外情況有丟失時快速恢復。此外還有為保障集群穩定而進行的內核優化等策略,可以全方位地保障數據的安全和服務的穩定。

可伸縮指的是Elasticsearch Service提供了多種類型的節點規格和存儲介質,我們可以根據公司業務需要進行選擇,隨著業務的發展,是可以動態調整集群的配置擴容或縮容,實時保障業務的發展需要,并有效控制成本。

大概總結一下:

Elaticsearch,簡稱為ES,ES是一個分布式全文檢索引擎,它不僅可以實時存儲數據,還可以檢索數據,它的擴展性是很不錯的,也就是前面提到的可伸縮,可以擴展到上百臺服務器,處理PB級別的數據。ES也使用Java開發并使用Lucene作為其核心來實現所有索引和搜索的功能,其實Elaticsearch底層依然是Lucene,說白了Elaticsearch就是在Lucene外面套了一層殼,讓我們免去一些繁瑣的操作,從而變得容易上手一些。

有一個搜索引擎的排名,Elasticsearch的排名是非常高的,大家可以點擊下面的鏈接查看

請點擊: 搜索引擎的排名

緣起——Lucene

Lucene是基于java語言開發的搜索引擎庫類,創建于1999年,2005年成為Apache 頂級開源項目,

Lucene具有高性能、易擴展的優點,但也有局限性,比如:只能基于Java語言開發、類庫的接口學習曲線陡峭、原生并不支持水平擴展,這時Elasticsearch誕生了。

誕生

Elasticsearch是構建在 Lucene之上的開源分布式搜索引擎。2004年 Shay Banon 基于Lucene開發了Compass。2010年 Shav Banon重寫了Compass,取名Elasticsearch,支持分布式,可水平擴展。

降低全文檢索的學習曲線,可以被任何編程語言調用。Elasticsearch 與 Lucene 核心庫競爭的優勢在于完美封裝了 Lucene 核心庫,設計了友好的 Restful-API,開發者無需過多關注底層機制,直接開箱即用。分片與副本機制,直接解決了集群下性能與高可用問題。

沒有對比就沒有傷害:Elaticsearch VS solr

Solr是第一個基于 Lucene 核心庫功能完備的搜索引擎產品,出現時間遠早于 Elasticsearch。如果單純的對已有數據進行搜索時,Solr更快。

Elaticsearchsolr都是基于Lucene,都是對Lucene的封裝。Elaticsearch和solr也都是非常優秀的工具,只是針對不同的場景,擁有不同的優勢。擇良木而棲即可!

對比:

Elasticsearch 在實時搜索應用中表現好于 Solr,但在處理普通搜索應用時效率明顯高于 ElasticsearchElasticsearch 僅僅支持json文件格式,而 Solr 支持更多格式的數據,比如JSON、XML、CSV。隨著數據量的增加,Solr的搜索效率會變得更低,而Elasticsearch是沒有明顯的變化

有何使用場景?

搜索

搜索在日常生活中也是很常見的,像購物商城中商品的搜索,軟件應用商城以及企業內部的搜索等海量數據下的站內搜索服務是高效獲取信息的必要途徑,騰訊云 Elasticsearch Service 擁有全文檢索功能,對結構化和非結構化數據都有良好的支持,同時還提供了簡單易用的 RESTful API 和各種語言的客戶端,方便用戶快速搭建穩定的搜索服務,整合到已有到業務框架中。 一句話:有搜索的地方就可以用它!

國內現在有大量的公司都在使用 Elasticsearch,像滴滴、今日頭條、餓了么、360安全等知名公司。除了搜索之外,它可以結合Kibana、Logstash、Beats,Elastic Stack用在大數據實時分析平臺,分析一些日志、指標監控等領域。

日志管理與分析

網站服務器、移動設備、IoT 傳感器等設備產生的日志,存在著節點分散、種類多樣、規模龐大等問題,這對需要通過日志搜索,進行異常問題定位和業務分析等工作造成了很大的挑戰。騰訊云 Elasticsearch Service 提供了彈性可擴展、準實時的集中式存儲方案,以及全文搜索功能,方便日志的統一管理和查詢,幫助用戶快速定位和發現問題,提高解決問題的效率。

ES的應用十分廣泛,比如維基百科、Github、新浪等都使用ES實現搜索。

開始安裝

直接去官網下載ES:https://artifacts.elastic.co/downloads/elasticsearch/elasticsearch-6.4.2.zip

解壓后會得到如下一個目錄:

目錄名稱

主要的作用

bin

bin目錄下放的都是一些啟動命令,也就是腳本,在windos下用什么命令,在Linux使用什么命令

config

config存放的是ES服務器的配置文件

lib

存放的是庫文件jar包

modules

這里是一些擴展的模塊

plugins

關于ES的插件可以放這里

解壓完成后直接在bin目錄下找到Elasticsearch文件,雙擊即可,當看到started啟動成功, 默認9200端口;

ES中一些概念

索引index

索引就是一個擁有相同屬性的文檔集合。也可以認為是type的集合,我們在搜索,更新和刪除的時候,都要使用到這個名字。在一個集群中,可以定義任意多的系引。

類型type

在一個索引中,可以定義一種或多種類型。一個類型是你的索引的一個邏輯上的分類/分區,其語義完全由你來定,一般會為具有一組共同字段的文檔定義一個類型。類比到數據庫上相當于表

字段field

相當于是數據表的字段,對文檔數據根據不同屬性進行的分類標識

文檔document

文檔用JSON格式來表示,它相當于數據庫中表的一條數據

映射 mapping

mapping是處理數據的方式和規則方面做一些限制,如某個字段的數據類型、默認值、分析器、是否被索引等等,這些都是映射里面可以設置的,對于數據庫來說就是表結構的定義。

集群cluster

一個集群是由一個或多個節點組織在一起,它們共同擁有整個的數據,并一起提供索引和搜索功能。一個集群由一個唯一的名字標識,這個名字默認就是"elasticsearch"。這個名字是重要的,因為一個節點只能通過指定某個集群的名字,來加入這個集群。

標簽: 搜索引擎
最近更新
15037178970
婚姻法
關于訴訟離婚判離婚可以上訴嗎?訴訟離婚上訴依據哪條法律?
一般情況下起訴離婚多長時間出判決?起訴離婚判決的法律依據是什么?
女方懷孕時簽訂離婚協議書有效嗎 民法典如何規定關于女方懷孕期間離婚
如果女方懷孕期間可以離婚嗎?女方懷孕期間離婚的法律規定有哪些?
如何簽訂離婚協議書?離婚協議書包括哪些內容?
簽訂的離婚協議書哪些情況下可以無效?離婚協議書無效的法律依據是什么?
離婚協議書是什么?離婚協議書以什么形式簽訂?
關于起訴離婚的有關處理情況分別有哪些?起訴離婚的有關情況怎樣處理?
離婚冷靜期是強制規定嗎?離婚冷靜期有什么法律依據?
訴訟離婚對哪些人進行特殊保護?訴訟離婚的必經程序是什么?
知識糾紛
1 侵犯商標權是不正當競爭嗎?侵犯商標權需要承擔什么責任?
2 商標價值是什么?商標權的價值特征包括哪些內容?
3 中國馳名商標查詢有哪些方式?馳名商標是什么意思?
4 發明專利申請的程序有哪些?有哪些申請費?
5 專利委托轉讓及其注意事項有哪些?專利審查指南有哪些規定?
6 專利轉讓的費用和稅率是多少?
7 9sdy商標轉讓手續如何辦理?有哪些風險提示?
8 企業商標注冊的途徑有哪些?申請商標注冊前要做哪些準備?
公司法
公司上市的條件有哪些?公司上市有哪些流程?
公司股東信息的查詢有哪些方式?股東的權利知情質詢權是什么?
為什么要進行公司清算?
企業改制都有哪些方式?
外資上市的條件 是什么?境外上市外資股特點有哪些?
全民所有制企業公司改制流程是怎樣的?
機關、事業單位工會會員會費繳納標準有多少?
公司名稱核準有哪些規定?新公司法簡化注冊登記流程的意義在哪?
分公司和子公司有什么定義?
公司改名的流程有哪些?公司改名的注意事項
合同法
履行主體都包括哪些?履行有哪些方式?

2023-02-22

合同訂立應遵循什么原則?

2023-02-20

提單是什么?提單有哪些作用?

2022-12-05

合同簽訂時信賴利益的保護原則有哪些不同階段?

2022-11-16

合同詐騙罪的立案標準是多少?什么是合同詐騙罪量刑標準?

2022-11-14

合同詐騙罪應該怎么才能認定?

2022-11-14

勞動糾紛
履行主體都包括哪些?履行有哪些方式?
合同訂立應遵循什么原則?
提單是什么?提單有哪些作用?
合同簽訂時信賴利益的保護原則有哪些不同階段?
合同詐騙罪的立案標準是多少?什么是合同詐騙罪量刑標準?
合同詐騙罪應該怎么才能認定?

法律解答網版權所有 2005-2022