ES 创建mapping

mapping的写入与查看
首先创建一个索引:

curl -XPUT "http://erp2.es.kd1.pagoda.com.cn:80/erp_stock_index"
{"acknowledged":true}
现在只创建了一个索引,并没有设置mapping,查看一下索引mapping的内容:

curl -XGET "http://127.0.0.1:9200/productindex/_mapping?pretty"
{
"productindex" : {
"mappings" : { }
}
}
可以看到mapping为空,我们只创建了一个索引,并没有进行mapping配置,mapping自然为空。
下面给productindex这个索引加一个type,type name为product,并设置mapping:

curl -XPOST "http://127.0.0.1:9200/productindex/product/_mapping?pretty" -d '
{
"product": {
"properties": {
"title": {
"type": "string",
"store": "yes"
},
"description": {
"type": "string",
"index": "not_analyzed"
},
"price": {
"type": "double"
},
"onSale": {
"type": "boolean"
},
"type": {
"type": "integer"
},
"createDate": {
"type": "date"
}
}
}
}
'

{
"acknowledged" : true
}
上面的操作中,我们给productindex加了一个type,并写入了product的mapping信息,再次查看:

curl -XGET "http://127.0.0.1:9200/productindex/_mapping?pretty"
{
"productindex" : {
"mappings" : {
"product" : {
"properties" : {
"createDate" : {
"type" : "date",
"format" : "strict_date_optional_time||epoch_millis"
},
"description" : {
"type" : "string",
"index" : "not_analyzed"
},
"onSale" : {
"type" : "boolean"
},
"price" : {
"type" : "double"
},
"title" : {
"type" : "string",
"store" : true
},
"type" : {
"type" : "integer"
}
}
}
}
}
}
修改mapping
如果想给product新增一个字段,那么需要修改mapping,尝试一下:

curl -XPOST "http://127.0.0.1:9200/productindex/product/_mapping?pretty" -d '{
"product": {
"properties": {
"amount":{
"type":"integer"
}
}
}
}'
{
"acknowledged" : true
}
新增成功。
如果要修改一个字段的类型呢,比如onSale字段的类型为boolean,现在想要修改为string类型,尝试一下:

curl -XPOST "http://127.0.0.1:9200/productindex/product/_mapping?pretty" -d '{
"product": {
"properties": {
"onSale":{
"type":"string"
}
}
}
}'
返回错误:

{
"error" : {
"root_cause" : [ {
"type" : "illegal_argument_exception",
"reason" : "mapper [onSale] of different type, current_type [boolean], merged_type [string]"
} ],
"type" : "illegal_argument_exception",
"reason" : "mapper [onSale] of different type, current_type [boolean], merged_type [string]"
},
"status" : 400
}
为什么不能修改一个字段的type?原因是一个字段的类型修改以后,那么该字段的所有数据都需要重新索引。Elasticsearch底层使用的是lucene库,字段类型修改以后索引和搜索要涉及分词方式等操作,不允许修改类型在我看来是符合lucene机制的。

转载于:https://www.cnblogs.com/zeenzhou/p/11510138.html

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.mzph.cn/news/549525.shtml

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

关于C语言野指针的问题

typedef struct{int id;char username [6];} user;int main(void){user *userr;strncpy(userr->username, "hello", 3);strcat(userr->username, ""0");printf("userr->username%s."n", userr->username);return 0;} 便已…

简单 屏蔽 assert

简介 屏蔽 assert 如何实现 Makefile 中加 CFLAGS -DNDEBUG 或者 gcc -DNDEBUG 转载于:https://www.cnblogs.com/eat-too-much/p/11512524.html

多核分布式队列的实现:“偷”与“自私”的运用(1)

