从ElasticSearch7开始一个索引里面只允许有一个映射

从ElasticSearch7开始一个索引里面只允许有一个映射

在ElasticSearch7版本之前,ES的一个索引里面可以有多个映射关系。为什么呢?因为ES最初设计的时候是类比于像mysql这样的关系型数据库,比如说ES的索引就相当于是关系型数据库中的数据库;ES的映射就相当于是关系型数据库中的表;ES的文档就相当于表里面的每一行。
因此在最初的时候 也就意味着 一个索引里面可以有多个映射,因为一个关系型数据库里面可以有多张表嘛!

但是后来发现这样做有一个很严重的问题,是什么呢?就是我们的ES中的每个索引都会有一个倒排索引,会记录这个索引中关键字出现的文档id。比如用户在搜索引擎输入 “华为”关键字,那么ES就会去倒排索引中寻找这个关键字的文档对应的id。 但是如果同一个索引 的两个不同映射里面,有一个属性名字一样 但是类型不一样,Es就不知道该去找倒排索引的哪一行了,因为这两个的属性名字都一样 比如都是叫做手机名字,但是类型却不一样,所以对于ES搜索引擎来说不好处理。因此在ElasticSearch7版本之后 就不再允许一个索引里面创建多个映射了,一个索引里面只允许创建一个映射。

  • 2
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 打赏
    打赏
  • 2
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论 2
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

Mr-X~

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

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

余额充值