一文读懂elasticsearch版本升级type的变化

本文介绍了Elasticsearch中type属性的由来及其被逐步废弃的原因。type曾用于区分索引内的不同类型,但因其与关系型数据库概念的混淆,导致了一系列问题。随着版本更新,type在8.X版本中被彻底移除。

type属性的由来

从Elasticsearch的第一个发布版本以来,每一个document都被存储在一个单独的index里,并被赋予了一个type,一个mapping代表一个type相关的数据类型以及索引类型。

例如,一个twitter索引可能有一个user类型和tweet类型。

每种type都有他自己的字段,所以user类型可能有一个full_name字段,一个user_name字段和一个email字段,而一个tweet类型可能有一个content字段,一个tweet_at字段,和user类型一样一个user_name字段。

每一个文档类型都有一个_type元字段来存储type名称,并且根据URL里指定的类型名称,查询(搜索)被限定在一个或多个类型(type)里:

GET /twitter/user,tweet/_search
{
  "query": {
    "match": {
      "user_name": "nicola"
    }
  }
}

type为什么被干掉了

但是不知道何时起,有人将elasticsearch对标关系型数据库中的概念,这样便于理解,也便于处理问题,于是就有了下面的关系:

elasticsearch rdbms description
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值