Elasticsearch快速入门

发布于:2022-10-17 ⋅ 阅读:(436) ⋅ 点赞:(0)

1.什么是ES

ES是一个基于Restful web接口开源分布式搜索引擎,同时ES还是一个分布式文档数据库,其中每个字段均可被索引,而且每个字段的数据均可被搜索,能够横向扩展至数以百计的服务器存储以及处理PB级的数据

2.ES的用途

1.日志分析

复杂的业务场景通常会产生繁杂多样的日志,如MySQL Log等,往往很难从繁杂的日志中获取价值,却要承担其存储的成本。Elasticsearch能够借助Beats、Logstash等快速对接各种常见的数据源,并通过集成的Kibana高效地完成日志的可视化分析,让日志产生价值。

2.搜索服务

商品搜索,APP 搜索,站内搜索,视频搜索等     

3.数据分析

电商网站,最近7天手机这种商品销量排名前十的商家有哪些

新闻网站,最近一个月访问量排名前3的新闻板块是哪些

订单数据分析、用户画像等

4.后端存储

保存一些地图信息等,es里有个geo-point的类型,这个是存放地理坐标点的信息也就是经纬度的信息,然后通过点位查询距离范围内也就是一个圆内的所有数据

3.ES的结构

集群(cluster)
一个Elasticsearch集群由一个或多个ES节点组成

节点(node)
一个节点是集群中的一个服务器,用来存储数据并参与集群的索引和搜索。 

索引(index)
一个索引是一个拥有一些相似特征的文档的集合(相当于关系型数据库中的一个数据库)

类型(type)
一个类型通常是一个索引的一个逻辑分类或分区,例如用户类型、博客类型等。ES7.0已经不支持在一个索引下创建多个类型,并且类型概念已经在后续版本中删除,这个主要是防止与Mysql的type混淆

文档(document)
一个文档是可以被索引的基本信息单元(相当于关系型数据库中的一行数据)

字段(field)
组成文档的最小单位。相当于关系型数据库中的一列数据。

映射(mapping)
用来定义一个文档以及其所包含的字段如何被存储和索引,例如在mapping中定义字段的名称和类型,以及所使用的分词器。

4.ES为什么检索这么快

DocId Doc
1 全文搜索引擎Elasticsearch
2 分布式全文搜索引擎Elasticsearch
3 分布式文档数据库Elasticsearch
4 高性能数据库Elasticsearch

将文档进行分词维护成倒排索引

WordId Word DocIds
1 全文 1, 2
2 搜索 1, 2
3 引擎 1, 2
4 Elasticsearch 1, 2, 3, 4
5 分布式 2, 3
6 文档 3
7 数据库 3, 4
8 高性能 4
本文含有隐藏内容,请 开通VIP 后查看

网站公告

今日签到

点亮在社区的每一天
去签到