多核分布式队列的实现:"偷"与"自私"的运用 在讨论本文的正题前,不得不先说一些闲话,嫌哆嗦者可以跳过"前言"部分不读。1. 前言在发表了"老子是伟大的多核计算科学家" (链接:[…

近期刷题记录表

9月14日:   luogu P1627 [CQOI2009]中位数 题意:给出1~n的一个排列,统计该排列有多少个长度为奇数的连续子序列的中位数是b。中位数是指把所有元素从小到大排列后,位于中间的数。 题解:根据中位数的性质&#xff0c…

《性能测试从零开始--LoadRunner入门》读书笔记(四)

终于看完了澳网的赛事了,今天要把第五章的读书笔记完成,哈哈。 4.参数化 书中花了不少力气说明这方面的用法,可见参数化在整个脚本的制作过程中的重要性。在这个session开始的时候,书使用了不少的废话去说明白参数化的意义和参数化…

STM32CubeMX

博客:https://blog.csdn.net/wofreeo/article/details/88990192 https://blog.csdn.net/xuquanlin_1680/article/details/80499977 转载于:https://www.cnblogs.com/panda-w/p/11523405.html

我的QTP 9.5装不上去:a previos installation has not competed

解决方法: 1. Open the %TEMP% folder (in the Start -> Run dialog, type %TEMP% and click Enter).2. In this folder, search for a file named "Prereq_Mgr.HP_QuickTest_Professional_9.5.log". This file is created by the inst…

转 Git生成SSH

SSH keys SSH key 可以让你在你的电脑和Code服务器之间建立安全的加密连接。 先执行以下语句来判断是否已经存在本地公钥: cat ~/.ssh/id_rsa.pub 如果你看到一长串以 ssh-rsa或 ssh-dsa开头的字符串, 你可以跳过 ssh-keygen的步骤。 提示: 最好的情况是一个密码对应…

u boot 驱动完成

很久没有更新了,终于在年前完成了u-boot下无线网卡的驱动移植,其实驱动移植很简单,驱动里面大部分都是自己的逻辑,真正和系统相关的就是系统的一点点接口,只需要把这些一点点接口都替换掉就可以实现了,当然…

使用Git Flow进行版本控制

重置 # force reset $ git flow init -f 转载于:https://www.cnblogs.com/ww01/p/11527124.html

我的RSS我做主:My RSS

昨天晚上通过google reader 浏览自己的网站时发现,Rss输出的内容比较简单,没有我想输出内容,诸如“评论数”、“评论文章”,“永久链接”等等。修改wordpress RSS 输出函数话,每次更新更新wordpress又要重新改一次,比较…

luogu P3407 散步 二分答案

题目描述 一条道路上&#xff0c;位置点用整数A表示。 当A0时&#xff0c;有一个王宫。当A>0&#xff0c;就是离王宫的东边有A米&#xff0c;当A<0&#xff0c;就是离王宫的西边有A米。 道路上&#xff0c;有N个住宅从西向东用1-N来标号。每个住宅有一个人。住宅只会存在…

C# 视频监控系列(2):客户端——封装API

前言 本章主要是在C#封装的海康DVR客户端SDK 的代码上修改的&#xff0c;并参考《Hikvision 板卡网络开发包编程手册V4.7.pdf》补上更完整的注释&#xff0c;并且参照VC源码做了小部分修改。 参考 1. C#封装的海康DVR客户端SDK 系列 1. C# 视频监控系列&#xff08;1&…

java继承 、方法重写、重写toString方法

1.Java的继承&#xff0c;关键词Extends 1 package cn.mwf.oo;2 3 public class TextExtends {4 public static void main(String[] args) {5 Student s new Student("侠客小飞", 60, "计算机科学与技术");6 s.rest();7 s.st…

网络攻击与防御 实验1

做实验的截图 转载于:https://www.cnblogs.com/ma1998/p/11536582.html

ActiveRecord.JS 与 Google Gears

ActiveRecord是仿照Rails的ActiveRecord写的js orm框架&#xff0c; 我使用它操作gears 的sqlite数据库。看起来不错&#xff0c;但是文档比较恶心&#xff0c;我按照文档的操作ActiveRecord.define方法根本就不能用&#xff0c;去邮件列表里一看&#xff0c;有个老外和我一样的…

SQL注入原理-手工联合注入查询技术

实验报告记录 得到实验结果 转载于:https://www.cnblogs.com/ma1998/p/11536959.html

51CTO寄来的奖品

这两周都是天天上班面对着电脑,挺无聊的.不过幸好有51CTO与我相伴,一直都在关注51CTO的活动.最近我所在的项目组的老员工个个都新买了笔记本,之前他们所用的旧笔记本自然退还给公司了.呵呵,这样像我这样的新员工就有笔记本分配的了,虽然旧了些还是将就着用了.就这样,回到员工宿…

实验3 SQL注入原理-万能密码注入

实验目的 &#xff08;1&#xff09;理解【万能密码】的原理 &#xff08;2&#xff09;学习【万能密码】的使用 实验原理 一、访问目标网站 1.选择一个存在漏洞的论坛 http://192.168.1.3:8009 进入 2.输入用户名【admin】&#xff0c;密码【2‘ or 1】 转载于:https://www.cn…

忧伤的池塘

雨滴 和我出生以前一样&#xff0c; 雨水的气息里&#xff0c; 村庄安静下来。 天总是暗得很早&#xff0c; 晃动着木叶和漆黑的门。 没有人在村子里走动&#xff0c;黑暗的木条窗 正流淌进忧伤的池塘。转载于:https://blog.51cto.com/nuhuhu/133658