type

type

是不是一个index只能创建一个type。

ElasticsearchJElbert 回复了问题 • 2 人关注 • 2 个回复 • 161 次浏览 • 2018-06-28 09:39 • 来自相关话题

Elasticsearch 移除 type 之后的新姿势

经验分享medcl 发表了文章 • 0 个评论 • 764 次浏览 • 2018-05-03 15:41 • 来自相关话题

随着 7.0 版本的即将发布,type 的移除也是越来越近了,在 6.0 的时候,已经默认只能支持一个索引一个 type 了,7.0 版本新增了一个参数 include_type_name ,即让所有的 API 是 type 相关的,这个参数在 7.0 默认是 true,不过在 8.0 的时候,会默认改成 false,也就是不包含 type 信息了,这个是 type 用于移除的一个开关。

让我们看看最新的使用姿势吧,当 include_type_name 参数设置成 false 后:

  • 索引操作:PUT {index}/{type}/{id}需要修改成PUT {index}/_doc/{id}
  • Mapping 操作:PUT {index}/{type}/_mapping 则变成 PUT {index}/_mapping
  • 所有增删改查搜索操作返回结果里面的关键字 _type 都将被移除
  • 父子关系使用 join 字段来构建
#创建索引
PUT twitter
{
  "mappings": {
    "_doc": {
      "properties": {
        "type": { "type": "keyword" }, 
        "name": { "type": "text" },
        "user_name": { "type": "keyword" },
        "email": { "type": "keyword" },
        "content": { "type": "text" },
        "tweeted_at": { "type": "date" }
      }
    }
  }
}

#修改索引
PUT twitter/_doc/user-kimchy
{
  "type": "user", 
  "name": "Shay Banon",
  "user_name": "kimchy",
  "email": "shay@kimchy.com"
}

#搜索
GET twitter/_search
{
  "query": {
    "bool": {
      "must": {
        "match": {
          "user_name": "kimchy"
        }
      },
      "filter": {
        "match": {
          "type": "tweet" 
        }
      }
    }
  }
}

#重建索引
POST _reindex
{
  "source": {
    "index": "twitter"
  },
  "dest": {
    "index": "new_twitter"
  }
}

相关链接:

10亿数据,索引分配与 搜索速度优化

回复

Elasticsearch匿名用户 发起了问题 • 1 人关注 • 0 个回复 • 355 次浏览 • 2018-04-20 14:56 • 来自相关话题

elasticsearch下index和type如何设计比较合理?

Elasticsearchcanslm 回复了问题 • 3 人关注 • 3 个回复 • 719 次浏览 • 2018-03-14 01:35 • 来自相关话题

ES的type是否可以用字段代替

Elasticsearchmedcl 回复了问题 • 2 人关注 • 1 个回复 • 321 次浏览 • 2018-01-16 16:50 • 来自相关话题

type 类型问题

Elasticsearchlengchanguo 回复了问题 • 3 人关注 • 2 个回复 • 397 次浏览 • 2017-12-01 20:20 • 来自相关话题

Elasticsearch 6.0 将移除 Type

Elasticsearchmedcl 发表了文章 • 6 个评论 • 5279 次浏览 • 2017-05-04 22:25 • 来自相关话题

尽管之前在很多地方都提到过,不过还是有必要单独开篇文章提醒一下大家! Type 已经打算在6.0移除了,所以在设计 elasticsearch 的数据结构的时候,要注意到后面版本的变化。 之前在很多的文章和 PPT 都有介绍Elasticsearch 的几个核心概念,Index 对应 DB,Type 对应表,Document 对应记录,然后就真的按数据库的路子用,一个 index 里面 n 个 type 的情况大有存在,但是在 Lucene 里面其实有很多问题,所以现在es移除也是考虑了很久的。 新增参数:
index.mapping.single_type: true
  UID 也会移除掉 _type 的值。 Type 移除大概分为两个阶段: 第一步,不支持新的索引创建多个 type,一个索引只有一个 type,名称也是固定的,不能修改。 第二步,移除。   相应的 PR 已经 merge 了。 https://github.com/elastic/ela ... 24317  
尽管之前在很多地方都提到过,不过还是有必要单独开篇文章提醒一下大家! Type 已经打算在6.0移除了,所以在设计 elasticsearch 的数据结构的时候,要注意到后面版本的变化。 之前在很多的文章和 PPT 都有介绍Elasticsearch 的几个核心概念,Index 对应 DB,Type 对应表,Document 对应记录,然后就真的按数据库的路子用,一个 index 里面 n 个 type 的情况大有存在,但是在 Lucene 里面其实有很多问题,所以现在es移除也是考虑了很久的。 新增参数:
index.mapping.single_type: true
  UID 也会移除掉 _type 的值。 Type 移除大概分为两个阶段: 第一步,不支持新的索引创建多个 type,一个索引只有一个 type,名称也是固定的,不能修改。 第二步,移除。   相应的 PR 已经 merge 了。 https://github.com/elastic/ela ... 24317  

在es2.1版本中如何删除一个type下的数据

Elasticsearchyinglunfeng 回复了问题 • 4 人关注 • 4 个回复 • 5043 次浏览 • 2016-01-05 20:24 • 来自相关话题

怎样让log stash输出number类型数据

Logstashlephix 回复了问题 • 3 人关注 • 1 个回复 • 2958 次浏览 • 2015-12-17 23:51 • 来自相关话题

