es elasticsearch 新增更新索引,新增更新文档

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

mapping操作

新增索引及mapping

先新增索引

PUT http://localhost:9200/job

新增映射

post http://localhost:9200/job/_mapping
 
{
    "properties": {
        "jid": {
            "type": "long"
        },
        "title": {
            "type": "text"
        },
        "company": {
            "type": "text"
        },
        "salary": {
            "type": "integer_range"
        },
        "city": {
            "type": "keyword"
        },
        "description": {
            "type": "text"
        },
       "req_time": {
            "type":"date",
            "format": "yyyy-MM-dd HH:mm:ss||date_optional_time||epoch_millis"
        },
    }
}

 或者上述两步和为一步(创建索引,及创建mapping)

post http://localhost:9200/job/_mapping

{
"mappings": {
    "properties": {
        "jid": {
            "type": "long"
        },
        "title": {
            "type": "text"
        },
        "company": {
            "type": "text"
        },
        "salary": {
            "type": "integer_range"
        },
        "city": {
            "type": "keyword"
        },
        "description": {
            "type": "text"
        },
       "req_time": {
            "type":"date",
            "format": "yyyy-MM-dd HH:mm:ss||date_optional_time||epoch_millis"
        }
    }
}
}

对已存在的index增加映射

只能增加原有不存在的字段

POST /job/_mapping
{
  "properties": {
    "test1": {
      "type": "long"
    },
    "test2": {
      "type": "integer"
    }
  }
}

如何修改mapping?


创建一个全新的索引,映射包含调整后的字段或类型
将原有索引的数据迁移到新的索引
删除原有索引
将新的索引的别名设置为原来索引相同名称

文档的操作

创建文档


创建一个

post http://localhost:9200/job/_create/1
{
    "jid": 1,
    "title": "Java开发工程师",
    "company": "北京威米信科技有限公司",
    "salary": {
        "gte": 9000,
        "lte": 15000
    },
    "city": "北京",
    "description": "xxx"
}



重建文档(全量更新)
 

post http://localhost:9200/job/_doc/1
{
    "jid": 1,
    "title": "Java开发工程师",
    "company": "北京威米信科技有限公司",
    "salary": {
        "gte": 9000,
        "lte": 15000
    },
    "city": "北京",
    "description": "xxx"
}

更新操作

全量更新与局部更新

若原文档为{"a":1,"b":2}

全量更新是:若更新数据为{"a":111},则get整个文档变为{"a":111}

局部更新是:若更新数据为{"a":111},则get整个文档变为{"a":111,"b":2}

https://liuhuiyao.blog.csdn.net/article/details/120849094

条件更新

//     POST /lhy_test/_update_by_query
//     {
//       "query": {
//         "terms" : {
//               "_id" : ["_create"]
//             }
//       },
//       "script": {
//         "source": "ctx._source.salary=100",
//         "lang": "painless"
//       }
//     }

 单个更新

//				POST /xxx/_update/1?refresh=true
//						{
//						  "doc":{
//						     "isec_opt_state":1
//						  },
//						  "doc_as_upsert":false//#重要:false当id为1的记录不存在时会更新报错,true当id为1的记录不存在时会创建索引并插入记录
//						 
//						}

批量新增、更新操作

https://liuhuiyao.blog.csdn.net/article/details/121488282

删除文档


delete http://localhost:9200/job/_doc/1文章来源地址https://www.toymoban.com/news/detail-501477.html

网上案例

一,索引文档

// 称之为index一个文档,指定ID,Put创建必须指定ID
// 如果文档存在,会先删除文档,重新创建
PUT lcy_test/_doc/1
{
  "name":"lch"
}

二,create文档

// 指定ID,同时指定是create,如果id存在,则报错
PUT lcy_test/_doc/1?op_type=create
{
  "name":"lch"
}

三,create文档2

// 另外一种create的方法,
//指定Id,同时指定是create,如果id存在,则报错
PUT lcy_test/_create/4
{
  "name":"lch"
}

四,post创建文档

// POST创建文档,不用指定id
POST lcy_test/_doc
{
  "name":"james2"
}
生成新文档有2中方式:一是指定ID,索引文档、create文档,put和post都可以;

二是不指定ID:post方式自动生成ID,只有post,put不行;

五,update文档

// update,修改内容必须包含在doc中
POST lcy_test/_update/1
{
  "doc":{
    "name":"lcy2",
    "first name":"yong"
  }
}

六,查询文档

GET lcy_test/_doc/2FJtCHcBTCkjMQHa_GD1

七,批量操作 bulk

// 批量操作1
// bulk
POST  _bulk
{"index":{"_index":"lcy_test"}}
{"name":"get"}
{"delete":{"_index":"lcy_test","_id":"2FJtCHcBTCkjMQHa_GD1"}}
{"create":{"_index":"lcy_test","_id":1}}
{"name":"get"}

八,批量查询 mget

// 批量查询 _mget
GET _mget 
{
  "docs":[
    {
      "_index":"lcy_test",
      "_id":1
    },
    {
      "_index":"lcy_test",
      "_id":2
    }
  ]
}

