直播系统搭建,Elasticsearch通过Http请求实现查询操作

直播系统搭建,Elasticsearch通过Http请求实现查询操作

数据准备

为了方便查询操作,创建索引叫做:nba,并且添加数据,http请求如下:

 

1
<br># 创建索引及映射<br># PUT http://192.168.80.121:9200/nba<br>{<br>  "settings": {<br>    "number_of_shards": 3,<br>    "number_of_replicas": 2<br>  },<br>  "mappings": {<br>    "properties": {<br>      "name": {<br>        "type": "text",<br>        "analyzer": "ik_max_word"<br>      },<br>      "team_name": {<br>         "type": "keyword"<br>      },<br>      "position": {<br>        "type": "text",<br>        "analyzer": "ik_max_word"<br>      },<br>      "play_year": {<br>      "type": "integer",<br>       "index": "false"<br>      },<br>      "jerse_no": {<br>      "type": "integer"<br>     }<br>    }<br>  }<br>}<br># 依次创建如下文档<br># POST http://192.168.80.121:9200/nba/_doc/1<br>{<br>  "name": "韦德",<br>  "team_name": "热火",<br>  "position": "得分后卫",<br>  "play_year": 16,<br>  "jerse_no": 3<br>}<br># POST http://192.168.80.121:9200/nba/_doc/2<br>{<br>  "name": "波什",<br>  "team_name": "热火",<br>  "position": "大前锋",<br>  "play_year": 16,<br>  "jerse_no": 1<br>}<br># POST http://192.168.80.121:9200/nba/_doc/3<br>{<br>  "name": "詹姆斯",<br>  "team_name": "热火",<br>  "position": "小前锋",<br>  "play_year": 16,<br>  "jerse_no": 6<br>}

​1.基本查询:

基本语法

 

1
<br># GET /索引库名/_search<br>{<br>    "query":{<br>        "查询类型":{<br>            "字段":"查询条件值"<br>        }<br>    }<br>}

这里的query代表一个查询对象,里面可以有不同的查询属性

查询类型:

例如:match_all, match,term , range 等等

查询条件:查询条件会根据类型的不同,写法也有差异,后面详细讲解

1.1 查询所有(match_all)

请求方式:GET

请求路径:ip+port/索引库名/_search

 

请求参数:json

 

1
<br># GET http://192.168.80.121:9200/nba/_search<br># 请求参数<br>{<br>    "query":{<br>        "match_all": {}<br>    }<br>}

 

 

query:代表查询对象

match_all:代表查询所有

结果:

 

1
<br>{<br>    "took": 1,<br>    "timed_out": false,<br>    "_shards": {<br>        "total": 1,<br>        "successful": 1,<br>        "skipped": 0,<br>        "failed": 0<br>    },<br>    "hits": {<br>        "total": {<br>            "value": 3,<br>            "relation": "eq"<br>        },<br>        "max_score": 1.0,<br>        "hits": [<br>            {<br>                "_index": "nba",<br>                "_type": "_doc",<br>                "_id": "1",<br>                "_score": 1.0,<br>                "_source": {<br>                    "name": "韦德",<br>                    "team_name": "热火",<br>                    "position": "得分后卫",<br>                    "play_year": 16,<br>                    "jerse_no": "3"<br>                }<br>            },<br>            {<br>                "_index": "nba",<br>                "_type": "_doc",<br>                "_id": "2",<br>                "_score": 1.0,<br>                "_source": {<br>                    "name": "波斯",<br>                    "team_name": "热火",<br>                    "position": "大前锋",<br>                    "play_year": 16,<br>                    "jerse_no": "1"<br>                }<br>            },<br>            {<br>                "_index": "nba",<br>                "_type": "_doc",<br>                "_id": "3",<br>                "_score": 1.0,<br>                "_source": {<br>                    "name": "詹姆斯",<br>                    "team_name": "热火",<br>                    "position": "小前锋",<br>                    "play_year": 16,<br>                    "jerse_no": "6"<br>                }<br>            }<br>        ]<br>    }<br>}

 

以上就是 直播系统搭建,Elasticsearch通过Http请求实现查询操作,更多内容欢迎关注之后的文章

 

posted @   云豹科技-苏凌霄  阅读(39)  评论(0编辑  收藏  举报
相关博文:
阅读排行:
· 分享一个免费、快速、无限量使用的满血 DeepSeek R1 模型,支持深度思考和联网搜索!
· 基于 Docker 搭建 FRP 内网穿透开源项目(很简单哒)
· ollama系列01:轻松3步本地部署deepseek,普通电脑可用
· 25岁的心里话
· 按钮权限的设计及实现
历史上的今天:
2021-10-26 视频聊天室源码,按住对话框右滑显示删除
2021-10-26 直播系统代码,登录时常用验证方式
2021-10-26 短视频系统,使用Glide播放gif图的相关用法
点击右上角即可分享
微信分享提示