0
点赞
收藏
分享

微信扫一扫

ES到底是什么?


目录

一、ElaticSearch介绍

1.1 概述

1.2 搜索引擎是什么?

1.3 全文检索是什么?

二、ES特点

三、ES概念

3.1 基本概念

3.1.1 索引(index)

3.1.2 类型(type)

3.1.3 文档(document)

3.1.4 映射(mapping)

3.1.5 倒排索引

3.2 ES集群核心概念

3.2.1 集群(cluster)

3.2.2 节点(node)

3.2.3 分片(shard)

3.2.4 副本(replica)

四、应用场景

🌴 场景一:搜索服务

🌵 典型场景

🔥 主要特性

🚀 相关公司

🌴 场景二:日志实时分析

🌵 典型场景

🔥 主要特性

🚀 相关公司

🌴 场景三:商业智能BI

🌵 典型场景

🔥 主要特性

🚀 相关公司

小结


一、ElaticSearch介绍

1.1 概述

1.2 搜索引擎是什么?

        所谓搜索引擎,就是根据用户需求与一定算法,运用特定策略从互联网检索出制定信息反馈给用户的一门检索技术。例如我们在淘宝进行购物时,当我们输入关键字“衣服”,那么淘宝就会给我们返回各种类型的衣服(男装/女装),实现这个功能的背后就是搜索引擎的功劳。

1.3 全文检索是什么?

        全文检索是指计算机索引程序通过扫描文章中的每一个词,对每一个词建立一个索引,指明该词在文章中出现的次数和位置,当用户查询时,检索程序就根据事先建立的索引进行查找,并将查找的结果反馈给用户的检索方式。这个过程类似于通过字典中的检索字表查字的过程。

全文检索的方式主要有两种:

二、ES特点

三、ES概念

3.1 基本概念

RDBS

ES

数据库(database)索引(index)
表(table)类型(type)(ES6.0之后被废弃,es7中完全删除)
表结构(schema)映射(mapping)
行(row)文档(document)
列(column)字段(field)
索引反向索引
SQL查询DSL
SELECT * FROM tableGET http://.....
UPDATE table SETPUT  http://......
DELETEDELETE  http://......

3.1.1 索引(index)

3.1.2 类型(type)

3.1.3 文档(document)

由于ElasticSearch是面向文档的,那么就意味着索引和搜索数据的最小单位是文档, ES中,文档有几个重要属性:

3.1.4 映射(mapping)

3.1.5 倒排索引

倒排索引操作步骤:

这样在用户检索关键字时, 可以先查找关键字索引,在通过关键字与文档的对应关系查找到所在的文档。

如下面的两个文档:

文档1: I love elasticsearch
文档2: I love logstash

他们对应的倒排索引为:

序号关键字文档1文档2
1I

2love

3elasticsearch

4logstash

现在,我们试图搜索 love elasticsearch,只需要查看包含每个词条的文档

关键字文档1文档2
love
elasticsearchx
total21

 两个文档都匹配,但是第一个文档比第二个匹配程度更高。如果没有别的条件,现在,这两个包含关键字的文档都将返回。

3.2 ES集群核心概念

3.2.1 集群(cluster)


3.2.2 节点(node)

ES的配置文件中可以通过node.master、 node.data 来设置节点类型:

node节点的组合方式:

3.2.3 分片(shard)

概述:

特点:

(1)ES的一个索引可以包含多个分片(shard);
(2)每一个分片(shard)都是一个最小的工作单元,承载部分数据;
(3)每个shard都是一个lucene实例,有完整的简历索引和处理请求的能力
(4)增减节点时,shard会自动在nodes中负载均衡
(5)一个文档只能完整的存放在一个shard上
(6)分片的数量只能在索引创建前指定,并且索引创建后不能更改。如一个索引中含有shard的数量,默认值为5,在索引创建后这个值是不能被更改的。
(7)每一个shard关联的副本分片(replica shard)的数量,默认值为1,这个设置在任何时候都可以修改。


优点:

3.2.4 副本(replica)

代表索引副本,ES可以设置多个索引的副本,副本的作用如下:

(1)提高系统的容错性,当某个节点某个分片损坏或丢失时可以从副本中恢复。

(2)提高ES的查询效率,ES会自动对搜索请求进行负载均衡。

四、应用场景

🌴 场景一:搜索服务

🌵 典型场景

🔥 主要特性

🚀 相关公司

腾讯健康码、腾讯文档全文检索、携程、拼多多、蘑菇街、滴滴、今日头条、贝壳找房…….

🌴 场景二:日志实时分析

🌵 典型场景

🔥 主要特性

🚀 相关公司

日志易

🌴 场景三:商业智能BI

🌵 典型场景

🔥 主要特性

🚀 相关公司

睿思BI 


小结

以上就是【一心同学】对【ElaticSearch】的介绍,也带大家去理解了ES中的各种【基本概念】和ES在我们生活中的【应用场景】,相信大家现在对ES已经不再陌生了,而在接下来的博客中,【一心同学】将会向为大家继续讲解【ES的操作】。

举报

相关推荐

0 条评论