ES[7.6.x]学习笔记(三)新建索引
与ES的交互方式
与es的交互方式采用http的请求方式,请求的格式如下:
curl -X<VERB> '<PROTOCOL>://<HOST>:<PORT>/<PATH>?<QUERY_STRING>' -d '<BODY>'
- 是请求的方法,比如:GET、POST、DELETE、PUT等。
- 协议:http或者https。
- 主机地址。
- 端口
- API的路径。比如查看集群状态:
/_cluster/stats
。 - <QUERY_STRING>参数。比如:?pretty,打印出格式化以后的Json。
- 请求的内容。比如:添加索引时的数据。
创建索引
es创建索引的请求方式如下:
PUT /<index>
- 请求的方法用
PUT
。 - /后面直接跟索引的名称即可。
- 索引的设置和字段都放在Body中。
比如我们创建一个名字叫组织机构
的索引,这个索引只有两个字段,一个id,一个name。并且这个索引设置为2个分片,2个副本。
我们使用POSTMAN发送请求,如下:
http://192.168.73.130:9200/orgnization
请求的方法选择PUT
。然后在请求体(Body)中,写上索引的字段名称,索引的分片数和副本数,如下:
{
"settings":{
"number_of_shards":2,
"number_of_replicas":2
},
"mappings":{
"properties":{
"id":{
"type":"long"
},
"name":{
"type":"text"
}
}
}
}
我们观察一下,请求体中分为两个部分:settings
和mappings
。在settings
中,我们设置了分片数和副本数。
number_of_shards
:分片的数量;number_of_replicas
:副本的数量;
在mappings
中,我们设置索引的字段,在这里,我们只设置了id和name,id的映射类型是long,name的映射类型是text。这些类型我们会在后续为大家介绍。
请求体写完后,我们点击发送,es返回的结果如下:
{
"acknowledged": true,
"shards_acknowledged": true,
"index": "orgnization"
}
说明索引创建成功,索引的名字正是我们在请求中设置的orgnization
。
然后,我们通过elasticsearch-head
插件观察一下刚才创建的索引,如图:
我们可以看到索引orgnization
已经创建好了,它有2个分片,分别是0和1,并且每个分片都是两个副本。如果我们仔细观察这个图,可以看出node-130
节点中的0分片,和node-132
节点中的1分片,它们的边框是加粗的,这说明它们是主节点,而边框没有加粗的节点是从节点,也就是我们说的副本节点。
查看索引
如果我们要查看一个索引的设置,可以通过如下请求方式:
GET /<index>
在我们的例子中,查看orgnization
索引的设置,我们在POSTMAN中发送如下的请求:
我们可以看到索引的具体设置,比如:mapping的设置,分片和副本的设置。这些和我们创建索引时候的设置是一样的。
修改索引
索引一旦创建,我们是无法修改里边的内容的,不如说修改索引字段的名称。但是我们是可以向索引中添加其他字段的,添加字段的方式如下:
PUT /<index>/_mapping
然后在我们的请求体中,写好新添加的字段。比如,在我们的例子当中,新添加一个type字段,它的类型我们定义为long,请求如下:
http://192.168.73.130:9200/orgnization/_mapping
请求类型要改为PUT
,请求体如下:
{
"properties": {
"type": {
"type": "long"
}
}
}
我们点击发送,返回的结果如图所示:
添加索引字段成功,我们再使用GET
查看一下索引,如图:
我们可以成功的查询到新添加的索引字段了。
删除索引
如果我们要删除一个索引,请求方式如下:
DELETE /<index>
假如我们要删除刚才创建的orgnization
索引,我们只要把请求的方法改成DELETE
,然后访问我们索引就可以,
http://192.168.73.130:9200/orgnization
关闭索引
如果索引被关闭,那么关于这个索引的所有读写操作都会被阻断。索引的关闭也很简单,请求方式如下:
POST /<index>/_close
在我们的例子中,如果要关闭索引,降请求方法改成POST
,然后发送如下请求:
http://192.168.73.130:9200/orgnization/_close
打开索引
与关闭索引相对应的是打开索引,请求方式如下:
POST /<index>/_open
在我们的例子中,如果要打开索引,降请求方法改成POST
,然后发送如下请求:
http://192.168.73.130:9200/orgnization/_open
冻结索引
冻结索引和关闭索引类似,关闭索引是既不能读,也不能写。而冻结索引是可以读,但是不能写。冻结索引的请求方式如下:
POST /<index>/_freeze
对应我们的例子当中:
http://192.168.73.130:9200/orgnization/_freeze
解冻索引
与冻结索引对应的是解冻索引,方式如下:
POST /<index>/_unfreeze
对应我们的例子:
http://192.168.73.130:9200/orgnization/_unfreeze
ES[7.6.x]学习笔记(三)新建索引的更多相关文章
- Oracle学习笔记三 SQL命令
SQL简介 SQL 支持下列类别的命令: 1.数据定义语言(DDL) 2.数据操纵语言(DML) 3.事务控制语言(TCL) 4.数据控制语言(DCL)
- [Firefly引擎][学习笔记三][已完结]所需模块封装
原地址:http://www.9miao.com/question-15-54671.html 学习笔记一传送门学习笔记二传送门 学习笔记三导读: 笔记三主要就是各个模块的封装了,这里贴 ...
- JSP学习笔记(三):简单的Tomcat Web服务器
注意:每次对Tomcat配置文件进行修改后,必须重启Tomcat 在E盘的DATA文件夹中创建TomcatDemo文件夹,并将Tomcat安装路径下的webapps/ROOT中的WEB-INF文件夹复 ...
- java之jvm学习笔记三(Class文件检验器)
java之jvm学习笔记三(Class文件检验器) 前面的学习我们知道了class文件被类装载器所装载,但是在装载class文件之前或之后,class文件实际上还需要被校验,这就是今天的学习主题,cl ...
- VSTO学习笔记(三) 开发Office 2010 64位COM加载项
原文:VSTO学习笔记(三) 开发Office 2010 64位COM加载项 一.加载项简介 Office提供了多种用于扩展Office应用程序功能的模式,常见的有: 1.Office 自动化程序(A ...
- Java IO学习笔记三
Java IO学习笔记三 在整个IO包中,实际上就是分为字节流和字符流,但是除了这两个流之外,还存在了一组字节流-字符流的转换类. OutputStreamWriter:是Writer的子类,将输出的 ...
- NumPy学习笔记 三 股票价格
NumPy学习笔记 三 股票价格 <NumPy学习笔记>系列将记录学习NumPy过程中的动手笔记,前期的参考书是<Python数据分析基础教程 NumPy学习指南>第二版.&l ...
- Learning ROS for Robotics Programming Second Edition学习笔记(三) 补充 hector_slam
中文译著已经出版,详情请参考:http://blog.csdn.net/ZhangRelay/article/category/6506865 Learning ROS for Robotics Pr ...
- Learning ROS for Robotics Programming Second Edition学习笔记(三) indigo rplidar rviz slam
中文译著已经出版,详情请参考:http://blog.csdn.net/ZhangRelay/article/category/6506865 Learning ROS for Robotics Pr ...
- Typescript 学习笔记三:函数
中文网:https://www.tslang.cn/ 官网:http://www.typescriptlang.org/ 目录: Typescript 学习笔记一:介绍.安装.编译 Typescrip ...
随机推荐
- redis吊锤面试官,这篇足够了!
原理篇 redis 时单线程的为什么还能那么快? 数据都在内存中,运算都是内存级别的运算. redis既然是单线程的为什么能处理那么多的并发数? 多路复用,操作系统时间轮训epoll 函数作为选择器, ...
- Mac word文档的消失问题以及解决方案
最近用mac电脑上的Microsoft Word写文档时,出现一个很奇怪的现象:明明我已经保存了文档到某个目录下,但是当我退出Word后,准备去保存目录找文档时发现文档消失了,前一秒还在!!! 通过各 ...
- css过渡和2d详解及案例
css过渡和2d详解及案例(案例在下方,不要着急) 本文重点: 1.在2D变化使用过程中,有些需求需要两种或两种以上的变化同时使用, 值得注意的是尽量把位移变化放在最前面,把其他变化放在最后面,属性值 ...
- 实验七 MySQL语言结构
实验七 MySQL语言结构 一. 实验内容: 1. 常量的使用 2. 变量的使用 3. 运算符的使用 4. 系统函数的使用 二. 实验项目:员工管理数据库 用于企业管理的员工管理数据库,数据库名为 ...
- 通过jsDelivr + github 搭建一个简易图床
应用场景: 在大型项目里需要很多图片时,不会直接把图片存储在项目文件夹里,也不推荐直接用数据库存储,而是用第三方存储,cdn,也可以自己搭个存储图片的服务器,等等方式,如果时自己练练手,做做博客,写写 ...
- Java 程序该怎么优化?(技巧篇)
搬砖者:为什么程序总是那么慢?它现在到底在干什么?时间都花到哪里去了? 面试官:简单谈谈 Java 程序性能优化? 1. 字符串处理优化,乃优化之源. 研发过程中,String 的 API 用的应该是 ...
- MyBatis(三):核心配置文件的重要配置
本文是按照狂神说的教学视频学习的笔记,强力推荐,教学深入浅出1便就懂!b站搜索狂神说即可 https://space.bilibili.com/95256449?spm_id_from=333.788 ...
- javascript入门 之 ztree(七 结点的查询)
<!DOCTYPE html> <HTML> <HEAD> <meta http-equiv="content-type" content ...
- Dijkstra学习总结
啥叫堆 可以看一下这个 https://www.cnblogs.com/xiugeng/p/9645972.html#_label0普通Dijkstra可以看一下 https://blog.csdn. ...
- 【python实现卷积神经网络】批量归一化层实现
代码来源:https://github.com/eriklindernoren/ML-From-Scratch 卷积神经网络中卷积层Conv2D(带stride.padding)的具体实现:https ...