6.ES基础概念及术语详细解读

一、Elasticsearch概述:

ES是基于Lucene的搜索服务器,它提供了一个分布式多用户能力的全问搜索引擎,且ES支持RestFulweb风格的url访问。ES是基于Java开发的开源搜索引擎,设计用于云计算,能够达到实时搜索,稳定、可 靠、快速。此外,ES还提供了数据聚合分析功能,但在数据分析方面,es的时效性不是很理想,在企业应用中一般还是用于搜索。ES自2016年起已经超过Solr等,称为排名第一的搜索引擎应用。

1.1 ES、Lucene、solr对比:

Luence是Apache基于Java编写的信息搜索工具包(jar包),它包含了索引结构、读写索引工具、相关性工具、排序等功能,因此Lucene的使用需要我们进一步开发搜索引擎系统, 如果数据获取、解析、分词等。
Solr 是一个有HTTP接口的基于Lucene的查询服务器,是一个搜索引擎系统,系统封装了很多lucene细节,Solr可以直接利用HTTP GET/POST 请求去查询,维护修改索引。Solr利用zookeeper进行分布式管理,它的实现更加全面,官方提供的功能更多。
Elasticsearch 是一个建立在全文搜索引擎Apache Lucene基础上的搜索引擎,采用的策略师分布式实时文件存储,并将每一个字段都编入索引,使其可以被搜索。
es的实时搜索性比solr更好。

1.2 ES的特性:

  • 速度快、易扩展、弹性、灵活、操作简单、多语言客户端、X-Pack、开箱即用。
  • 分布式:横向扩展非常灵活 全文检索:基于lucene的强大的全文检索能力;
  • 近实时搜索和分析:数据进入ES,可达到近实时搜索,还可进行聚合分析
  • 高可用:容错机制,自动发现新的或失败的节点,重组和重新平衡数据
  • 模式自由:ES的动态mapping机制可以自动检测数据的结构和类型,创建索引并使数据可搜索。
  • RESTful API:JSON + HTTP

二、Elasticsearch基本概念:

2.1 概念:

1.集群(cluster)
一个ES集群由多个节点(node)组成, 每个集群都有一个共同的集群名称最为标识

2.节点(node)
一个es实例即为一个节点,一台机器可以有多个节点,正常使用下每个实例都应该会部署在不同的机器上。ES的配置文件中可以通过node.master、 node.data 来设置节点类型:

node.master: true/false 表示节点是否具有成为主节点的资格
node.data: true/false表示节点是否为存储数据 node.ingest : 执行文档在索引之前的预处理操作、数据转换、清洗、标准化等,一般Pipeline用到

3.索引(index)
一个索引是一个拥有一些相似特征的文档的集合(相当于关系型数据库中的一个数据库)。
例如,您可以拥有一个客户数据的索引,一个商品目录的索引,以及一个订单数据的索引。一个索引通常使用一个名称(所有字母必须小写)来标识,当针对这个索引的文档执行索引、搜索、更新和删除操作的时候,这个名称被用来指向索引。

es关系型数据库
倒排索引(Inverted index)索引(index)
字段(field)数据列或字段(column)
文档(document)数据行(Row)
映射关系(mapping)表结构及字段类型定义(Schema)
类型(type)表(table)
索引(index)数据库(Database)

4.分片 (shard)

Elasticsearch可以把一个完整的索引分成多个分片,这样的好处是可以把一个大的索引拆分成多个,分布到不同的节点上,构成分布式搜索。
分片的数量只能在索引创建前指定,并且索引创建后不能更改。
一个分片可以是主分片(用P表示)或副本分片(用R表示)。
Elasticsearch 7.0以下版本默认为一个索引创建5个主分片,并分别为每个主分片创建1个副本分片,7.0及以上版本默认创建1个主分片和1个副本分片。两者区别如下:

分片类型支持处理的请求数量是否可以被修改备注
主分片支持处理索引和查询请求创建索引时指定,已经创建好的索引无法修改索引内的任意一个文档都存储于索引内某个主分片中,因此主分片的数量和大小决定着索引能够保存的最大数据量,过多的分片个数会导致集群启动压力大,启动、恢复、响应慢
副分片支持处理查询请求,索引请求需要由主分片同步机制触发可以在创建索引时指定,已经创建好的索引可以动态修改副本的作用体现在两个方面:1. 提高系统容错性,当某个节点或某个分片损坏丢失时可以从副本中恢复。2.提高查询的效率,XH-Elasiticsearch会对搜索请求进行负载均衡
  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 打赏
    打赏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

飞四海

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值