elasticsearch最大节点数_ElasticSearch这些概念要明白
ElasticSearch 基本概念
文檔(Document)
ElasticSearch是面向文檔的,文檔是可搜索的最小單位。
好比
日志文件中的日志
MP3播放的一首歌
文檔會被序列化成JSON格式,保存在ElasticSearch中
每個文檔都有一個Unique ID
你可以自己制定ID
或者ElasticSearch自動生成。
文檔元數據
元數據用于標注文檔的相關信息
_index: 文檔所屬的索引名
_type: 文檔所屬的類型名(目前版本只有一種類型_doc)
_id: 文檔唯一ID
_source: 文檔的原始Json串
_version: 文檔的版本信息
_score: 相關性打分
索引
Index是文檔的容器。是一類文檔的集合。
每個索引都有自己的Mapping定義,用于定義包含的文檔的字段名和字段類型。
索引中的數據分散在Shard上。
傳統數據庫與ElasticSearch對比
分布式特性
水平擴容
高可用(部分節點停止服務,整個集群服務不受影響)
節點
Master Node
修改集群狀態,集群狀態包括
所有的節點信息
所有的索引和其相關的Mapping與Setting信息
分片的路由信息
Master-eligible Node
每個節點啟動后,默認就是一個Master-eligible Node
Ingest Node
數據預處理節點,默認每個節點都啟用Ingest
DataNode
負責保存分片數據的節點
Hot Node & Warm Node
不同硬件配置的DataNode,用來實現Hot&Warm架構,降低集群部署的成本
Coordinating Node
負責接受Client的請求,將請求分發到合適的節點,最后將結果匯集在一起
Machine Learing Node
負責跑機器學習的節點,用來做異常檢測
Tribe Node
Tribe Node可以連接到不同的集群,并且支持將這些集群當成一個單獨的集群處理
節點配置
分片
主分片
用于解決數據水平擴展,通過主分片,將數據分布到集群內所有節點之上。一個分片就是一個Lucene實例,主分片數在索引創建時指定,后續不允許修改,除非Reindex
副本
用于解決數據高可用的問題。分片是主分片的拷貝。
副本分片數,可以動態調整
增加副本數,還可以在一定程度上提高服務的可用性(讀取的吞吐)
正排索引和倒排索引
正排索引:文檔ID到文檔內容和單詞的關聯
倒排索引:單詞到文檔ID的關系
倒排索引核心成員
單詞詞典
記錄所有文檔的單詞,記錄單詞到到排列表的關聯關系
倒排列表
記錄了單詞對應的文檔集合,由倒排索引項組成
倒排索引項
文檔ID
詞頻TF
該單詞在文檔出現的次數,用于相關性評分
位置
單詞在文檔中分詞的位置,用于語句搜索
偏移
記錄單詞的開始結束位置,實現高亮顯示
如下圖Elasticsearch的倒排列表
分詞(Analyzer)
Character Filters
針對原始文本處理,例如去除html
Tokenizer
按照規則切分為單詞
Token Filter
將切分的單詞進行加工,小寫,刪除stopwords,增加同義詞
總結
以上是生活随笔為你收集整理的elasticsearch最大节点数_ElasticSearch这些概念要明白的全部內容,希望文章能夠幫你解決所遇到的問題。
- 上一篇: 行星轨迹制作_FLASH做的八大行星的轨
- 下一篇: shell脚本读取csv_shell s