Elastic安装后 postman对elasticsearch进行测试

发布于:2024-04-20 ⋅ 阅读:(29) ⋅ 点赞:(0)

一、创建索引和mapping

//id 字段自增id
//good_sn 商品SKU
//good_name 商品名称
//good_introduction 商品简介
//good_descript 商品详情


PUT http://IP:9200/shop
{
    "mappings":{
        "good":{
            "properties":{
                "id":{
                    "type":"long",
                    "fields":{
                        "keyword":{
                            "type":"keyword",
                            "ignore_above":256
                        }
                    }
                },
                "good_sn":{
                    "type":"text",
                    "fields":{
                        "keyword":{
                            "type":"keyword",
                            "ignore_above":256
                        }
                    }
                },
                "good_name":{
                    "type":"text",
                    "fields":{
                        "keyword":{
                            "type":"keyword",
                            "ignore_above":256
                        }
                    }
                },
                "good_introduction":{
                    "type":"text",
                    "fields":{
                        "keyword":{
                            "type":"keyword",
                            "ignore_above":256
                        }
                    }
                },
                "good_descript":{
                    "type":"text",
                    "fields":{
                        "keyword":{
                            "type":"keyword",
                            "ignore_above":256
                        }
                    }
                }
            }
        }
    }
}

页面效果如下,说明创建成功:

二、插入数据 

POST http://IP:9200/shop/good/id
{
    "id":"1",
    "good_sn":"4217251852947",
    "good_name":"【12期免息 再减500元】Apple/苹果 iPhone 11全网通4G 超广角拍照手机苏宁易购官方store 苹果11 ",
    "good_introduction":"选套餐一免费享更多好礼",
    "good_descript":"商品详细信息"
}

页面效果如下,说明插入成功:

三、查询数据

GET http://IP:9200/shop/good/_search
{
    "query":{
        "match":{
            "id":"1"
        }
    }
}

页面效果如下,说明查询成功:

返回参数说明:

  • took:是查询花费的时间,毫秒单位。
  • time_out:标识查询是否超时。
  • _shards:描述了查询分片的信息,查询了多少个分片、成功的分片数量、失败的分片数量等。
  • hits:搜索的结果
  • total: 代表当前ES里符合条件的总数只有一条数据
  • _index:我们指定查询的索引(类似数据库的某个库)。
  • _type:我们指定查询的文档(类似数据库的某张表)
  • _id:查询指定的id。
  • _source:查询返回数据。

四、更新数据

PUT http://IP:9200/shop/good/1
{
    "id":"1",
    "good_name":"【12期免息 再减600元】Apple/苹果 iPhone 11全网通4G 超广角拍照手机苏宁易购官方store 苹果11"
}

再次查询时,发现数据已更新,说明更新成功

注意:未上传的商品字段已经被删除了 

五、删除数据

DELETE http://IP:9200/shop/good/1

 页面效果如下,说明数据删除成功:

再次查询时,发现查询不到数据

六、删除索引

DELETE http://IP:9200/shop

页面效果如下,说明索引删除成功:

七、其他知识

1. 能否更改 Mapping 字段类型

  • 新增字段情况,Dynamic 设置为 true,带有新字段的文档写入,Mapping 会更新。Dynamic 设置为 false,Mapping 不被更新,新增字段不会被索引。Dynamic 设置为 Strict,带有新字段的文档写入会直接报错。
  • 对已有字段并且存在数据情况,不支持修改字段定义,因为 ES 通过 Lucene 生成倒排索引,一旦生成就不许与修改
  • 如果实在需要修改可以通过 Reindex Api 重建索引
PUT http://IP:9200/shop/_mapping
{
    "dynamic":"true" 
}

2. 关闭索引
如果索引被关闭,那么关于这个索引的所有读写操作都会被阻断。索引的关闭也很简单,请求方式如下:

POST http://IP:9200/shop/_close

3. 打开索引
与关闭索引相对应的是打开索引,请求方式如下:

POST http://IP:9200/shop/_open

4. 冻结索引
冻结索引和关闭索引类似,关闭索引是既不能读,也不能写。而冻结索引是可以读,但是不能写
冻结索引的请求方式如下:

POST http://IP:9200/shop/_freeze

5. 解冻索引
与冻结索引对应的是解冻索引,请求方式如下:

POST http://IP:9200/shop/_unfreeze