赞
踩
Elasticsearch 是面向文档型数据库,一条数据在这里就是一个文档。为了方便大家理解,我们将 Elasticsearch 里存储文档数据和关系型数据库 MySQL 存储数据的概念进行一个类比,如下图:
ES 里的 Index 可以看做一个库,而 Types 相当于表,Documents 则相当于表的行。这里 Types 的概念已经被逐渐弱化,Elasticsearch 6.X 中,一个 index 下已经只能包含一个type,Elasticsearch 7.X 中, Type 的概念已经被删除了。不允许指定类型,默认为_doc。
对比关系型数据库,创建索引就等同于创建数据库
在 Postman 中,向 ES 服务器发 PUT 请求 :http://172.18.20.254:9200/shopping
请求后,服务器返回响应
在 Postman 中,向 ES 服务器发 GET 请求 :http://172.18.20.254:9200/_cat/indices?v
这里请求路径中的_cat 表示查看的意思,indices 表示索引,所以整体含义就是查看当前 ES服务器中的所有索引,就好像 MySQL 中的 show tables 的感觉,服务器响应结果如下
索引结果字段解释:
在 Postman 中,向 ES 服务器发 GET 请求 :http://172.18.20.254:9200/shopping
返回结果字段解释:
在 Postman 中,向 ES 服务器发 DELETE 请求 :http://172.18.20.254:9200/shopping
有了索引库,等于有了数据库中的 database。
接下来就需要建索引库(index)中的映射了,类似于数据库(database)中的表结构(table)。创建数据库表需要设置字段名称,类型,长度,约束等;索引库也一样,需要知道这个类型下有哪些字段,每个字段有哪些约束信息,这就叫做映射(mapping)。
在 Postman 中,向 ES 服务器发 PUT请求http://172.18.20.254:9200/shopping/_mapping
映射字段说明:
在 Postman 中,向 ES 服务器发 GET 请求 :http://172.18.20.254:9200/shopping/_mapping
索引和映射创建好了,接下来我们来创建文档,并添加数据。这里的文档可以类比为关系型数据库中的表数据,添加的数据格式为 JSON 格式
在 Postman 中,向 ES 服务器发 POST 请求 :http://172.18.20.254:9200/shopping/_doc/1
查看文档时,需要指明文档的唯一性标识,类似于 MySQL 中数据的主键查询
在 Postman 中,向 ES 服务器发 GET 请求 :http://172.18.20.254:9200/shopping/_doc/1
和新增文档一样,输入相同的 URL 地址请求,如果请求体变化,会将原有的数据内容覆盖
在 Postman 中,向 ES 服务器发 POST 请求 :http://172.18.20.254:9200/shopping/_doc/1
修改数据时,也可以只修改某一给条数据的局部信息
在 Postman 中,向 ES 服务器发 POST 请求 :http://172.18.20.254:9200/shopping/_doc/1/_update
删除一个文档不会立即从磁盘上移除,它只是被标记成已删除(逻辑删除)。
在 Postman 中,向 ES 服务器发 DELETE 请求 :http://172.18.20.254:9200/shopping/_doc/1
一般删除数据都是根据文档的唯一性标识进行删除,实际操作时,也可以根据条件对多条数据进行删除
首先分别增加多条数据:
在 Postman 中,向 ES 服务器发 POST 请求 :http://172.18.20.254:9200/shopping/_delete_by_query
Copyright © 2003-2013 www.wpsshop.cn 版权所有,并保留所有权利。