• es请求方式调用


    Es基础

    关系:

    ElasticSearch-> mysql

    index (索引)-> 数据库

    Documents(文档) -> row(行)

    Fileds(字段)-> column

    正排索引 id 内容,类似表格

    倒排索引 :keywords : ids

    Postman访问实例

    创建索引:创建库

    ip/索引名

    请求路径:PUT http://127.0.0.1:9200/shopping
    请求体:none
    

    成功:

    {
    	"acknowledged": true,
    	"shards_acknowledged": true,
    	"index": "shopping"
    }
    
    查询当前存在索引:

    ip/_cat/indices?v=

    请求路径:GET  http://127.0.0.1:9200/_cat/indices?v=
    请求体:none
    

    成功:

    health status index            uuid                   pri rep docs.count docs.deleted store.size pri.store.size
    green  open   .geoip_databases 5vZtZiLXTw-ZnE-gxFK4RA   1   0         33           35     34.1mb         34.1mb
    yellow open   user1            XvuPXH4GR3qu9kYgI1vMTg   1   1          0            0       226b           226b
    yellow open   product          OuJtZ2GNQjaANql9jHIhdw   1   1          0            0       226b           226b
    yellow open   user             84VHenNTTtaJyKUQasAZXA   1   1          3            0      4.8kb          4.8kb
    yellow open   shopping         vqraISHNSFioVa4h58y_4w   1   1         10            6       28kb           28kb
    
    
    创建文档:添加行数据

    ip/索引名/_doc

    请求路径: POST  http://127.0.0.1:9200/shopping/_doc
    请求体:
    {
        "name": "小米",
        "price": 1999,
        "url": "htp12344"
    }
    

    成功:

    {
    	"_index": "shopping",
    	"_type": "_doc",
    	"_id": "0i0_WI8Bs7gKHbbSH-sS",
    	"_version": 1,
    	"result": "created",
    	"_shards": {
    		"total": 2,
    		"successful": 1,
    		"failed": 0
    	},
    	"_seq_no": 20,
    	"_primary_term": 7
    }
    

    指定id创建文档:

    ip/索引名/_doc/id

    请求路径:POST http://127.0.0.1:9200/shopping/_doc/1006
    请求体:
    {
        "name": "魅族21",
        "price": 2999,
        "url": "htp12344"
    }
    

    成功:

    {
    	"_index": "shopping",
    	"_type": "_doc",
    	"_id": "1006",
    	"_version": 3,
    	"result": "updated",
    	"_shards": {
    		"total": 2,
    		"successful": 1,
    		"failed": 0
    	},
    	"_seq_no": 21,
    	"_primary_term": 7
    }
    
    查询单挑索引:查询单条数据

    ip/索引/_doc/id

    请求路径: GET  http://127.0.0.1:9200/shopping/_doc/1001
    请求体:none
    

    成功:

    {
    	"_index": "shopping",
    	"_type": "_doc",
    	"_id": "1001",
    	"_version": 6,
    	"_seq_no": 7,
    	"_primary_term": 1,
    	"found": true,
    	"_source": {
    		"name": "小米",
    		"price": 3999,
    		"url": "htp123"
    	}
    }
    
    查询文档列表:列表查询数据

    ip/索引/_search

    请求路径: GET  http://127.0.0.1:9200/shopping/_search
    请求体:none
    

    成功:

    {
    	"took": 2,
    	"timed_out": false,
    	"_shards": {
    		"total": 1,
    		"successful": 1,
    		"skipped": 0,
    		"failed": 0
    	},
    	"hits": {
    		"total": {
    			"value": 3,
    			"relation": "eq"
    		},
    		"max_score": 1,
    		"hits": [
    			{
    				"_index": "shopping",
    				"_type": "_doc",
    				"_id": "F2NHrY4BJgxAo-jxuDZv",
    				"_score": 1,
    				"_source": {
    					"name": "小米",
    					"price": 1999,
    					"url": "htp12344"
    				}
    			},
    			{
    				"_index": "shopping",
    				"_type": "_doc",
    				"_id": "1001",
    				"_score": 1,
    				"_source": {
    					"name": "小米",
    					"price": 3999,
    					"url": "htp123"
    				}
    			},
    			{
    				"_index": "shopping",
    				"_type": "_doc",
    				"_id": "1004",
    				"_score": 1,
    				"_source": {
    					"name": "华为",
    					"price": 9999,
    					"url": "htp123"
    				}
    			}
    		]
    	}
    }
    
    条件查询:拆词查询
    请求路径: GET  http://127.0.0.1:9200/shopping/_search
    
    {
      "query": {
     "match": { //拆词单个查询
       "name": "华"
       }
      }
    }
    

    成功:

    {
    	"took": 6,
    	"timed_out": false,
    	"_shards": {
    		"total": 1,
    		"successful": 1,
    		"skipped": 0,
    		"failed": 0
    	},
    	"hits": {
    		"total": {
    			"value": 3,
    			"relation": "eq"
    		},
    		"max_score": 1.3340157,
    		"hits": [
    			{
    				"_index": "shopping",
    				"_type": "_doc",
    				"_id": "1005",
    				"_score": 1.3340157,
    				"_source": {
    					"name": "华为",
    					"price": 3999,
    					"url": "htp123"
    				}
    			},
    			{
    				"_index": "shopping",
    				"_type": "_doc",
    				"_id": "1004",
    				"_score": 1.3340157,
    				"_source": {
    					"name": "华为",
    					"price": 9999,
    					"url": "htp123"
    				}
    			},
    			{
    				"_index": "shopping",
    				"_type": "_doc",
    				"_id": "1001",
    				"_score": 1.1120224,
    				"_source": {
    					"name": "华为1",
    					"price": 9999,
    					"url": "htp123"
    				}
    			}
    		]
    	}
    }
    
    全词匹配查询高亮查询:
    请求路径: GET  http://127.0.0.1:9200/shopping/_search
    请求体:
    {
        "query": {
            "match_phrase": { //全词匹配查询
                "name": "华为1"
            }
        },
        "highlight": { //高亮显示这个字段
            "fields": {
                "name": {}
            }
        }
    }
    

    成功:

    {
    	"took": 58,
    	"timed_out": false,
    	"_shards": {
    		"total": 1,
    		"successful": 1,
    		"skipped": 0,
    		"failed": 0
    	},
    	"hits": {
    		"total": {
    			"value": 1,
    			"relation": "eq"
    		},
    		"max_score": 4.0541162,
    		"hits": [
    			{
    				"_index": "shopping",
    				"_type": "_doc",
    				"_id": "1001",
    				"_score": 4.0541162,
    				"_source": {
    					"name": "华为1",
    					"price": 9999,
    					"url": "htp123"
    				},
    				"highlight": {
    					"name": [
    						"1"
    					]
    				}
    			}
    		]
    	}
    }
    
    多条件范围查询:
    请求路径: GET  http://127.0.0.1:9200/shopping/_search
    
    请求体:
    {
        "query": {
            "bool": {
                "must": [ //should表示或,must表示并
                    {
                        "match": {
                            "name": "小米"
                        }
                    },
                    {
                        "match": {
                            "price": 3999
                        }
                    }
                ],
                "filter": {
                    "range": {
                        "price": {
                            "lt": 5000
                        }
                    }
                }
            }
        }
    }
    

    成功:

    {
    	"took": 18,
    	"timed_out": false,
    	"_shards": {
    		"total": 1,
    		"successful": 1,
    		"skipped": 0,
    		"failed": 0
    	},
    	"hits": {
    		"total": {
    			"value": 2,
    			"relation": "eq"
    		},
    		"max_score": 2.4093566,
    		"hits": [
    			{
    				"_index": "shopping",
    				"_type": "_doc",
    				"_id": "jFvSmY4BzKCXziUqmd-Q",
    				"_score": 2.4093566,
    				"_source": {
    					"name": "小米",
    					"price": 3999,
    					"url": "htp123"
    				}
    			},
    			{
    				"_index": "shopping",
    				"_type": "_doc",
    				"_id": "jVvYmY4BzKCXziUqX9-H",
    				"_score": 2.4093566,
    				"_source": {
    					"name": "小米",
    					"price": 3999,
    					"url": "htp123"
    				}
    			}
    		]
    	}
    }
    
    聚合查询:
    请求路径: GET  http://127.0.0.1:9200/shopping/_search
    
    请求体:
    {
        "aggs": {
            "price_group": { //随意取名
                "terms": { //分组
                    "field": "price" //分组字段
                }
            }
        }
    }
    
    {
    	"took": 38,
    	"timed_out": false,
    	"_shards": {
    		"total": 1,
    		"successful": 1,
    		"skipped": 0,
    		"failed": 0
    	},
    	"hits": {
    		"total": {
    			"value": 10,
    			"relation": "eq"
    		},
    		"max_score": 1,
    		"hits": [
    			{
    				"_index": "shopping",
    				"_type": "_doc",
    				"_id": "F2NHrY4BJgxAo-jxuDZv",
    				"_score": 1,
    				"_source": {
    					"name": "小米",
    					"price": 1999,
    					"url": "htp12344"
    				}
    			},
    			{
    				"_index": "shopping",
    				"_type": "_doc",
    				"_id": "jFvSmY4BzKCXziUqmd-Q",
    				"_score": 1,
    				"_source": {
    					"name": "小米",
    					"price": 3999,
    					"url": "htp123"
    				}
    			},
    			{
    				"_index": "shopping",
    				"_type": "_doc",
    				"_id": "jVvYmY4BzKCXziUqX9-H",
    				"_score": 1,
    				"_source": {
    					"name": "小米",
    					"price": 3999,
    					"url": "htp123"
    				}
    			},
    			{
    				"_index": "shopping",
    				"_type": "_doc",
    				"_id": "0i0_WI8Bs7gKHbbSH-sS",
    				"_score": 1,
    				"_source": {
    					"name": "魅族",
    					"price": 1999,
    					"url": "htp12344"
    				}
    			},
    			{
    				"_index": "shopping",
    				"_type": "_doc",
    				"_id": "1005",
    				"_score": 1,
    				"_source": {
    					"name": "华为",
    					"price": 3999,
    					"url": "htp123"
    				}
    			},
    			{
    				"_index": "shopping",
    				"_type": "_doc",
    				"_id": "1002",
    				"_score": 1,
    				"_source": {
    					"name": "小米",
    					"price": 1999,
    					"url": "htp123"
    				}
    			},
    			{
    				"_index": "shopping",
    				"_type": "_doc",
    				"_id": "1003",
    				"_score": 1,
    				"_source": {
    					"name": "小米",
    					"price": 999,
    					"url": "htp123"
    				}
    			},
    			{
    				"_index": "shopping",
    				"_type": "_doc",
    				"_id": "1004",
    				"_score": 1,
    				"_source": {
    					"name": "华为",
    					"price": 9999,
    					"url": "htp123"
    				}
    			},
    			{
    				"_index": "shopping",
    				"_type": "_doc",
    				"_id": "1006",
    				"_score": 1,
    				"_source": {
    					"name": "魅族21",
    					"price": 2999,
    					"url": "htp12344"
    				}
    			},
    			{
    				"_index": "shopping",
    				"_type": "_doc",
    				"_id": "1001",
    				"_score": 1,
    				"_source": {
    					"name": "华为1",
    					"price": 9999,
    					"url": "htp123"
    				}
    			}
    		]
    	},
    	"aggregations": {
    		"price_group": {
    			"doc_count_error_upper_bound": 0,
    			"sum_other_doc_count": 0,
    			"buckets": [
    				{
    					"key": 1999,
    					"doc_count": 3
    				},
    				{
    					"key": 3999,
    					"doc_count": 3
    				},
    				{
    					"key": 9999,
    					"doc_count": 2
    				},
    				{
    					"key": 999,
    					"doc_count": 1
    				},
    				{
    					"key": 2999,
    					"doc_count": 1
    				}
    			]
    		}
    	}
    }
    
    文档修改:修改行数据

    ip/索引/_doc/id

    请求路径: PUT  http://127.0.0.1:9200/shopping/_doc/1001
    请求体:
    {
        "name": "小米",
        "price": 9999,
        "url": "htp123"
    }
    

    成功:

    {
      "_index": "shopping",
      "_type": "_doc",
      "_id": "1001",
      "_version": 7,
      "result": "updated",
      "_shards": {
       "total": 2,
       "successful": 1,
      "failed": 0
      },
      "_seq_no": 22,
      "_primary_term": 7
    }
    
    局部修改文档(某列)

    ip/索引/_update/id

    请求路径:PUT  http://127.0.0.1:9200/shopping/_update/1001
    请求体:
    {
        "doc": {
            "name": "华为1"
        }
    }
    

    成功:

    {
    	"_index": "shopping",
    	"_type": "_doc",
    	"_id": "1001",
    	"_version": 8,
    	"result": "updated",
    	"_shards": {
    		"total": 2,
    		"successful": 1,
    		"failed": 0
    	},
    	"_seq_no": 23,
    	"_primary_term": 7
    }
    

    删除文档:

    请求路径:DELETE  http://127.0.0.1:9200/shopping/_doc/1001
    请求体:none
    
  • 相关阅读:
    嵌入式 Linux 入门(六、Shell 脚本编程下:Shell 脚本语法)
    内网环境下让容器上网,并制作一个httpd容器
    C语言学习笔记
    【Vue原理解析】之虚拟DOM
    【Java编程题】
    Vue的生命周期快速入门
    【基于Netty实现Http通信、实现UDP单播和广播通信、代码案例实战学习】
    Win10修改MySql 8.0的配置文件
    01--MySQL数据库概述
    C语言实现八大排序
  • 原文地址:https://www.cnblogs.com/cyqf/p/18183098