ElasticSearch入门之概念篇①-与MySQL的类比

本文介绍了ElasticSearch是一个分布式、高扩展、高实时的搜索与数据分析引擎,与MySQL的主要区别在于其分布式特性和数据分析能力。ElasticSearch的index类似数据库,能够存储不同业务的数据,而MySQL是关系型数据库,适用于传统数据操作。ElasticSearch通过查询语句返回满足条件的文档,并根据权重分数排序,提供更强大的搜索功能。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

ElasticSearch是什么?

Elasticsearch 是一个分布式、高扩展、高实时的搜索与数据分析引擎,具有实时性搜索各类文档的功能。以下将会简称为ES。
ES官网 目前最新的版本为7.10.1

ES作为一个分布式框架,使得它拥有了集群的概念,即类似于传感器的物联网,一个物联网组网中可以存在多个传感器节点,但必然有一个头节点(但不限于一个),作为统领其余子节点的存在,子节点可以在组网中发现集群,并加入集群,加入后节点在集群中可互相被发现,并且共同为搜索提供算力服务,就像是航班塔,很多人在协助不同的航班处理数据,但还有一个总管理者在看着这些人的工作,他们都是一起为航班服务。

那么他与MySQL有何不同呢?

  1. MySql是一个关系型数据库管理系统,简单来说,我们如果需要对一些数据进行保存,日后你可能将会把数据读取出来、修改、删除、新增,MySql将会提供各项语句让你与其交互操作。他就像一个你设计好的笔记本,忠实地帮助你记录各项数据。
  2. ES是一个开源的数据分析搜索引擎,尽管他一样可以做到对数据进行增删改查,但他更多的是,使用查询语句,加入不同的过滤条件,最后返回给你满足这些条件的结果,并且内部有一个_score字段,即权重分数,他认为该文档(可以理解为SQL中的一行数据)越满足你的条件,该分数就会越大,返回结果默认以分数倒序,对于操作语句方面的问题,后面再谈。
  3. 他与SQL是如下对应关系
MySqlES
DataBaseindex
Tabletype
RowDocument
ColumnField
每个字段的类型约束,长度约束Mapping
index索引可自由创建,包括空索引
SQL语句Query DLS
SELECT *FROM TABLEGET http://localhost:port/index
UPDATA TABLE SETPUT http://localhost:port/index/type/文档id…

从上面的的关系可以知道,ES中的index实际上是属于DataBase,ES是一个搜索引擎,他的各类文档数据是存在硬盘之上的。有点晕?没关系,我们下面形象展开来说

应对不同的业务,我们通常会拥有不同的SQL数据库,比如说一个数据库存了A学校(数据库地址是:locahost:9191),另一个数据库存储了B学校(数据库地址是:locahost:9292)。

现在教育局,需要做一个查询搜索系统方便查询这两个学校或者以后多个学校的学生相关数据,假如局内有一个JAVA工程师,他会使用JDBC桥接不同的数据库(即分辨使用不同的数据库地址和账号密码联通数据库),编写业务逻辑,最后再把数据整合展示出来
JDBC方式链接数据库查询
倘若这个工程师学会了ES,那么事情就变得方便起来了
ES方式查询
从两种方式的例图不难看出 ES的index存储就像是SQL的一个总数据库,里面存了A,B学校的表,只不过这些数据在ES里统一存储,省去了我们要预先配设不同的数据库地址账号密码桥接访问的问题,当然ES的在检索数据方面的能力远不止于此。

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

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

余额充值