暂无图片
暂无图片
暂无图片
暂无图片
暂无图片

知识点 | ElasticSearch (ES) 系列学习

1304

最近因工作原因,和ES接触的比较多;ES之前了解过,不怎么熟悉,故打算系统学习之。

以下文章转载之如下链接:

https://www.modb.pro/db/390323


正文如下: 


  • 一、概述

    • 1.1、什么是ES

    • 1.2、倒排索引

      • 1.2.1、什么是倒排索引

      • 1.2.2、倒排索引的核心组成

    • 1.3、核心概念

  • 二、安装

    • 2.1、Linux下安装

      • 2.1.1、安装ElasticSearch

      • 2.1.2、安装kibana

    • 2.2、Docker安装

      • 2.2.1、安装Elasticsearch

      • 2.2.2、安装kibana

一、概述

1.1、什么是ES

一个开源的高扩展分布式全文检索引擎,可近乎实时的存储、检索数据,可扩展性强,可处理PB级别的数据。

通过简单的Restful API, 来隐藏Luncee的复杂性,从而让全文搜索变得简单

1.2、倒排索引

1.2.1、什么是倒排索引

倒排索引是一种数据结构

Elasticsearch是通过Lucene的倒排索引技术实现比关系型数据库更快的过滤。

1、把每个文档拆分为独立的词

2、创建一个包含所有且不重复的词条列表

3、记录每个词条出现在哪些文档中

这样,搜索linux,就能快速定位到3、4文档

1.2.2、倒排索引的核心组成

倒排索引包含2个部分:单词字典、倒排列表

  • 单词字典(Term Dictionary)

    单词字典记录所有文档的单词和倒排列表的关联关系

    单词字典一般比较大,可以通过B+树或哈希拉链表实现,以满足高性能的插入和查询

  • 倒排列表(Posting List)

    倒排列表由索引项组成

    • 文档id

    • 词频TF:该单词在文档中出现的次数,用于相关性评分

    • 位置:单词在文档中的分词位置,用于语句搜索

    • 偏移:记录单词的在文档中的起始和结束位置,用于高亮显示

    • 索引项

1.3、核心概念

1、es提供了分布式集群(Cluster)的方式,保证高可用
2、多个节点(Node)组成一个集群
3、一个节点中分布着多个索引(index)/索引的一部分(分片Shard)
4、节点间多个分片组成一个index

Near Realtime(近实时)

Elasticsearch是一个近乎实时的搜索平台,这意味着从索引文档到可搜索文档之间只有一个轻微的延迟(通常是一秒钟)。

Cluster(集群)

群集是一个或多个节点的集合,它们一起保存整个数据,并提供跨所有节点的联合索引和搜索功能。每个群集都有自己的唯一群集名称,节点通过名称加入群集。

Node(节点)

节点是指属于集群的单个Elasticsearch实例,存储数据并参与集群的索引和搜索功能。可以将节点配置为按集群名称加入特定集群,默认情况下,每个节点都设置为加入一个名为elasticsearch
的群集。

1.2.4、Index(索引)

索引是一些具有相似特征的文档集合,类似于MySql中数据库的概念。但是在Elasticsearch 6.0.0及更高的版本中,一个index只能包含一个type,其实也类似于一个Index就是一个表。

Type(类型)

类型是索引的逻辑类别分区,通常,为具有一组公共字段的文档类型,类似MySql中表的概念。

注意:在Elasticsearch 6.0.0及更高的版本中,一个索引只能包含一个类型。

Document(文档)

文档是可被索引的基本信息单位,以JSON形式表示,类似于MySql中行记录的概念。

Shards(分片)

当索引存储大量数据时,可能会超出单个节点的硬件限制,为了解决这个问题,Elasticsearch提供了将索引细分为分片的概念。分片机制赋予了索引水平扩容的能力、并允许跨分片分发和并行化操作,从而提高性能和吞吐量。

  • 主分片
    主分片用于解决数据水平扩展问题。通过主分片,可以将数据分布到集群内的不同节点上。主分片在创建索引时指定,后续不允许修改

在可能出现故障的网络环境中,需要有一个故障切换机制,Elasticsearch提供了将索引的分片复制为一个或多个副本的功能,副本在某些节点失效的情况下提供高可用性。

  • 副本分片(Replicas)
    副本分片用于解决数据高可用问题。是主分片的拷贝。副本分片数可以动态调整。


================================

转文至此。

以下是个人微信公众号,欢迎关注:


文章转载自戏说数据那点事,如果涉嫌侵权,请发送邮件至:contact@modb.pro进行举报,并提供相关证据,一经查实,墨天轮将立刻删除相关内容。

评论