#Elasticsearch的基本使用 @FDDLC
发布日期:2021-06-30 20:58:33 浏览次数:3 分类:技术文章

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

一、Elasticsearch常用术语

1、index(复数为indices):索引,索引库。

对应关系型数据库中的一个数据库(database)

2、mapping:映射。

对应关系型数据库中表结构的定义

3、type:类型,类型表。

对应关系型数据库中的一张表(table)

注:在ES 7.x中官方不推荐使用type类型表这一概念!

4、document:文档,记录。

对应关系型数据库中的一条记录

5、filed:域。

对应关系型数据库中的列或字段。

 

二、建议下载一个发送HTTP请求的工具:Postman

下载链接:

 

三、新建索引库

1、通过head创建索引库:利用"索引"选项卡

a、点击"新建索引":

b、设置索引库的相关信息:

 

2、通过"复合查询"选项卡创建索引库:

a、点击"复合查询",配置如下:

b、创建成功后的提示:

 

3、通过HTTP请求工具Postman创建索引库:

a、点击加号以创建HTTP请求:

 

b、往Elasticsearch发送PUT请求:

注意:

1)是PUT请求,而非POST请求。即创建索引库用PUT。如果用POST,会提示:

2)目标地址是Elasticsearch的HTTP地址,而非head的地址

 

四、新建type类型表

1、通过head工具:往已有的索引库中添加类型表

a、编写JSON格式的内容:

{    "head-type":    {      "properties":      {        "name-field":        {          "type": "text",          "store": true,          "index": true,          "analyzer": "standard"        },        "age-field":        {          "type": "int",          "store": true,          "index": "not_analyzed"        }      }    }}

b、提交:

c、成功:右侧内容框中提示successful:1,failed:0

(建议在IDEA中创建 .json 文件以编写JSON内容,再复制到内容框中提交请求;用Postman也很nice)

 

2、通过Postman(使用head亦可),同时新建索引库和类型表

JSON代码:

{  "mappings":   {    "properties":     {      "name":       {        "type": "text",        "store": true,        "index": true,        "analyzer": "standard"      },      "age":       {        "type": "integer",        "store": true,        "index": "not_analyzed"      }    }  }}

 

五、删除索引库

1、找到目标索引库中的动作菜单,选择删除:

接下来需要你输入"删除"以进行确认:

最后会提示你删除成功!

 

2、通过HTTP请求删除索引库:

新建复合查询,进行如下设置:

提交请求即可实现删除。删除成功:

 

 

六、记录的增删改查

这里重新建立索引库和类型表(方法参考上面四中的2),方便后面的测试:

JSON格式的请求体:

{  "mappings":  {    "properties":    {      "name":      {        "type": "text",        "analyzer": "standard"      },      "age":       {        "type": "int"      }    }  }}

 

1、指定主键( _id ):若对应主键已有内容,则为修改;若对应主键没有内容,则为添加

 

2、添加:不指定主键(系统随机生成)

 

补充:记录在哪查看?

方式一:

方式二:

 

3、删除一条记录(document)

a、要删除的记录:

b、发送DELETE请求:

 

3、查询一条记录(假设_id=1的记录已存在):

结果如下:

 

附:若主键值不存在(假设_id=1的记录不存在):

则返回found:false

 

 

七、先前没有索引库和类型表,也没有关于类型表的mapping信息,就直接添加记录:

也能成功。

 

 

 

转载地址:https://liuxingchang.blog.csdn.net/article/details/109528027 如侵犯您的版权,请留言回复原文章的地址,我们会给您删除此文章,给您带来不便请您谅解!

上一篇:#Elasticsearch中的查询 #标准分词器 @FDDLC
下一篇:#Elasticsearch入门:环境搭建 @FDDLC

发表评论

最新留言

很好
[***.229.124.182]2024年04月23日 04时44分03秒