Elasticsearch之基礎概念

2021-09-27 12:14:02 字數 1629 閱讀 7885

elasticsearch(簡稱es)是建立在全文搜尋引擎庫 apache lucene™ 基礎上的實時分布式搜尋分析引擎。它通過隱藏 lucene 的複雜性,提供一套簡單的 restful api。它不僅有lucene的能力,還是乙個分布式的實時文件儲存,每個字段可以被索引和搜尋、還是乙個分布式實時分析搜尋引擎、能勝任上百個服務節點的擴充套件,並支援 pb 級別的結構化或者非結構化資料。es常被用作全文檢索、結構化搜尋、分析以及這三個功能的組合。幫助文件請參考:

es中文官網:

es中文文件:

es參考手冊:

es github原始碼:

elasticsearch集群可以包含多個節點,每個節點可以包含多個索引,每個索引可以包含多個型別(高版本已逐漸取消多型別),每個型別儲存著多個文件 ,每個文件又有多個字段(在es中稱為「域」)。需要注意的是同一索引的不同型別下文件的域必須相同。

elasticsearch是面向文件的,也就是說es是對整個文件進行索引、檢索、排序和過濾的,而不是對結構化資料那樣的行列資料,所以也就沒有分表和聯表查詢這種說法。它儲存的是整個物件或文件,同時會索引每個文件的內容,使之可以被檢索。正因為es是面向文件的,其文件內部的結構關係並沒有破壞,才使es能支援複雜的全文檢索。

如果把文件id當成是key,文件內容當成是value,那麼每個key都會對應唯一的value值。通俗地講,正向索引就是通過key找value,也就是先找到是哪個文件,然後再在該文件中找內容,如下所示:

而elasticsearch 中很重要的乙個資料結構是倒排索引(反向索引,英文名:inverted index),則是通過value找key,也就是先在文件的內容中找需要的內容,然後定位到是哪個文件。對於同乙個詞,可能在多個文件**現,所以通過value找到的key是個陣列,可以簡單理解為是文件id的陣列(實際上,還儲存著比如:詞頻、偏移量等資訊)如下所示:

1、檢視集群有哪些使用者:

get http://$user:$passwd@$host:$port/_user/show
2、建立針對某個索引的使用者許可權:

3、修改使用者許可權:

出現的字段會全部覆蓋原有字段內容,未出現的字段會保留原來的內容。

4、刪除使用者:

5、重置使用者密碼:

集群安全參考:

分布式爬蟲之elasticsearch基礎1

一 搜尋引擎elasticsearch介紹 elasticsearch 是乙個全文搜尋引擎,可以快速地儲存 搜尋和分析海量資料。二 應用場景 三 安裝 elasticsearch 缺省會在 9200 埠上執行,我們開啟瀏覽器訪問http localhost 9200 elasticsearch 本質...

ElasticSearch的基本認識和基本操作

es即為了解決原生lucene使用的不足,優化lucene的呼叫方式,並實現了高可用的分布式集群的搜尋方案,其第乙個版本於2010年2月出現在github上並迅速成為最受歡迎的專案之一。分布式的實時檔案儲存,每個欄位都被索引並可被搜尋 分布式的實時分析搜尋引擎 可以擴充套件到上百臺伺服器,處理pb級...

elasticsearch的分布式架構基本原理

首先,es 的設計理念就是分布式搜尋引擎,底層還是基於lucene的 核心思想就是在多台機器上啟動多個es程序實列,組成乙個es集群。es中儲存資料的基本單位是索引,假設你要在es中儲存資料,首先就要在es中建立乙個索引,所有的資料都寫到這個索引裡面去,乙個索引差不多相當於mysql裡面的一張表。1...