es-head插件插入查询以及条件查询(五)

news/2024/11/8 23:56:02/

es-head插件插入查询以及条件查询

1.es-head插件页面介绍

页面详细介绍
在这里插入图片描述

2.es-head查询语句

2.1.查询索引中的全部数据

curl命令交互,采用GET请求
语法格式: curl -XGET es地址:9200/索引名/_search?pretty

[root@elaticsearch ~]# curl -XGET 192.168.81.210:9200/testinfo/_search?pretty
复制代码

在这里插入图片描述

es-head插件查询索引中的全部数据
在查询的框中填写http://192.168.81.210:9200/testinfo/,填写es地址和查询的索引
_search表示查询索引中的所有数据,类型选择GET,最后点击提交请求
在这里插入图片描述

2.2.查询一条数据

curl交互式查询
语法格式:curl -XGET es地址:prot/索引/类型/id?pretty

[root@elaticsearch ~]# curl -XGET 192.168.81.210:9200/testinfo/user/1?pretty
复制代码

es-head查询
地址:http://192.168.81.210:9200/
查询的数据:testinfo/user/3?pretty
类型:GET
在这里插入图片描述

3.es-head插入数据

3.1.插入一条数据

curl交互式插入
curl -XPUT ‘192.168.81.240:9200/testinfo/user/3?pretty’ -H 'COntent-Type:

application/json' -d'
{"first_name" : "xiao","last_name" : "ming","age" : 99,"about" : "I like linux", "interests": [ "sports", "music" ]
}'
复制代码

es-head插入

es地址:http://192.168.81.210:9200/			
索引:testinfo/user/3?pretty		PUT类型
{"first_name" : "xiao","last_name" : "ming","age" : 99,"about" : "I like linux", "interests": [ "sports", "music" ]
}
复制代码

在这里插入图片描述

3.2.查看数据是否插入

点击数据浏览一栏,索引选择testinfo

在这里插入图片描述

数据浏览这里以_下划线开头的表示es内置字段,无法进行修改数据
每点击一条数据都会有json格式的显示

在这里插入图片描述

4.es-head数据浏览查询数据

查询一个first_name包含jiang且age为99的数据

点击数据浏览,在左侧选好索引库
县级age的三角即可弹出输入框,在里面写好99,在点击first_name三角弹出输入框,在里面写好jiang即可
在这里插入图片描述

5.es-head基本查询实现复合查询

5.1.查询age范围70-100之间的数据

第二列表示字段,选择age,第三列选择查询类型,我们选择range,range表示范围,第四列第五列选择范围值
在这里插入图片描述

5.2.姓氏包含将且年龄在50-100的数据

在上一个基础之上增加一个first_name的字段
在这里插入图片描述

这里可以选择输出为什么类型的格式,有table、json、csv
在这里插入图片描述

6.es-head随机主机和id

我们实际生产环境中经常需要把mysql的数据导到es集群中,实现大数据分析,但是由于每个索引库都有一个系统生成的id,显然和mysql中的会冲突,这时我们可以在增加一个id列,填写mysql对应的id号,然后索引库中的系统id可以让其自动生成并设置成主键就能完美解决这个问题了
最终的思路就是:系统生成的id号做成主键让系统随机生产,再增加一列作为id,存放mysql系统之前的id号

6.1.创建一个带有系统id和自己定义id的索引库并写入数据

创建一个linuxbook的索引库,类型为book

写入一个数据,id为1,书名称为nginx,书价格为35元,书的页数为206页,书分类为web的数据
[root@elaticsearch ~]# curl -XPOST '127.0.0.1:9200/linuxbook/book?pretty' -H 'Content-Type: application/json' -d '{
"id": 1,
"book_name": "nginx",
"book_jg": "35¥",
"book_ys": "206",
"book_group": "web"
}'
{"_index" : "linuxbook","_type" : "book","_id" : "6MfqqXYB46SAjukOX_Wm","_version" : 1,"result" : "created","_shards" : {"total" : 2,"successful" : 1,"failed" : 0},"_seq_no" : 0,"_primary_term" : 1
}复制代码

可以看到新增加了一个索引库

6.2.查看我们写入的数据

点击数据浏览—会看到多了个索引,找到我们的linuxbook索引—查看数据
会看到既有随机生产的_id也有我们新增的id
在这里插入图片描述

再次插入了几条数据

在这里插入图片描述

也可以根据条件去搜索

在这里插入图片描述

7.删除索引库

慎用索引库,要删除索引库建议在浏览器页面删除,会有提示

7.1.命令行删除索引库

我们首先创建一个测试库

[root@elaticsearch ~]# curl -XPOST '127.0.0.1:9200/linuxaaa/book?pretty' -H 'Content-Type: application/json' -d '{
"id": 2,
"book_name": "mysql",
"book_jg": "70¥",
"book_ys": "709",
"book_group": "db"
}'
复制代码

在这里插入图片描述

删除索引库

[root@elaticsearch ~]# curl -XDELETE '127.0.0.1:9200/linuxaaa?pretty'
{"acknowledged" : true
}复制代码

删除成功

在这里插入图片描述

7.2.浏览器删除索引库

先创建一个索引库

[root@elaticsearch ~]# curl -XPOST '127.0.0.1:9200/linuxaaa/book?pretty' -H 'Content-Type: application/json' -d '{
"id": 2,
"book_name": "mysql",
"book_jg": "70¥",
"book_ys": "709",
"book_group": "db"
}'
复制代码