九,批量查询 mquery

// 批量查询 _mquery
POST kibana_sample_data_ecommerce/_msearch
{}
{"query":{"match_all":{}},"size":1}
{"index":"kibana_sample_data_flights"}
{"query":{"match_all":{}},"size":2}

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

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

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

相关文章

  • 原生语言操作和spring data中RestHighLevelClient操作Elasticsearch,索引,文档的基本操作,es的高级查询.查询结果处理. 数据聚合.相关性系数打分

    ​ Elasticsearch 是一个分布式、高扩展、高实时的搜索与数据分析引擎。它能很方便的使大量数据具有搜索、分析和探索的能力。充分利用Elasticsearch的水平伸缩性,能使数据在生产环境变得更有价值。Elasticsearch 的实现原理主要分为以下几个步骤,首先用户将数据提交到Elasti

    2024年02月05日
    浏览(87)
  • postman连接es执行创建、查询、新增文档等操作

    创建索引操作语句: 查询索引操作: 查询文档: 新增文档操作:

    2024年02月13日
    浏览(45)
  • Elasticsearch如何创建索引,添加,删除,更新文档

    了解es基本概念:elasticsearch(es)背景故事与基本概念 安装es:Linux安装Elasticsearch详细教程 安装kibana:Linux安装Kibana详细教程 熟悉Json 熟悉REST接口 检查 es 及 Kibana 是否运行正常 创建一个名为 twitter 的索引(index),并插入一个文档(document) 在关系型数据库中,需要使用DDL语

    2023年04月08日
    浏览(65)
  • 【ES】Elasticsearch核心基础概念:文档与索引

    es的核心概念主要是:index(索引)、Document(文档)、Clusters(集群)、Node(节点)与实例,下面我们先来了解一下Document与Index。 在讲解Document与Index概念之前,我们先来了解一下RESTful APIs,因为下面讲解Document和Index的时候会使用到。 当我们把es服务器启动起来之后,要怎么调用呢?

    2024年02月05日
    浏览(49)
  • ES索引库操作&文档操作

    索引库就类似数据库表,mapping映射就类似表的结构。 我们要向es中存储数据,必须先创建“库”和“表”。 mapping是对索引库中文档的约束,常见的mapping属性包括: type:字段数据类型,常见的简单类型有: 字符串:text(可分词的文本)、keyword(精确值,例如:品牌、国家

    2024年02月08日
    浏览(37)
  • 【ElasticSearch】更新es索引生命周期策略,策略何时对索引生效

    大家好,我是好学的小师弟,今天和大家讨论下更新es索引生命周期策略后,策略何时对索引生效 结论: 若当前索引已应用策略A(旧),更新完策略A后,新的策略A会立即对原来的已经应用该策略的索引生效;若当前索引符合新策略A的生命周期变化条件,则会自动进入下一阶段

    2024年02月07日
    浏览(46)
  • ElasticSearch 实战:ES查询索引文档的6种方法

    在Elasticsearch中,查询索引文档的方法多种多样,这里列举了6种常见的查询方法,其中包括: 简单查询(String Query) 这是最基本的全文搜索,只需在URL后面附加查询字符串即可。例如,对索引 my_index 中的所有文档执行模糊匹配查询: Match Query 类似于简单查询,但提供了更多的

    2024年04月12日
    浏览(47)
  • Elasticsearch学习-索引操作及Mapping映射

    在7.X版本前类似于关系型数据库中的数据库概念,8.X版本后删除了type概念,索引类似于关系型数据库中的表 相当于关系型数据库中的一条数据,最小单元 每一个节点就是一个ES实例(一个java进程),一个节点 != 一台服务器 多个节点组成分布式系统,ES原生分布式,已启动一

    2023年04月22日
    浏览(42)
  • 简述Elasticsearch(ES)是什么 全文搜索概念 (倒排索引 管理文档)

    今天 我们来说说 NoSql 中的 Elasticsearch 大家基本都叫它 ES 官方介绍 它是一个分布式全文搜索引擎 分布式是一个系统架构的概念 而 全文搜索引擎 全文搜索 可以说基本大家天天都在接触 就比如 我们京东购物 想买什么东西 在全文输入框中搜索 它就会在所有物品中 帮你找出需

    2024年01月25日
    浏览(46)
  • 【ELK02】ES的重要核心概念和索引常用操作-索引文档管理、文档搜索

    1.1索引(index) 类似于关系型数据中的库-database ,一个es的集群中可以有多个索引,每个索引都是一批独立的存储数据,按照一定的数据结构保存,方便查询. 1.2类型(type) 类似于关系型数据库中的表格-table ,一个索引中可以有多个类型,每个类型中的数据结构是一致的. 注意:6.x中使用类

    2024年02月04日
    浏览(42)

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

支付宝扫一扫打赏

博客赞助

微信扫一扫打赏

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

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

二维码1

领取红包

二维码2

领红包