博客
关于我
强烈建议你试试无所不能的chatGPT,快点击我
ElasticSearch快速入门之创建索引库、创建映射、创建文档、搜索文档
阅读量:3909 次
发布时间:2019-05-23

本文共 2640 字,大约阅读时间需要 8 分钟。

ElasticSearch

借助postman工具来测试

一、创建索引库

格式:使用put请求 输入: http://localhost:9200/索引库名称

比如这个 http://localhost:9200/xc_course

在这里插入图片描述

二、创建映射

在索引中每个文档都包括了一个或多个field,创建映射就是向索引库中创建field的过程,下边是document和field

与关系数据库的概念的类比:
文档(Document)----------------Row记录
字段(Field)-------------------Columns 列
注意:6.0之前的版本有type(类型)概念,type相当于关系数据库的表,ES官方将在ES9.0版本中彻底删除type。
上边讲的创建索引库相当于关系数据库中的数据库还是表?
1、如果相当于数据库就表示一个索引库可以创建很多不同类型的文档,这在ES中也是允许的。
2、如果相当于表就表示一个索引库只能存储相同类型的文档,ES官方建议 在一个索引库中只存储相同类型的文
档。

格式:post 请求:http://localhost:9200/xc_course/doc/_mapping

在body里面输入

{	"properties":{		"name":{			"type":"text"		},		"description":{			"type":"text"		},		"studymodel":{			"type":"keyword"		}	}}

在这里插入图片描述

在浏览器通过head插件查看

在这里插入图片描述

三、创建文档

格式:put 或Post http://localhost:9200/xc_course/doc/id值

(如果不指定id值ES会自动生成ID)

例如下面这个:http://localhost:9200/xc_course/doc/4028e58161bcf7f40161bcf8b77c0000

在这里插入图片描述

四、搜索文档

1、根据课程id查询文档

发送:get http://localhost:9200/xc_course/doc/4028e58161bcf7f40161bcf8b77c0000
使用 postman测试:

2、查询所有记录

发送 get http://localhost:9200/xc_course/doc/_search

3、查询名称中包括spring 关键字的的记录(在查询所有记录的基础上后面跟上?q=)

发送:get http://localhost:9200/xc_course/doc/_search?q=name:bootstrap
4、查询学习模式为201001的记录
发送 get http://localhost:9200/xc_course/doc/_search?q=studymodel:201001

在这里要注意一个点:

使用_search搜索的时候,报错 Expected [START_OBJECT] but found [VALUE_NUMBER]

在这里插入图片描述

{    "error": {        "root_cause": [            {                "type": "parsing_exception",                "reason": "Expected [START_OBJECT] but found [VALUE_NUMBER]",                "line": 1,                "col": 1            }        ],        "type": "parsing_exception",        "reason": "Expected [START_OBJECT] but found [VALUE_NUMBER]",        "line": 1,        "col": 1    },    "status": 400}

查询以后,才知道在使用_search搜索的时候body里面不能有数据,于是清空body的数据

在这里插入图片描述

然后再次查询,就可以了

在这里插入图片描述

查询结果分析:

{    "took": 3,    "timed_out": false,    "_shards": {        "total": 1,        "successful": 1,        "skipped": 0,        "failed": 0    },    "hits": {        "total": 1,        "max_score": 1,        "hits": [            {                "_index": "xc_course",                "_type": "doc",                "_id": "4028e58161bcf7f40161bcf8b77c0000",                "_score": 1,                "_source": {                    "name": "Bootstrap开发框架",                    "description": "Bootstrap是由Twitter推出的一个前台页面开发框架,在行业之中使用较为广泛。此开发框架包含了大量的CSS、JS程序代码,可以帮助开发者(尤其是不擅长页面开发的程序人员)轻松的实现一个不受浏览器限制的精美界面效果。",                    "studymodel": "201001"                }            }        ]    }}

took:本次操作花费的时间,单位为毫秒。

timed_out:请求是否超时
_shards:说明本次操作共搜索了哪些分片
hits:搜索命中的记录
hits.total : 符合条件的文档总数 hits.hits :匹配度较高的前N个文档
hits.max_score:文档匹配得分,这里为最高分
_score:每个文档都有一个匹配度得分,按照降序排列。
_source:显示了文档的原始内容。

转载地址:http://qhurn.baihongyu.com/

你可能感兴趣的文章
与其每天重复,不如试着构建「正反馈闭环」
查看>>
【Azure学习.01】先从账号注册开始
查看>>
如何运用领域驱动设计 - 工作单元
查看>>
服务器应用服务为何卡顿?原来是内存耗尽惹的祸!
查看>>
什么?原来C#还有这两个关键字
查看>>
Mbp,一个用于学习.net core的开发框架
查看>>
【Magicodes.IE 2.0.0-beta1版本发布】已支持数据表格、列筛选器和Sheet拆分
查看>>
net下的高性能轻量化半自动orm+linq的《SqlBatis》
查看>>
如何利用Serilog的RequestLogging来精简ASP.NET Core的日志输出
查看>>
在 Blazor WebAssembly 中使用 gRPC-Web
查看>>
【实战 Ids4】║ 在Swagger中调试认证授权中心
查看>>
.NET Core开发实战(第10课:环境变量配置提供程序)--学习笔记
查看>>
WTM系列视频教程:View和Taghelper
查看>>
面试官:你连HTTP请求Post和Get都不了解?
查看>>
.NET Core 3.0 即将结束生命周期,建议迁移 3.1
查看>>
开源、免费、企业级的SiteServer CMS .NET CORE 7.0 预览版发布
查看>>
基于.NET下的人工智能|利用ICSharpCore搭建基于.NET Core的机器学习和深度学习的本地开发环境...
查看>>
【朝夕Net社区技术专刊】Core3.1 WebApi集群实战专题---WebApi环境搭建运行发布部署篇...
查看>>
200行代码,7个对象——让你了解ASP.NET Core框架的本质[3.x版]
查看>>
.NET Core开发实战(第21课:中间件:掌控请求处理过程的关键)--学习笔记(下)...
查看>>