Elasticsearch-----介绍与增删改查操作

一、介绍:

1、概念:是功能非常强大的全文搜索引擎,目的是为了能快速的查询数据

2、核心概念: 

  • 接近实时(NRT):Elasticsearch是一个接近实时的搜索平台。从索引一个文档直到这个文档能够被搜索到有一个轻微的延迟(通常是1秒)。
  • 集群(cluster):一个集群就是由一个或多个节点组织在一起,它们共同工作、共同分享持有你整个的数据,并一起提供索引和搜索功能。具有负载均衡功能的集群。
  • 节点(node):一个节点是你集群中的一个服务器,作为集群的一部分,它存储你的数据,参与集群的索引和搜索功能。
  • 索引(index):索引类似于关系型数据库中Database的概念。在一个集群中,如果你想,可以定义任意多的索引。
  • 类型(type):类型类似于关系型数据库中Table的概念。
  • 在一个索引中,你可以定义一种或多种类型。
  • 文档(document):一个文档是一个可被索引的基础信息单元。比如,你可以拥有某一个客户的文档,某一个产品的一个文档,文档以JSON格式来表示
  • 分片和复制(shards & replicas):一个索引可以存储超出单个结点硬件限制的大量数据

3、ES与mysql的对比

  

 

 4、ES为什么是安全的?

  es对数据的保障主要依赖拷贝和分片的机制

5、mapping是什么?

  字段(相当于mysql中的字段)

 

二、以下讲解的内容包括:

1、添加索引

2、索引中添加数据

3、创建mapping

4、删除索引

5、删除数据

6、删除条件数据

7、修改文档中某个字段的值

8、查询所有索引

9、查询所有索引的信息

10、查询索引的表数据

11、查询符合条件的结果

12、term/match查询符合条件的结果

13、查询映射mapping

14、排序查询

 

一、服务器上安装elasticsearch-head插件(自行百度)。安装后的效果图如下所示

 

 

二、通过接口的方式查看数据和进行操作

1、使用接口工具:postman

2、操作步骤:

  a、添加接口

  b、添加header头部信息

  c、选择authorization(认证)为token,利用web的F12或检查,抓取登录时的token

  d、填写body

  e、运行查看结果

 

三、详细的示例操作

1、添加索引

 

 

 

 

2、添加索引表数据

 

 

 3、查看ES表中的所有索引

  a、请求头主要加上:Content-Type:application/json

  b、authorization:登录的token

  c、请求信息。xx.xx.xx.xx为服务器地址

http://xx.xx.xx.xx:9200/_cat/indices

  d、body填写的信息

{"query":{"match_all":{}}}

  截图示例:

  

 

  

 

 4、查询所有的索引的信息

 

 

 

5、 查看表数据

  a、请求头与authorization与上方的一致

  b、请求信息

http://xx.xx.xx.xx:9200/xx/_search
注:http://地址:9200/索引名称/
_search

  c、body填写的信息

{
"query":
{"bool":
{"must":[],"must_not":[],"should":[{"match_all":{}}]}},
"from":0,
"size":50,
"sort":
[{"id":{"order":"desc"}},
{"_index":{"order":"desc"}}],
"aggs":{},
"version":true
}

     截图示例

  

 

6、查询符合条件的数据

 

7、term/match查询符合条件的结果

  term查询:指定index的type,搜索包含条件字段内容的值。 match查询:与term的区别,支持数值型和日期等类型

  

 

 8、查询映射

 

 9、查询排序

 

 

 10、删除索引

 

11、删除表数据(全部删除数据)

  a、请求头与authorization与上方的一致

  b、请求信息

http://xx.xx.xx.xx:9200/xx/xx/_delete_by_query

  注:http://地址:9200/索引名称/类型名称/_delete_by_query

  c、body信息

{
  "query": {
    "match_all": {}
  }
}

  截图示例

  

 

 

12、删除表数据(删除符合条件数据)

  a、请求头与authorization与上方的一致

  b、请求信息

http://xx.xx.xx.xx:9200/xx/xx/_delete_by_query

  c、body信息

{
  "query": {
    "term": {
        "xx":xx   #注:删除的条件,相当于mysql中的where后面的值
    }
  }
}

  截图示例

  

 

13、修改文档中的某个字段的值

member_xm22/man_zf/1分别为:index/type/id

 

posted @ 2020-07-28 16:24  Syw_文  阅读(251)  评论(0编辑  收藏  举报