ElasticSearch-Mapping类型映射-增删改查
https://www.elastic.co/guide/en/elasticsearch/reference/6.8/mapping.html
7.x版本后默认都是_doc类型
增加Mapping映射
先说一个特殊的字段_all:
https://www.elastic.co/guide/en/elasticsearch/reference/6.8/mapping-all-field.html#mapping-all-field
_all 字段是一个特殊的包罗万象的字段,它将所有其他字段的值组合为一个字符串,并使用空格作为分隔符,然后对它进行分析和索引,
但_all字段不存储再数据库中。这意味着它可以被搜索,但不能被检索。
_all 字段允许您在文档中搜索值,而无需知道哪个字段包含该值。这使得它在开始使用新数据集时成为一个有用的选项
_all字段是一个text类型的字段,所以text类型有啥参数,它也能用!
_all字段会消耗一定的CPU运转和使用更多的磁盘空间,所以默认情况下,该字段是关闭的!
但是在6.0+版本后,请使用copy_to代替:
https://www.elastic.co/guide/en/elasticsearch/reference/6.8/copy-to.html#copy-to
**方法一:**
PUT /库名/_mappings/类型名
PUT /articles/_mappings/article
{
// 6.0后没有_all字段
/*"_all": {
"enabled": true,
"analyzer": "ik_max_word"
},*/
"properties": {
"all_info": {
"type": "text",
"analyzer": "ik_max_word",
},
"title": {
"type": "text", //字段的类型
"analyzer": "ik_max_word", // 指定分词器
//"include_in_all": true, # 因为没有_all字段,所以要这个参数也被移除了,因为完全没必要,copy_to是你自己控制的。
"copy_to": "all_info" // 代替_all,就是将这个字段的内容复制到指定字段中
"boost": 2 // 表示相关性分数乘以2倍
},
"content": {
"type": "text",
"analyzer": "ik_max_word",
},
"article_id": {
"type": "long",
},
"user_id": {
"type": "long",
},
"status": {
"type": "integer",
},
"create_time": {
"type": "date",
}
}
}
**方法二:**
PUT /库名
PUT http://127.0.0.1:9200/articles/
{
"mappings": {
"_doc": {
"properties": {
"article_id": {
"type": "long"
},
"user_id": {
"type": "long"
},
"title": {
"type": "text"
}
}
}
}
}
获取Mapping
获取某个索引库下的所有Mapping
*GET http://127.0.0.1:9200/<索引库名>/_mappings*
例:
GET http://127.0.0.1:9200/news/_mappings
获取索引库中指定类型名的Mapping
*GET http://127.0.0.1:9200/<索引库名>/_mapping/<类型名>*
例:
GET http://127.0.0.1:9200/news/_mapping/article
修改、增加Mapping中的字段
Mapping不能修改字段。只能允许增加。
增加:
直接用上面添加Mapping映射的方法来增加字段就可以了,语法是一样的。
修改:
es不支持,如果真要修改字段的属性,只能先添加新的Mapping,然后将旧的数据导出来再导入给新的Mapping。
添加新的索引库和Mapping映射
将源库中的数据导入到新的索引库中。(_reindex)
https://www.elastic.co/guide/en/elasticsearch/reference/6.8/docs-reindex.html
curl -X POST 127.0.0.1:9200/_reindex -H 'Content-Type:application/json' -d '
{
"source": {
"index": "articles" // 指定源索引库
},
"dest": {
"index": "articles_v2" // 新索引库
}
}
'
ElasticSearch-Mapping类型映射-增删改查的更多相关文章
- 第三课作业——set类型、sorted set类型的增删改查,redis的事务
第三课时作业 静哥 by 2016.2.23~2016.3.6 [作业描述] 1.总结什么是set以及什么是sorted set,并完成对set以及sorted set的增删改查(查需要至少4种方 ...
- java操作elasticsearch实现基本的增删改查操作
一.在进行java操作elasticsearch之前,请确认好集群的名称及对应的ES节点ip和端口 1.查看ES的集群名称 #进入elasticsearch.yml配置文件/opt/elasticse ...
- elasticsearch java索引的增删改查
1.创建索引并插入数据 Map<String, Object> json = new HashMap<String, Object>(); json.put("use ...
- Es图形化软件使用之ElasticSearch-head、Kibana,Elasticsearch之-倒排索引操作、映射管理、文档增删改查
今日内容概要 ElasticSearch之-ElasticSearch-head ElasticSearch之-安装Kibana Elasticsearch之-倒排索引 Elasticsearch之- ...
- Dapper逆天入门~强类型,动态类型,多映射,多返回值,增删改查+存储过程+事物案例演示
Dapper的牛逼就不扯蛋了,答应群友做个入门Demo的,现有园友需要,那么公开分享一下: 完整Demo:http://pan.baidu.com/s/1i3TcEzj 注 意 事 项:http:// ...
- Django——6 模型基础ORM 数据库连接配置 模型的创建与映射 数据的增删改查
Django Django的ORM简介 数据库连接配置 模型的创建与映射 数据库的增删改查 增数据 查数据及补充 改数据 删数据 Django的ORM系统分析 ORM概念:对象关系映射(Objec ...
- Mybatis框架基于映射文件和配置文件的方式,实现增删改查,可以打印日志信息
首先在lib下导入: 与打印日志信息有关的架包 log4j-1.2.16.jar mybatis架包:mybatis-3.1.1.jar 连接数据库的架包:mysql-connector-java-5 ...
- MyBatis学习(二)、SQL语句映射文件(2)增删改查、参数、缓存
二.SQL语句映射文件(2)增删改查.参数.缓存 2.2 select 一个select 元素非常简单.例如: <!-- 查询学生,根据id --> <select id=" ...
- MyBatis学习 之 二、SQL语句映射文件(2)增删改查、参数、缓存
目录(?)[-] 二SQL语句映射文件2增删改查参数缓存 select insert updatedelete sql parameters 基本类型参数 Java实体类型参数 Map参数 多参数的实 ...
- Elasticsearch 单模式下API的增删改查操作
<pre name="code" class="html">Elasticsearch 单模式下API的增删改查操作 http://192.168. ...
随机推荐
- Linux 安装 helm
下载helm压缩包,地址 https://github.com/helm/helm/releases/tag/v3.10.1 选择适合自己操作系统的包 上传解压安装 1 root@calico-m ...
- Apollo2.1.0+Springboot使用OpenApI
依赖管理 <!-- bootstrap最高级启动配置读取 --> <dependency> <groupId>org.springframework.cloud&l ...
- Docker 日志自动轮转和清理配置
设置 Docker 日志大小和自动删除旧日志:通过配置 Docker 使用 json-file 日志驱动,同时使用 logrotate 工具,可以设置日志的最大大小(例如100MB),并在达到该大小时 ...
- Python如何在日志中隐藏明文密码
Python如何在日志中隐藏明文密码 前言 在项目开发中,有的时候会遇到一些安全需求,用以提升程序整体的安全性,提高外来非法攻击的门槛,而在日志中隐藏明文密码打印便是最典型的安全需求之一. 在Pyth ...
- 分布式应用开发的核心技术系列之——基于TCP/IP的原始消息设计
本文由葡萄城技术团队原创并首发.转载请注明出处:葡萄城官网,葡萄城为开发者提供专业的开发工具.解决方案和服务,赋能开发者. 前言 本文的内容主要围绕以下几个部分: TCP/IP的简单介绍. 消息的介绍 ...
- HTTP协议中四种交互方法学习
一.Get Get用于获取信息,注意,他只是获取.查询数据,也就是说它不会修改服务器上的数据.而根据HTTP规范, 获取信息的过程是安全和幂等的.GET请求的数据会附在URL之后,以"?&q ...
- IL编制器 --- Fody
介绍 这个项目的名称"Fody"来源于属于织巢鸟科(Ploceidae)的小鸟(Fody),本身意义为编织. 核心Fody引擎的代码库地址 :https://github.com/ ...
- 9.26 多校联测 Day 5 总结
虽然比赛还没打完,但是因为又罚坐了,提前把总结写出来吧() 看 T1,构造了一会发现大概就是把 b 序列放在 a 的最后面,前面位置填几个数. 先码了暴力,再码正解.但求出来的方案显然不是同一种/fn ...
- CF223B Two Strings 题解
题目链接 题目分析 题目很短,只有两句话,可分析的不多,似乎难以入手,我们不妨换一个思路转化一下题意,改为:是否对于 \(s\) 中的每一个字符,总有一个等于 \(t\) 的 \(s\) 的子序列覆盖 ...
- STM32 定时器时钟配置技巧
众所周知 STM32 的时钟配置比较复杂,而定时器的时钟配置更是 '奇葩'. 如下图(截图自STM32F4编程手册)APB的预分频器分频系数如果不为1,则定时器的时钟就倍频了反而. 配置技巧 下面以S ...