在这里插入图片描述

删除索引库

1)点击动作—删除
在这里插入图片描述

2)在弹出的框中输入删除
在这里插入图片描述

3)删除成功
在这里插入图片描述

成功删除
在这里插入图片描述

8.用head地址访问

本章操作都是用谷歌的head插件去连接的es服务器,我们用服务器中部署的head访问一次
服务器中安装并启动head

[root@elaticsearch data]# tar xf elasticsearch-head.tar.gz 
[root@elaticsearch data]# cd elasticsearch-head
[root@elaticsearch elasticsearch-head]# npm install
npm WARN elasticsearch-head@0.0.0 license should be a valid SPDX license expression
npm WARN optional SKIPPING OPTIONAL DEPENDENCY: fsevents@1.2.13 (node_modules/fsevents):
npm WARN notsup SKIPPING OPTIONAL DEPENDENCY: Unsupported platform for fsevents@1.2.13: wanted {"os":"darwin","arch":"any"} (current: {"os":"linux","arch":"x64"})up to date in 11.943s?─────────────────────────────────────────────────────────────────?                                                                        New minor version of npm available! 6.9.0  6.14.10          Changelog: https://github.com/npm/cli/releases/tag/v6.14.10                   Run npm install -g npm to update!                                                                                 ?─────────────────────────────────────────────────────────────────?[root@elaticsearch elasticsearch-head]# npm run start &
[1] 87691
[root@elaticsearch elasticsearch-head]# 
> elasticsearch-head@0.0.0 start /data/elasticsearch-head
> grunt serverRunning "connect:server" (connect) task
Waiting forever...
Started connect web server on http://localhost:9100[root@elaticsearch elasticsearch-head]# 
[root@elaticsearch elasticsearch-head]# 
[root@elaticsearch elasticsearch-head]# 
[root@elaticsearch elasticsearch-head]# netstat -lnpt | grep 9100
tcp        0      0 0.0.0.0:9100            0.0.0.0:*               LISTEN      87702/grunt        
复制代码

源码附件已经打包好上传到百度云了,大家自行下载即可~

链接: https://pan.baidu.com/s/14G-bpVthImHD4eosZUNSFA?pwd=yu27
提取码: yu27
百度云链接不稳定,随时可能会失效,大家抓紧保存哈。

如果百度云链接失效了的话,请留言告诉我,我看到后会及时更新~

开源地址

码云地址:
http://github.crmeb.net/u/defu

Github 地址:
http://github.crmeb.net/u/defu

作者:jiangxl
链接:https://juejin.cn/post/7130049525250523173


http://www.ppmy.cn/news/35933.html

相关文章

模拟集成电路设计:Bandgap电路设计及版图实现

模拟集成电路设计 Bandgap电路设计及版图实现 一、目的: 1、熟悉模拟集成电路设计的基本流程,实现Bandgap电路设计; 2、熟悉Linux系统及Cadence Virtuoso icfb设计、仿真软件的使用方法。 二、原理: 1、设计目标:…

Unity --- Transform类

1.一个很有意思的事实是Transform类不仅用来管理游戏物体的位置缩放旋转,还用来管理游戏物体的父物体与子物体之间的关系 当游戏物体A的trasnform类a是游戏物体B的transform类b的父类的话,游戏物体A就是游戏物体B的父物体 2.如何访问脚本当前挂载的游戏…

Docker学习记录

阅读前请看一下:我是一个热衷于记录的人,每次写博客会反复研读,尽量不断提升博客质量。文章设置为仅粉丝可见,是因为写博客确实花了不少精力。希望互相进步谢谢!! 文章目录阅读前请看一下:我是一…

【小杨带你玩转C语言】(入门篇)初识C语言(下)

本章目录 每篇前言1.导语 2.目标 3.知识点 一,常见关键字       1,认识关键字       2,关键字分类           2.1,数据类型关键字             2.1.1,基本数据类型关键字             2.…

利用Rust与Flutter开发一款小工具

1.起因 起因是年前看到了一篇Rust iOS & Android|未入门也能用来造轮子?的文章,作者使用Rust做了个实时查看埋点的工具。其中作者的一段话给了我启发: 无论是 LookinServer 、 Flipper 等 Debug 利器,还是 Flutt…

【深度强化学习】(5) DDPG 模型解析,附Pytorch完整代码

大家好,今天和各位分享一下深度确定性策略梯度算法 (Deterministic Policy Gradient,DDPG)。并基于 OpenAI 的 gym 环境完成一个小游戏。完整代码在我的 GitHub 中获得: https://github.com/LiSir-HIT/Reinforcement-Learning/tree/main/Mod…

Python是不是被严重高估了?

Python起源一种shell的脚本语言 ,而现在已经发展成最通用的语言之一了,TIOBE指数的数据显示,Python是目前世界上最受欢迎的编程语言。 Python之所以这么受欢迎有很多原因。从Web开发到物联网编程再到AI等各个方面都能用到它。另外Python代码…

解析vue中的process.env

一、介绍 1、process process是 nodejs 下的一个全局变量,它存储着 nodejs 中进程有关的信息。 2、process.env env 是 environment 的简称,process.env属性返回一个包含用户环境的对象。 3、dotenv Dotenv 是一个零依赖的模块,它能将环境变…