Elasticsearch-head插件使用小结
1、ElasticSearch-head是什么?
ElasticSearch是一个基于Lucene的搜索服务器。它提供了一个分布式多用户能力的全文搜索引擎,基于RESTful web接口。Elasticsearch是用Java开发的,并作为Apache许可条款下的开放源码发布,是当前流行的企业级搜索引擎。 -----百度百科
而ElasticSearch-head就是一款能连接ElasticSearch搜索引擎,并提供可视化的操作页面对ElasticSearch搜索引擎进行各种设置和数据检索功能的管理插件,如在head插件页面编写RESTful接口风格的请求,就可以对ElasticSearch中的数据进行增删改查、创建或者删除索引等操作。类似于使用navicat工具连接MySQL这种关系型数据库,对数据库做操作。
对于如何安装ElasticSearch和ElasticSearch-head下面不做说明,百度下,网上有很多资料~
2、ElasticSearch-head页面介绍
2.1 head插件登陆和连接ElasticSearch
在登陆和访问head插件地址和ElasticSearch前需要事先在服务器上安装和配置好ElasticSearch以及head插件。安装完后,默认head插件的web端口为9100,ElasticSearch服务的端口为9200,使用浏览器访问head地址,如http://IP地址:9100/,推荐使用Chrome浏览器,head插件对Chrome浏览器兼容更佳。进入head页面后将ElasticSearch连接输入框中填写正确的ElasticSearch服务地址,如http://IP地址:9200/。访问后效果如下图:

2.2 head插件页面
概览页面:

上图为概览页面效果,简单说明下以上5个画了红框的地方
1:集群健康值。Elasticsearch 中其实有专门的衡量索引健康状况的标志,分为三个等级:
- green,绿色。这代表所有的主分片和副本分片都已分配。你的集群是 100% 可用的。
- yellow,黄色。所有的主分片已经分片了,但至少还有一个副本是缺失的。不会有数据丢失,所以搜索结果依然是完整的。不过,你的高可用性在某种程度上被弱化。如果更多的分片消失,你就会丢数据了。所以可把 yellow 想象成一个需要及时调查的警告。
- red,红色。至少一个主分片以及它的全部副本都在缺失中。这意味着你在缺少数据:搜索只能返回部分数据,而分配到这个分片上的写入请求会返回一个异常。
如果只有一台主机的话,其实索引的健康状况也是 yellow,所有上图显示为yellow。因为一台主机,集群没有其他的主机可以防止副本,所以说,这就是一个不健康的状态,因此集群也是十分有必要的。
2:表示在Elasticsearch已经创建的索引(index)。包含了索引的名称、索引的大小(size)、索引的数据量(docs),并且通过【信息】和【动作】可以查看索引信息或者给索引建别名。
3:表示Elasticsearch节点。上图中的带有感叹号的Unassigned表示未分配的节点,带有星号的表示是主节点,其节点名称叫:Hu9Suoy,并能查看节点信息。
4:表示索引分片,Elasticsearch数据就存储在这些分片中。
5:查看Elasticsearch相关的信息和刷新head插件。如查看Elasticsearch版本信息,如下图:

索引页面:
索引页面能看到当前Elasticsearch中已经创建的索引,这里的索引类似于传统关系型数据库中的一张张表,并且可以在该页面上新建索引。

数据浏览页面:
数据浏览页面能查看所有索引分片的数据

基本查询和复合查询页面:
这两个页面做数据检索,基本查询页面仅提供简单的查询并不能修改数据,复合查询页面提供编写RESTful接口风格的请求,来对Elasticsearch中的数据进行各种增删改查等操作请求,其页面分别如下:
基本查询页面

复合查询页面

3、基本查询
基本查询页面可以对数据进行简单的查询。
查询关键字有三种:分别是:must,should,must_not
- must子句:文档必须匹配must查询条件,相当于“=”;
- should子句:文档应该匹配should子句查询的一个或多个;
- must_not子句:文档不能匹配该查询条件,相当于“!=”;
如下图基本查询实例:

默认返回结果使用table展示,即表格形式,还有json、csv形式展示
其中检索条件有诸多,如下图:

通常term表示精确匹配,wildcard : 通配符匹配 prefix:前缀匹配,range区间查询,如使用wildcard查找带有“粤BN69”的数据:

其它的检索条件也可以尝试检索下
4、复合查询
复合查询页面提供编写RESTful接口风格的请求,使用json进行复杂的查询,也可发送put请求新增及更新索引,使用delete请求删除索引等等来对Elasticsearch中的数据或者索引进行各种增删改查等操作请求。
ES以RESTFul风格来命名API的, 其API的基本格式类似如下:

以http来决定请求的方法或者动作: 常用的有GET/PUT/POST/DELETE
4.1查询数据
比如我们查询st_face这个索引,通过索引类型face_info(这里的索引类型类似于mysql数据库中创建的索引),搜索分片属性为time的字段,如下图效果:

4.2插入数据
插入数据使用POST或者PUT方法,只是POST方法为自动生成id,而PUT方法需要指明id,如下图实例:
POST方法

PUT方法:

4.3修改数据

4.4删除数据
删除数据使用DELETE方法,实例如下:

