`
donlianli
  • 浏览: 340389 次
  • 性别: Icon_minigender_1
  • 来自: 北京
博客专栏
Group-logo
Elasticsearch...
浏览量:218547
社区版块
存档分类
最新评论

elasticsearch 添加字段

阅读更多

Elasticsearch中的mapping一旦创建,就不能再修改。但是添加字段是可以的。其实很简单,只需在原来的mapping上面直接新增加一个field,然后重新创建一下mapping就可以了。

 

原mapping的定义如下:

private static XContentBuilder getMapping() throws Exception{
		XContentBuilder mapping = jsonBuilder()  
			       .startObject()  
			         .startObject("test")  
			         .startObject("properties")         
			           .startObject("id")
			           		.field("type", "long")
			           		.field("store", "yes")
			           	.endObject()    
			           	
			           .startObject("type")
			           		.field("type", "string")
			           		.field("index", "not_analyzed")
			           	.endObject()  
			           	
			           .startObject("catIds")
			           		.field("type", "integer")
			           .endObject()  
			         .endObject()  
			        .endObject()  
			      .endObject();  
		return mapping;
	}

 

现在加入要增加一个field,名称叫title。新增后的代码如下:

private static XContentBuilder getMapping() throws Exception{
		XContentBuilder mapping = jsonBuilder()  
			       .startObject()  
			         .startObject("test")  
			         .startObject("properties")         
			           .startObject("id")
			           		.field("type", "long")
			           		.field("store", "yes")
			           	.endObject()    
			           	
			           .startObject("type")
			           		.field("type", "string")
			           		.field("index", "not_analyzed")
			           	.endObject()  
			           	//新增字段
			           	 .startObject("title")
			           		.field("type", "string")
			           		.field("index", "analyzed")
			           	.endObject()  
			           	
			           .startObject("catIds")
			           		.field("type", "integer")
			           .endObject()  
			         .endObject()  
			        .endObject()  
			      .endObject();  
		return mapping;
	}

 

然后重新putMapping即可。

还不知道如何创建mapping?请看这里

 

 

 

 

 

对这类话题感兴趣?欢迎发送邮件至donlianli@126.com
关于我:邯郸人,擅长Java,Javascript,Extjs,oracle sql。
更多我之前的文章,可以访问 我的空间

 

分享到:
评论

相关推荐

    ES之_source字段详解

    在Elasticsearch(以下简称ES)中,_source字段扮演着至关重要的角色。它包含了索引时传递的原始JSON文档体。了解和掌握_source字段的工作原理对于优化查询性能、提高数据检索效率至关重要。 #### 二、_source字段...

    Elasticsearch(015):es常见的字段映射类型之数字类型(numeric)

    文章目录简介示例注意事项 ...#给example索引添加字段映射,默认docs类型 PUT example/docs/_mapping { properties: { id:{ type:long }, name:{ type:keyword }, age:{ type:integer },

    ElasticSearch添加索引.docx

    在Elasticsearch中,添加索引是数据存储和检索的基础操作。索引是Elasticsearch中的一个重要概念,它类似于传统数据库中的表。本篇将详细解释如何为Elasticsearch创建索引,以及索引文件中各项设置的意义。 首先,...

    elasticsearch7.17.10-最新支持Java1.8版本

    5. **动态映射**:Elasticsearch支持动态字段映射,意味着可以自动识别新添加字段的数据类型,无需预先定义。 6. **多租户**:一个Elasticsearch实例可以支持多个索引,每个索引有自己的设置和映射,实现资源隔离。...

    基于.netcore搜索封装ElasticSearch.zip

    8. **弹性伸缩**: 由于Elasticsearch天生支持分布式,因此当数据量或访问量增加时,可以通过添加更多节点来横向扩展系统。 这个.NET Core封装库可能已经对这些基本操作进行了简化,提供了更符合.NET开发者习惯的API...

    springboot整合es-springboot-elasticsearch.zip

    1. **添加依赖**:在SpringBoot项目的pom.xml文件中,引入Elasticsearch的Spring Data Elasticsearch依赖。确保版本与Elasticsearch服务器版本匹配。 ```xml <groupId>org.springframework.boot <artifactId>...

    elasticsearch7.17.11版本分词器插件安装包

    Elasticsearch(简称ES)是一款基于Lucene的分布式、RESTful搜索引擎,广泛应用于日志收集、数据分析等领域,是ELK(Elasticsearch、Logstash、Kibana)堆栈的重要组成部分。在处理中文数据时,合理的分词对于提升...

    elasticsearch-6.8.0+elasticsearch-analysis-ik-6.8.0 .zip

    通过添加依赖,可以轻松创建 Elasticsearch 的客户端,实现索引的创建、文档的增删改查以及复杂的查询操作。Spring Data 提供的注解使得操作 Elasticsearch 如同操作数据库一样简单,提高了开发效率。 **搜索引擎的...

    springBoot动态操作Elasticsearch组件

    如果我们只想在特定字段上执行模糊查询,可以使用`@Query`注解配合Elasticsearch的查询语法。例如,定义一个方法`@Query("{\"match\":{\"fieldName\":\"?0\"}}") List<MyEntity> findByFixedField(String value)`,...

    ElasticSearch.zip

    Elasticsearch(简称 ES)是一种基于 Lucene 的开源全文搜索引擎,被广泛应用于大数据分析、日志收集、实时搜索等领域。它的设计目标是分布式、可扩展、高可用且易用,支持RESTful API,使得与ES交互变得简单。 **...

    elasticsearch-8.11.3-linux-x86-64.tar.gz.zip

    7. **映射(Mapping)**:映射是Elasticsearch中的字段配置,定义了字段的数据类型、分析器等,影响着数据的索引和搜索行为。 8. **搜索性能**:Elasticsearch利用倒排索引技术,提供快速的全文检索。同时,通过...

    Go-elasticsearchloggolang的elasticsearch日志封装包括搜索查询添加等

    这通常涉及创建Elasticsearch的索引、类型,并将日志条目作为文档进行添加。库中的API可能会提供一个方法,例如`AddDocument`,接受日志对象并处理向Elasticsearch的发送工作,确保日志数据被正确格式化和发送。 ...

    Elasticsearch工具类

    关联查询在Elasticsearch中可以通过嵌套文档、父子文档或者多字段查询等方式实现。这些查询方式可以帮助我们处理复杂的数据关系,比如在一个文档中查找与之关联的其他文档。 文件名为"esutil"的类可能包含了上述...

    elasticsearch7.17.14版本分词器插件安装包

    在日志收集和分析领域,Elasticsearch(简称ES)是广泛应用的搜索引擎和数据分析工具,它与Logstash(数据采集)、Kibana(数据可视化)共同构成了ELK(Elasticsearch、Logstash、Kibana)栈。对于中文处理,分词器...

    Elasticsearch的JAVA操作工具类,包括增删改查的封装

    Elasticsearch是一个强大的分布式搜索引擎,广泛应用于大数据分析和实时数据检索。在Java环境中,与Elasticsearch进行交互通常会使用官方提供的Java REST客户端。本文将详细介绍如何构建一个封装了基本增删改查功能...

    Elasticsearch 8.1.2 Linux版本

    2. **配置环境变量**:将Elasticsearch的bin目录添加到PATH环境变量中,以便于执行命令。 3. **修改配置文件**:主要修改`elasticsearch.yml`,包括设置节点名称、集群名称、数据路径、内存分配等。 4. **启动服务...

    Java操作ElasticSearch工具类【支持5.0+以上所有版本】

    -- 添加字段需要的JAR --> <!-- https://mvnrepository.com/artifact/org.elasticsearch.client/transport --> <groupId>org.elasticsearch.client <artifactId>transport <version>5.4.2 <!--...

    ElasticSearch入门到精通(基于ELK技术栈ElasticSearch7.8.版本).rar

    在 SpringBoot 应用中集成 Elasticsearch,需要添加相应依赖,并配置 Elasticsearch 的连接信息。Spring Data Elasticsearch 提供了易于使用的 API 和 Repository 模式,简化了数据操作。 **6. Kibana 与可视化** ...

Global site tag (gtag.js) - Google Analytics