目录
一、ES介绍及安装
二、Elasticsearch-head
1、介绍
elasticsearch-head是一种便捷查询操作elasticsearch库的可视化工具,具备集群管理、增删查改等功能。
2、二者联系说明
1)elasticsearch-head是elasticsearch的便捷操作工具。
关系类比:
elasticsearch | 数据库,类似于mysql等数据库 |
---|---|
elasticsearch-head | 数据库的便捷操作工具,类似于navicat等。 |
2)需要先运行elasticsearch,才能运行elasticsearch-head。
三、Elasticsearch-head安装
1、安装环境
elasticsearch-head插件安装要求在Node.js环境下进行,要求本机先安装node.js、npm和grunt。
elasticsearch-head安装步骤:
将GitHub上面的elasticsearch-head项目拷贝到本地
git clone git://github.com/mobz/elasticsearch-head.git
2、运行安装
1)在elasticsearch-head目录下执行cmd,进入elasticsearch-head目录
cd elasticsearch-head
2)执行安装
npm install
3)启动插件
npm run start
4)在浏览器中输入localhost:9100,输入ES库的连接地址,显示相应集群信息
五、ES-head操作ES的增删查改
1、索引
ES是文档型数据库,一条数据就是一个文档,索引相当文档的目录,通过索引可以快速搜索到对应文档。
1.1、新建索引
等价于新建数据库,其中分区默认是5,备份默认是1,可以根据实际情况进行调整。
1)分片
当文档较大时,受磁盘、内存等方面的限制,可以将数据划分为多个分片部署到多个服务器上,ES将查询结果组合后返回给到用户,内部分片对用户透明。
2)副本
为了提高容错性,ES支持分片精确复制副本,当分片不可用时,ES使用其对应的副本,分片和副本必须分布在不同节点上,保证当某个节点宕机时可以其他分布在其他节点的副本。
路径:新建索引-》创建成功
1.2、删除索引
强调:
1)索引一旦删除后将无法恢复。
2)索引一旦删除以后,包括索引下的类型和全部数据均会被删除。
3)请谨慎使用删除功能。
路径:要删除的索引-》动作-》删除-》输入删除指令-》确定
删除成功:返回{“acknowledged”:true},表明已经删除成功。
2、类型
创建索引后,初始化为非结构类型,需要进行结构化,即创建类型,等价于创建数据库表
2.1、创建类型
类型创建使用post指令,指向链接
http://localhost:9200/test/_mappings。
必须强烈注意链接地址,索引中通过mappings管理类型,索引名称后必须添加_mappings,不然会报错No handler found for uri [/chatbotinfo] and method [POST]
其中bot为数据库表名,properties为字段管理的结构化字段,id/name/description是字段名,type为字段的类型:
字段类型信息说明参考地址:https://blog.csdn.net/chengyuqiang/article/details/79048800
"bot": {
"properties": {
"description": {
"type": "text"
},
"id": {
"type": "integer"
},
"name": {
"type": "text"
}
}
}
成功标志:{“acknowledged”:true}
2.2、查看类型
1)创建类型成功后可以通过索引信息查看,路径:索引名称-》信息-》索引信息
2)也可以通过左上角数据浏览-》类型进行查看
3)也可以在复合查询中向链接发送GET请求:
查看全部类型:http://localhost:9200/test/_mappings
指定类型查看链接:http://localhost:9200/test/_mappings/bot/
2.3、修改类型
目前仅支持添加新的字段,不支持修改已有字段。
类型创建使用post指令,指向链接
http://localhost:9200/test/_mappings/bot
其中bot为数据库表名。
properties为字段管理的结构化字段,description是想要新添加的字段名,type为字段的类型:
{
"properties":{
"description":{
"type":"string"
}
}
}
2.4、删除类型
暂时不支持类型删除。
3、文档
3.1、创建文档
即插入数据。
插入数据使用post指令,指向链接
http://localhost:9200/test/bot。
必须强烈注意链接地址,其中test为数据库名,bot为数据库表名,字段类型必须遵循创建时候的类型:
{
"id":1,
"name":"火车票预定",
"description":"一款能快速预定火车票的程序"
}
创建成功后可在数据浏览中查看:
3.2、删除文档
即删除数据,使用post指令,指向链接
http://localhost:9200/test/bot/1。
必须强烈注意链接地址,其中test为数据库名,bot为数据库表名,1为删除文档的id,ES-HEAD支持通过文档不同字段的值内容进行数据检索并删除。
需要注意的是,如果文档字段存在数据一致的情况,每次只删除一条文档数据。