ES 旧表新增字段与删除字段

这篇具有很好参考价值的文章主要介绍了ES 旧表新增字段与删除字段。希望对大家有所帮助。如果存在错误或未考虑完全的地方,请大家不吝赐教,您也可以点击"举报违法"按钮提交疑问。

注:

ES新建库就是所谓的新建索引。一个索引不要采用删除后重建数据迁移的方法,数据量太大,会有服务中断时间。

一、先查看ES索引

GET /库名(索引名)/_mapping

二、ES增加字段

PUT /库名(索引名)/type(类型-可省略)/_mapping
{
  "properties": {
    "new_field": {
      "type": "text",(类型:text-支持分词,keyword-不支持分词)
      "analyzer": "standard"(可省略--省略时为默认)
    }
  }
}

三、ES给已有数据增加字段

在我们进行ES索引mapping结果修改后,已有数据是并没有改新增字段的

POST /库名(索引名)/_update_by_query
{
    "script": {
        "inline":"new_field = '12222'"
            },
    "query": {
         "match_all":{...}
            }
}

四、ES增加字段不需要迁移老数据

只有在查询新字段时,系统会根据新字段类型自动返回默认值或者空值文章来源地址https://www.toymoban.com/news/detail-550058.html

五、ES删除字段

PUT /{索引名}/_mapping
{
    "properties": {
        "old_field": {
          "type":"object",
          "enabled": false
        }
    }
}

六、ES增加字段并设置默认值

PUT /{索引名}/_mapping
{
  "properties": {
    "new_field": {
      "type": "text",
      "analyzer": "standard",
      "fields": { (新字段子属性)
        "keyword": {
          "type": "keyword",
          "ignore_above": 256
        }
      },
      "null_value": "null" (该字段的默认值)
    }
  }
}

七、ES增加字段不需要重建索引

八、增加字段的SQL语句

{
  "query": "ALTER TABLE {索引名} ADD new_field TEXT"
}

到了这里,关于ES 旧表新增字段与删除字段的文章就介绍完了。如果您还想了解更多内容,请在右上角搜索TOY模板网以前的文章或继续浏览下面的相关文章,希望大家以后多多支持TOY模板网!

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处: 如若内容造成侵权/违法违规/事实不符,请点击违法举报进行投诉反馈,一经查实,立即删除!

领支付宝红包 赞助服务器费用

相关文章

  • ES索引修改mappings与重建reindex详解之修改字段类型

    elasticsearch一直在使用,这里总结一下mappings的修改方法,分为两种情况: 增加新的字段,这种很简单; 修改已有的字段类型,这种就比较麻烦了,需要reindex,对索引进行迁移重建。 1.1、获取mappings 增加一个 new_stocks 字段,如下: 再查一下: 可以看到new_stocks字段已经加上去

    2024年02月17日
    浏览(31)
  • ES中删除索引中某个字段

    ES中无法直接增删索引中的字段,只能能够覆盖,即重建新的索引 例:删除索引my_index中的source字段 先将source字段中的数据删除 否则后面reindex时,索引中会自动增加source字段和类型 创建新的索引my_index_bak,该mapping中不包含source字段 数据迁移 删除原来的索引 再重新创建索引

    2024年02月11日
    浏览(31)
  • ES简单教程(二)使用ElasticsearchRestTemplate新增、删除索引文档数据

    注意 :不是新增索引哈,是为某个索引新增/删除文档数据,即为某个表新增或者删除表数据。

    2024年02月11日
    浏览(34)
  • ES 如何重建索引

            ES索引中,为了效率和存储空间,有些字段可以设定为不被索引,然后某一天又需要改成能索引,此时就需要对ES进行重建索引,操作如下 cd /data/elk/logstash/es-template/ vim event.json 将 mask以及其他需要放开查询的字段的\\\"index\\\": false 去掉(注意需要把上方\\\"type\\\": \\\"keyword\\\",的逗

    2024年02月11日
    浏览(37)
  • ES索引重建reindex详解

    1. 分片数变更 :当你的数据量过大,而你的索引最初创建的分片数量不足,导致数据入库较慢的情况,此时需要扩大分片的数量,此时可以尝试使用Reindex。 2. mapping字段变更 :当数据的mapping需要修改,但是大量的数据已经导入到索引中了,重新导入数据到新的索引太耗时;

    2024年02月06日
    浏览(31)
  • es 已有记录增加分词字段

            项目中接入车辆的抓拍记录,接数据时车牌号直接存入es数据库中,未进行分词。现在需要对车牌号进行模糊查询,通过kibana对es的test索引进行实验。对过程进行整理。 1、关闭索引test 2、自定义分词器autocomplete 3、增加字段my_text,绑定自定义分词器 4、打开索引

    2024年02月13日
    浏览(27)
  • 请问如何用oracle触发器实现不允许新增/删除表/增加/减少/修改字段类型

    请问如何用oracle触发器实现不允许新增/删除表/增加/减少/修改字段类型 给本帖投票 56211打赏收藏  分享  转发到动态举报  写回复 性能测试中发现oracle11g数据库每天22点,oralce进程CPU占用率突增 11 条回复  切换为时间正序 请发表友善的回复… 发表回复 microsoft_fly 2008-11-18 还

    2024年02月16日
    浏览(34)
  • es elasticsearch 新增更新索引,新增更新文档

    先新增索引 新增映射  或者上述两步和为一步(创建索引,及创建mapping) 只能增加原有不存在的字段 创建一个全新的索引,映射包含调整后的字段或类型 将原有索引的数据迁移到新的索引 删除原有索引 将新的索引的别名设置为原来索引相同名称 创建一个 重建文档(全量

    2024年02月11日
    浏览(29)
  • 【HBZ分享】ES中的Reindex重建索引

    滚动索引 + 批量复制 如果新的索引没有提前创建好,并指定字段类型,那么重建后的新索引类型极有可能会和旧的索引不一致,因为ES他会推断类型,而推断错误率从实战来说那是相当的高 字段类型设置错了 旧的索引分片不合理,想重新分 某批数据存错了,或只想保留具备

    2024年02月13日
    浏览(26)
  • elasticsearch ES新增字段并赋初始值

    摘要:es head 新增字段并赋值_xiejunna的博客-CSDN博客_es新增字段并赋值

    2024年02月11日
    浏览(31)

觉得文章有用就打赏一下文章作者

支付宝扫一扫打赏

博客赞助

微信扫一扫打赏

请作者喝杯咖啡吧~博客赞助

支付宝扫一扫领取红包,优惠每天领

二维码1

领取红包

二维码2

领红包