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,从而实现数据的双写,将来也就是一个互补的效果了.

相关推荐
2601_949499941 小时前
400G组网低功耗优选!芯瑞科技400G VR4 QSFP112光模块赋能智算中心高速互联
大数据·人工智能·科技
阿里云大数据AI技术4 小时前
淘天集团基于 Fluss、Paimon 与 StarRocks 构建湖流一体数据链路
大数据·人工智能·flink
RFID固定资产管理系统4 小时前
适配媒体行业的固定资产管理软件有哪些功能与核心优势
大数据·人工智能·python·媒体
网渡科技6 小时前
GEO搜索优化:大模型引用率提升的六大实战策略
人工智能·搜索引擎·chatgpt
lupai6 小时前
手机归属地查询 API 新手接入指南
大数据·智能手机·api接口
数据皮皮侠AI7 小时前
上市公司数字供应链金融指数(2010-2024)
大数据·人工智能·算法
ACP广源盛139246256737 小时前
DeepSeek‑V4‑Flash 公测@ACP#昇腾 950 国产算力组合落地,国产 PCIe 交换芯片 IX9104 有哪些硬件机会
大数据·数据库·人工智能·分布式·单片机·嵌入式硬件·microsoft
2601_949499948 小时前
芯瑞科技400G VR4 QSFP-DD光模块:低功耗高密短距互联方案,赋能AI智算中心算力网络升级
大数据·运维·网络·人工智能·科技·光模块
Raas1009 小时前
MAIGateway,魔芋企业级AI网关的FinAPI成本归因设计
大数据·人工智能·网关·api网关·finapi
Pokerhead9 小时前
一个 Codex,能装下所有 AI 模型?
大数据·人工智能·ai·大模型·ai编程·codex