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


    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
    复制代码
    
    • 1
    • 2

    在这里插入图片描述

    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
    复制代码
    
    • 1
    • 2

    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" ]
    }'
    复制代码
    
    • 1
    • 2
    • 3
    • 4
    • 5
    • 6
    • 7
    • 8

    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" ]
    }
    复制代码
    
    • 1
    • 2
    • 3
    • 4
    • 5
    • 6
    • 7
    • 8
    • 9

    在这里插入图片描述

    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
    }
    
    复制代码
    
    • 1
    • 2
    • 3
    • 4
    • 5
    • 6
    • 7
    • 8
    • 9
    • 10
    • 11
    • 12
    • 13
    • 14
    • 15
    • 16
    • 17
    • 18
    • 19
    • 20
    • 21
    • 22
    • 23
    • 24

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

    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"
    }'
    复制代码
    
    • 1
    • 2
    • 3
    • 4
    • 5
    • 6
    • 7
    • 8

    在这里插入图片描述

    删除索引库

    [root@elaticsearch ~]# curl -XDELETE '127.0.0.1:9200/linuxaaa?pretty'
    {
      "acknowledged" : true
    }
    
    复制代码
    
    • 1
    • 2
    • 3
    • 4
    • 5
    • 6

    删除成功

    在这里插入图片描述

    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
    • 4
    • 5
    • 6
    • 7
    • 8

    在这里插入图片描述

    删除索引库

    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 server
    
    Running "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        
    复制代码
    
    • 1
    • 2
    • 3
    • 4
    • 5
    • 6
    • 7
    • 8
    • 9
    • 10
    • 11
    • 12
    • 13
    • 14
    • 15
    • 16
    • 17
    • 18
    • 19
    • 20
    • 21
    • 22
    • 23
    • 24
    • 25
    • 26
    • 27
    • 28
    • 29
    • 30
    • 31
    • 32
    • 33
    • 34

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

    链接: 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

  • 相关阅读:
    竣达 | 综合环境采集模块PM2.5、温湿度、可燃气体、烟感等支持多参数监测
    《深度探索C++对象模型》阅读笔记 第一章 关于对象
    基于YOLOv5的手势识别系统(含手势识别数据集+训练代码)
    书生·浦语 大模型(学习笔记-7)LMDeploy 量化部署 LLM-VLM 实践
    grep命令用法
    python爬虫6
    如何建立高效的质量管理系统?
    Web前端:CSS篇(二)背景,文本,链接
    Vue学习之--------路由(Router)的基本使用(1)(2022/9/5)
    厂里资讯之自媒体文章自动审核
  • 原文地址:https://blog.csdn.net/qq_39221436/article/details/126265902