注:
Head插件中编写json发送请求比较复杂和不方便, 可以使用postman或者python ElasticSearch模块提供的API等工具进行请求的发送,来实现对ElasticSearch的数据和索引进行增删改查。
5、Python ElasticSearch模块
Python Elasticsearch模块是Python的一个第三方模块库,需要手动安装,如果已经安装了pip工具,就可以直接通过命令:pip install elasticsearch一键安装。Elasticsearch API封装并提供了可操作Elasticsearch的几乎所有动作,包括常用的Elasticsearch数据的增删改查和索引操作。
以下是一些参考文档地址:
Elasticsearch官方API文档地址:
https://www.elastic.co/guide/en/elasticsearch/reference/current/search.html
Elasticsearch模块的使用:
https://www.cnblogs.com/xiao987334176/p/10130712.html
下面通过一个实例编写脚本,实现连接Elasticsearch,并批量向Elasticsearch数据库中的st_face索引中写入数据,在PyCharm中编辑如下代码:

执行完成后,在Elasticsearch中查看st_face索引中刚刚批量插入的数据,如下:

Elasticsearch-head插件使用小结的更多相关文章
- JQuery插件使用小结
JQuery插件使用小结
- ElasticSearch head 插件安装
head 客户端可以很方便在上面创建索引,类型,文档,还有查询,使用它管理elasticsearch 提高效率. 在安装head 客户端之前必须安装node.js 环境,因为它是用node.js 编写 ...
- Elasticsearch.安装插件(head)
Elasticsearch.安装插件(head) 环境: Linux 7.x jdk1.8 目录结构(跟目录多了两个文件) /resources ### 存放软件源 /u01/ ...
- Elasticsearch alias别名管理小结
Elasticsearch alias别名管理小结 By:授客 QQ:1033553122 建创测试数据 1 创建别名 2 移除别名 3 创建测试数据 4 批量操作 5 例1. 5 例2. 把多个索引 ...
- 监控Elasticsearch的插件【check_es_system】
监控Elasticsearch的插件推荐 强大的shell脚本 #!/bin/bash ####################################################### ...
- Elasticsearch之插件扩展
Elasticsearch之插件介绍及安装 Elasticsearch之head插件安装之后的浏览详解 Elasticsearch之kopf插件安装之后的浏览详解 Elasticsearch-2.4. ...
- ELK 学习笔记之 elasticsearch head插件安装
elasticsearch head插件安装: 准备工作: 安装nodejs和npm https://nodejs.org/en/download/ node-v6.11.2-linux-x64.ta ...
- Elasticsearch入门教程(一):Elasticsearch及插件安装
原文:Elasticsearch入门教程(一):Elasticsearch及插件安装 版权声明:本文为博主原创文章,遵循CC 4.0 BY-SA版权协议,转载请附上原文出处链接和本声明. 本文链接:h ...
- chrome浏览器中安装以及使用Elasticsearch head 插件
一.安装Elasticsearch head 插件 下载安装包:https://github.com/liufengji/es-head/commit/121cdcb6d1b18656461e4889 ...
- Elasticsearch Head插件实践
简介 Elasticsearch是一个基于Lucene的搜索服务器.它提供了一个分布式多用户能力的全文搜索引擎,基于RESTful web接口.Elasticsearch是用Java开发的,并作为Ap ...
随机推荐
- 一组西门子S7 报文
03 00 00 16 11 E0 00 00 00 01 00 C1 02 10 00 C2 02 03 01 C0 01 0A(第一次握手报文) 03 00 00 16 11 D0 00 01 0 ...
- 为什么台湾人工智能可能抢输大陆?(XPU时代来临)
到了 2020 年,每 3 支手机,就会有一支内建有 AI 芯片. 但目前浮出水面的 AI 芯片新创,几乎都是大陆公司. 为什么台湾这回选择缺席? 「我听说 CPU.GPU,没有听过 NPU? 」11 ...
- mod_timer函数及其他定时器函数
当一个定时器已经被插入到内核动态定时器链表中后,我们还能够改动该定时器的expires值.函数mod_timer()实现这一点 改动注冊入计时器列表的handler的起动时间 int mod_time ...
- QT定时器的两种应用(QObject就有timerEvent事件,一种什么样的居心呢?)
QT中定时器的使用方法(1)重载timerEvent(QTimerEvent *)函数,然后再在类的构造函数中设置时间间隔 startTimer(50);//单位为毫秒(2)在类的构造函数中设定如 ...
- [LeetCode] Subsets [31]
题目 Given a set of distinct integers, S, return all possible subsets. Note: Elements in a subset must ...
- 简明Python3教程 15.异常
简介 当程序发生意外情况时则产生异常. 例如你需要读一个文件而这个文件并不存在会咋样?又或者是程序运行时你把它误删除了呢? 上述情形通过异常进行处理. 类似的,如果你的程序存在一些非法语句会发生什么呢 ...
- svm资料收集
向量点乘(内积)和叉乘(外积.向量积)概念及几何意义解读: https://blog.csdn.net/dcrmg/article/details/52416832 三角形余弦定理:https://z ...
- 伪随机数与采样(sampling)
计算机本身是无法产生真正的随机数的,但是可以根据一定的算法产生伪随机数(pseudo-random numbers).最古老最简单的莫过于 Linear congruential generator: ...
- [视频]mac系统下虚拟机parallels安装ubuntu 14.04视频教程
此文是http://www.mr-wu.cn/install-ubuntu-14-04-on-parallels-for-mac/这篇博文的补充,为整个ubuntu 14.04安装过程的视频录像. m ...
- Highcharts纯js图表库,以后可以跟客户说,你跟阿里云ECS用的图表库是同款
Highcharts是一款纯javascript编写的图表库,能够很简便的在Web网站或Web应用中添加交互性的图表,Highcharts目前支持直线图.曲线图.面积图.柱状图.饼图.散点图等多达18 ...