ElasticSearch - 基础概念,以及和 mysql 的对比

目录

[一、ElasticSearch 基础概念](#一、ElasticSearch 基础概念)

1.1、文档(document)

1.2、索引(index)

1.3、映射(mapping)

[二、对比 mysql](#二、对比 mysql)

2.1、概念对比

2.2、适用场景对比

[2.2.1、那是不是说,有了 es 之后,就可以完全替代我们的 mysql 了呢?](#2.2.1、那是不是说,有了 es 之后,就可以完全替代我们的 mysql 了呢?)

2.2.2、他们两之间有什么关系


一、ElasticSearch 基础概念


1.1、文档(document)

elasticsearch 是面向文档存储的,可以是数据库中的一条商品数据,也可以是订单数据... 这些东西都会被序列化成 json 的格式,存储在 es 中.

比如前面提到的商品表,里面有 id 、title 、price 这些数据,最后都会被序列化成 json 的格式进行存储.

1.2、索引(index)

索引就是相同类型文档的集合。这就相当于是 MySQL 中的表一样,而文档就是表中的每一行数据.

1.3、映射(mapping)

这里的映射就是对文档字段的约束,比如你的字段名字是什么,数据类型是字符串,还是数字啊. 这就类似于 mysql 中的约束一样.

Ps:所以这我们不难看出,这里 es 的概念和 mysql 之间有一些相似关系,下面我们就来对比一下.

二、对比 mysql


2.1、概念对比

一下数据,第一列为 mysql 、第二列为 es.

  • 表 => 索引:索引,就是文档的集合,类似于数据库中的表.
  • 行 => 文档:文档,就是一条条数据,类似数据库中的每一行数据,但是文档的格式是 json 格式.
  • 列 => 字段:字段,就是 json 文档中的字段,类似于数据库中的列.
  • 约束 => 映射:映射是索引中文档的约束,例如字段类型约束(数据类型).类似于数据库中的表结构.
  • SQL => DSL:DSL 是 es 中提供的 json 风格的请求语句,用来操作 es,实现 CRUD.

2.2、适用场景对比

2.2.1、那是不是说,有了 es 之后,就可以完全替代我们的 mysql 了呢?

并不可以啊,因为他们两擅长的事情是不一样的~~

  • mysql:更擅长的是事务的操作,事务里面有原子性、持久性、一致性、隔离性这些,因此可以保证数据的安全性、持久化存储、数据一致.
  • es:es 中就没有事务的概念了,他更擅长的数据的搜索分析和运算.

例如,现在要做一个下单付款这样的业务,对事务的要求很高,因此就应该使用 mysql 去存储;如果你先在做到是一个商品搜索,或者是页面搜索,这种搜索比较复杂(比如用户通过关键词搜索所有相关信息),那么就需要使用 es 去做.

2.2.2、他们两之间有什么关系

他们在系统架构中是一种互补的关系, 比如我们的用户做一个商品订单的搜索,因为 es 的搜索能力更强,所以这里使用 es 进行搜索,那么也意味着,es 这边也要有数据,那怎么确保两边都有数据呢?一般写数据,是写在 mysql 中的(为了数据的安全性以及持久化等特性,mysql 用来存储全量数据),并且mysql 也会将数据同步给 es,从而实现数据的双写,将来也就是一个互补的效果了.

相关推荐
TM1Club1 小时前
AI驱动的预测:新的竞争优势
大数据·人工智能·经验分享·金融·数据分析·自动化
zhang133830890751 小时前
CG-09H 超声波风速风向传感器 加热型 ABS材质 重量轻 没有机械部件
大数据·运维·网络·人工智能·自动化
电商API_180079052473 小时前
第三方淘宝商品详情 API 全维度调用指南:从技术对接到生产落地
java·大数据·前端·数据库·人工智能·网络爬虫
龙山云仓3 小时前
No140:AI世间故事-对话康德——先验哲学与AI理性:范畴、道德律与自主性
大数据·人工智能·深度学习·机器学习·全文检索·lucene
躺柒4 小时前
读数字时代的网络风险管理:策略、计划与执行04风险指引体系
大数据·网络·信息安全·数字化·网络管理·网络风险管理
独自归家的兔5 小时前
从 “局部凑活“ 到 “全局最优“:AI 规划能力的技术突破与产业落地实践
大数据·人工智能
海域云-罗鹏6 小时前
国内公司与英国总部数据中心/ERP系统互连,SD-WAN专线实操指南
大数据·数据库·人工智能
策知道7 小时前
依托政府工作报告准备省考【经验贴】
大数据·数据库·人工智能·搜索引擎·政务
Henry-SAP7 小时前
SAP(ERP) 组织结构业务视角解析
大数据·人工智能·sap·erp·sap pp
TracyCoder1238 小时前
ElasticSearch内存管理与操作系统(一):内存分配底层原理
大数据·elasticsearch·搜索引擎