Elasticsearch学习笔记(一)创建索引,添加文档

Elasticsearch学习笔记(一)创建索引,添加文档,第1张

Elasticsearch学习笔记(一)创建索引,添加文档 ElasticSearch学习笔记 Elasticsearch学习笔记(一)

Elasticsearch是一个分布式的、RESTful风格的搜索和数据分析引擎。

安装Elasticsearch

安装Elasticsearch,这里选择在Windows电脑中安装。[Elasticsearch官网Windows下载地址](Past Releases of Elastic Stack Software | Elastic)

下载完之后打开解压文件,进入文件夹

进入到bin目录打开elasticsearch.bat文件,就可以启动Elasticsearch。

启动之后可以通过localhost:9200访问,查看测试结果

Restful风格

REST指的是一组架构约束条件和原则。满足这些约束条件和原则的应用程序或设计就是RESTful。REST表象化状态转变(表述性状态转变),基于HTTP、URI、XML、JSON等标准和协议,支持轻量级、跨平台、跨语言的架构设计。是Web服务的一种新的架构风格(一种思想)。在REST样式的Web服务中,每个资源都有一个地址。资源本身都是方法调用的目标,方法列表对所有资源都是一样的。

RESTful架构的主要原则
  • 对网络上所欲的资源都有一个资源标识符
  • 对资源的 *** 作不会改变标识符。
  • 同一资源有多种表现形式(xml、json)
  • 所有 *** 作都是无状态的(Stateless)

符合上述REST原则的架构方式称为RESTful

安装Postman

为了方便进行客户端的访问,使用Postman软件。

Postman是一款强大的页面调试工具,提供功能强大的WebAPI和HTTP请求调试。软件功能强大,界面简洁清晰, *** 作方便快捷。

Postman官网

Elasticsearch数据格式

Elasticsearch是面向文档型数据库,一条数据就是一个文档。下面是Elasticsearch存储文档数据和MySQL存储数据的一个比较。

ES中的Index可以看成一个库,Types相当于表,documents相当于表的行。在Elasticsearch 7.x中,Type的概念已经被删除了,就是一个索引下面只能有一种类型。

ES中的_doc是什么意思

_ doc就代表映射类型,Elasticsearch 7.x中一个索引中只能有一个type,因此_ doc就代表该类型,所以你会发现在想索引中添加文档时使用_ doc添加后,再在该索引下添加文档使用food,查询时,类型全为food。

索引 *** 作 1)创建索引

在Elasticsearch中创建索引就等同于创建数据库

向ES服务器发出PUT方式的请求:localhost:9200/shopping,就是创建索引。

如果重复添加索引会返回错误信息。

2)查看所有的索引

向ES服务器发送GET请求:localhost:9200/_cat/indices?v

_cat 表示查看的意思,indices表示索引

  • health:表示当前服务器状态:green(集群完整)yellow(单点正常、集群不完整)red(单点不正常)
  • status:索引打开关闭状态
  • index:索引名
  • uuid:索引统一编号
  • pri:主分片数量
  • rep:副本数量
  • docs.count:可用文档数量
  • docs.deleted:文档删除状态(逻辑删除)
  • store.size:主分片和副分片整体占空间大小
  • pri.store.size:主分片占空间大小
3)查看单个索引

向ES服务器发送GET请求:localhost:9200/shopping

4)删除索引

向ES服务器发送DELETE请求:localhost:9200/shopping

删除之后再查看会返回索引不存在的信息

文档 *** 作 1)创建文档

索引已经创建好了接下来就可以创建文档,并添加数据了。文档就相当于关系型数据库中的表数据,添加的数据格式为JSON格式。

向ES服务器发送POST请求:localhost:9200:/shopping/_doc,同时需要加上请求体:

{"title": "面包",
"price": 10
}

发送请求的方式必须为POST,不能是PUT,否则会返回错误信息

在创建数据时,没有指定数据唯一性标识(ID),索引,默认的ES服务器会随机生成一个。

也可以自定义唯一性标识,即在创建时指定

localhost:9200/shopping/_doc/1001

2)查看文档

查看文档时,需要指明文档的唯一性标识

向ES服务器发送GET请求:localhost:9200/shopping/food/1

查看索引所有数据

向ES服务器发送GET请求:localhost:9200/shopping_search

3)修改文档

和新增文档一样,需要修改时,在请求体中修改字段同时请求方式可以为PUT和POST请求。

向ES服务器发送PUT,POST请求:localhost:9200/shopping/food/1001,

同时在请求体中修改字段:

{
    "title": "西游记",
    "price": 23
}

其中version为版本号。

4)修改字段

​ 向ES服务器发送POST请求:localhost:9200/shopping/_update/1001

同时请求体内容为:

{
    "doc":{
        "title":"甜甜圈11"
    }
}

5)删除文档

向ES服务器发送DELETE请求:localhost:9200/shopping/_doc/1002

删除文档不会立即从磁盘中删除,只是先将该文档标记为删除。

6)条件删除文档

还可以根据条件对多条文档数据进行删除

向ES服务器发送PSOT请求:localhost:9200/shopping/_delete_by_query

其中相应数据中的took字段代表耗时。

还可以通过请求体条件进行查询

{
    "query":{
        "match":{
            "title":"西游记"
        }
    }
}

欢迎分享,转载请注明来源:内存溢出

原文地址: http://outofmemory.cn/zaji/5436050.html

(0)
打赏 微信扫一扫 微信扫一扫 支付宝扫一扫 支付宝扫一扫
上一篇 2022-12-11
下一篇 2022-12-11

发表评论

登录后才能评论

评论列表(0条)

保存