直播系统搭建,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请求实现查询操作,更多内容欢迎关注之后的文章
【推荐】国内首个AI IDE,深度理解中文开发场景,立即下载体验Trae
【推荐】编程新体验,更懂你的AI,立即体验豆包MarsCode编程助手
【推荐】抖音旗下AI助手豆包,你的智能百科全书,全免费不限次数
【推荐】轻量又高性能的 SSH 工具 IShell:AI 加持,快人一步
· 分享一个免费、快速、无限量使用的满血 DeepSeek R1 模型,支持深度思考和联网搜索!
· 基于 Docker 搭建 FRP 内网穿透开源项目(很简单哒)
· ollama系列01:轻松3步本地部署deepseek,普通电脑可用
· 25岁的心里话
· 按钮权限的设计及实现
2021-10-26 视频聊天室源码,按住对话框右滑显示删除
2021-10-26 直播系统代码,登录时常用验证方式
2021-10-26 短视频系统,使用Glide播放gif图的相关用法