是不是一个index只能创建一个type。

回复

ElasticsearchJElbert 回复了问题 • 2 人关注 • 2 个回复 • 161 次浏览 • 2018-06-28 09:39 • 来自相关话题

10亿数据,索引分配与 搜索速度优化

回复

Elasticsearch匿名用户 发起了问题 • 1 人关注 • 0 个回复 • 355 次浏览 • 2018-04-20 14:56 • 来自相关话题

elasticsearch下index和type如何设计比较合理?

回复

Elasticsearchcanslm 回复了问题 • 3 人关注 • 3 个回复 • 719 次浏览 • 2018-03-14 01:35 • 来自相关话题

ES的type是否可以用字段代替

回复

Elasticsearchmedcl 回复了问题 • 2 人关注 • 1 个回复 • 321 次浏览 • 2018-01-16 16:50 • 来自相关话题

type 类型问题

回复

Elasticsearchlengchanguo 回复了问题 • 3 人关注 • 2 个回复 • 397 次浏览 • 2017-12-01 20:20 • 来自相关话题

在es2.1版本中如何删除一个type下的数据

回复

Elasticsearchyinglunfeng 回复了问题 • 4 人关注 • 4 个回复 • 5043 次浏览 • 2016-01-05 20:24 • 来自相关话题

怎样让log stash输出number类型数据

回复

Logstashlephix 回复了问题 • 3 人关注 • 1 个回复 • 2958 次浏览 • 2015-12-17 23:51 • 来自相关话题

Elasticsearch 移除 type 之后的新姿势

经验分享medcl 发表了文章 • 0 个评论 • 764 次浏览 • 2018-05-03 15:41 • 来自相关话题

随着 7.0 版本的即将发布,type 的移除也是越来越近了,在 6.0 的时候,已经默认只能支持一个索引一个 type 了,7.0 版本新增了一个参数 include_type_name ,即让所有的 API 是 type 相关的,这个参数在 7.0 默认是 true,不过在 8.0 的时候,会默认改成 false,也就是不包含 type 信息了,这个是 type 用于移除的一个开关。

让我们看看最新的使用姿势吧,当 include_type_name 参数设置成 false 后:

  • 索引操作:PUT {index}/{type}/{id}需要修改成PUT {index}/_doc/{id}
  • Mapping 操作:PUT {index}/{type}/_mapping 则变成 PUT {index}/_mapping
  • 所有增删改查搜索操作返回结果里面的关键字 _type 都将被移除
  • 父子关系使用 join 字段来构建
#创建索引
PUT twitter
{
  "mappings": {
    "_doc": {
      "properties": {
        "type": { "type": "keyword" }, 
        "name": { "type": "text" },
        "user_name": { "type": "keyword" },
        "email": { "type": "keyword" },
        "content": { "type": "text" },
        "tweeted_at": { "type": "date" }
      }
    }
  }
}

#修改索引
PUT twitter/_doc/user-kimchy
{
  "type": "user", 
  "name": "Shay Banon",
  "user_name": "kimchy",
  "email": "shay@kimchy.com"
}

#搜索
GET twitter/_search
{
  "query": {
    "bool": {
      "must": {
        "match": {
          "user_name": "kimchy"
        }
      },
      "filter": {
        "match": {
          "type": "tweet" 
        }
      }
    }
  }
}

#重建索引
POST _reindex
{
  "source": {
    "index": "twitter"
  },
  "dest": {
    "index": "new_twitter"
  }
}

相关链接:

Elasticsearch 6.0 将移除 Type

Elasticsearchmedcl 发表了文章 • 6 个评论 • 5279 次浏览 • 2017-05-04 22:25 • 来自相关话题

尽管之前在很多地方都提到过,不过还是有必要单独开篇文章提醒一下大家! Type 已经打算在6.0移除了,所以在设计 elasticsearch 的数据结构的时候,要注意到后面版本的变化。 之前在很多的文章和 PPT 都有介绍Elasticsearch 的几个核心概念,Index 对应 DB,Type 对应表,Document 对应记录,然后就真的按数据库的路子用,一个 index 里面 n 个 type 的情况大有存在,但是在 Lucene 里面其实有很多问题,所以现在es移除也是考虑了很久的。 新增参数:
index.mapping.single_type: true
  UID 也会移除掉 _type 的值。 Type 移除大概分为两个阶段: 第一步,不支持新的索引创建多个 type,一个索引只有一个 type,名称也是固定的,不能修改。 第二步,移除。   相应的 PR 已经 merge 了。 https://github.com/elastic/ela ... 24317  
尽管之前在很多地方都提到过,不过还是有必要单独开篇文章提醒一下大家! Type 已经打算在6.0移除了,所以在设计 elasticsearch 的数据结构的时候,要注意到后面版本的变化。 之前在很多的文章和 PPT 都有介绍Elasticsearch 的几个核心概念,Index 对应 DB,Type 对应表,Document 对应记录,然后就真的按数据库的路子用,一个 index 里面 n 个 type 的情况大有存在,但是在 Lucene 里面其实有很多问题,所以现在es移除也是考虑了很久的。 新增参数:
index.mapping.single_type: true
  UID 也会移除掉 _type 的值。 Type 移除大概分为两个阶段: 第一步,不支持新的索引创建多个 type,一个索引只有一个 type,名称也是固定的,不能修改。 第二步,移除。   相应的 PR 已经 merge 了。 https://github.com/elastic/ela ... 24317