• ES的使用


    GET /_cat/indices?v
    
    # 增加一个索引
    PUT /movies_index
    
    # 删除一个索引
    DELETE /movies_index
    
    # 新增文档
    
    PUT /movies_index/movies/1
    {
      "id":1,
      "name":"operation red sea",
      "actorList":[
        {"id":1,"name":"zhang yi"},
        {"id":2, "name":"hai qing"},
        {"id":3,"name":"zhang han yu"}
        ]
    }
    
    PUT /movies_index/movies/2
    {
      "id":2,
      "name":"operation meigonghe river",
      "actorList":[
        {"id":3,"name":"zhang han yu"}
        ]
    }
    
    PUT /movies_index/movies/3
    {
      "id":3,
      "name":"incident red sea",
      "actorList":[
        {"id":4,"name":"zhang chen"}
        ]
    }
    
    
    PUT /movies_index/movies/3
    {
      "id":3,
      "name":"incident red sea",
      "actorList":[
        {"id":3,"name":"zhang han yu"},
        {"id":5,"name":"fang hong jian"}
        ]
    }
    
    
    GET /movies_index/movies/3
    
    GET /_search/
    {
      "query":{
        "match": {
          "name": "operation red sea"
        }
      }
    }
    
    
    # 通过索引查找值
    GET /movies_index/movies/1
    GET /movies_index/movies/2
    GET /movies_index/movies/3
    
    
    # 修改整体替换
    PUT /movies_index/movies/2
    {
      "id":2,
      "name":"operation meigonghe river",
      "actorList":[
        {"id":3,"name":"zhang han yu"}
        ]
    }
    
    # 查找
    GET /movies_index/movies/2
    
    # 修改整体替换
    
    PUT /blog_index/blogs/1
    {
    "title": "Invest Money",
    "body": "Please start investing money as soon...",
    "tags": ["money", "invest"],
    "published_on": "18 Oct 2017",
    "comments": [
    {
    "name": "William",
    "age": 34,
    "rating": 8,
    "comment": "Nice article..",
    "commented_on": "30 Nov 2017"
    },
    {
    "name": "John",
    "age": 38,
    "rating": 9,
    "comment": "I started investing after reading this.",
    "commented_on": "25 Nov 2017"
    },
    {
    "name": "Smith",
    "age": 33,
    "rating": 7,
    "comment": "Very good post",
    "commented_on": "20 Nov 2017"
    }
    ]
    }
    
    {
      "id":3,
      "name":"incident red sea",
      "doubanScore":8.0,
      "actorList":[
        {"id":4,"name":"zhang chen"}
        ]
    }
    
    # 查看修改结果
    GET /movies_index/movies/3
    
    # 修改某个字段
    
    
    POST /movies_index/movies/3/_update
    {
      "doc":{
        "doubanScore":9.9
      }
    }
    
    GET /movies_index/movies/3
    
    
    # 删除一个document
    
    DELETE movies_index/movies/3
    
    # 搜索TYPE全部数据
    
    GET /movies_index/movies/_search
    
    
    # 按条件查询
    
    # 按条件查询全部
    GET /movies_index/movies/_search
    {
      "query": {
        "match_all": {}
      }
    }
    # 按分词查询
    GET /movies_index/movies/_search
    {
      "query": {
        "match": {
          "name": "red"
        }
      }
    }
    
    
    # 修改Id为1的数据中actorList中id为2的属性为haiqing
    POST /movies_index/movies/1/_update
    {
      "doc":{
        "actorList":  [          {
                  "id" : 1,
                  "name" : "zhang yi"
                },
                {
                  "id" : 2,
                  "name" : "haiqing"
                },
                {
                  "id" : 3,
                  "name" : "zhang han yu"
                }]
      }
    }
    
    GET /movies_index/movies/1
    GET /movies_index/movies/2
    
    # 按分词子属性查询
    GET /movies_index/movies/_search
    {
      "query": {
        "match": {
          "name": "red sea"
        }
      }
    }
    
    
    # 按短语查询,不再利用分词技术,直接用短语在原始数据中匹配
    GET /movies_index/movies/_search
    {
      "query": {
        "match_phrase": {
          "name": "red sea"
        }
      }
    }
    
    
    # fuzzy查询,校正匹配分词,当一个单词都无法准确匹配,es通过一种算法对非常接近的单词也给出一定的评分,能够查询出来,但是消耗更多的性能
    
    GET /movies_index/movies/_search
    {
      "query":{
        "fuzzy": {"name":"operatiom"}
      }
    
    }
    
    
    # 过滤 -查询后过滤
    GET /movies_index/movies/_search
    {
      "query": {
        "match": {
          "name": "operation"
        }
      }
    }
    
    GET /movies_index/movies/_search
    {
      "query": {
        "match": {
          "name": "operation"
        }
      },"post_filter": {
        "term": {
          "actorList.id": 1
        }
      }
    }
    
    # 查询前过滤V001
    GET /movies_index/movies/_search
    {
      "query": {
        "bool": {
          "filter": [
            {"term":{"actorList.id":3}}
            ]
        }
      }
    }
    
    # 查询前过V002
    GET /movies_index/movies/_search
    {
      "query": {
        "bool": {
          "filter": [
            {"term":{"actorList.id":3}},
            {"term":{"actorList.id":1}}
            ]
        }
      }
    }
    
    
    
    
    
    # 查询前过滤V003
    GET /movies_index/movies/_search
    {
      "query": {
        "bool": {
          "filter": [
            {"term":{"actorList.id":3}},
            {"term":{"actorList.id":1}}
            ],"must": [
              {"match": {
                "name": "red"
              }}
            ]
        }
      }
    }
    
    # 增加豆瓣电影评分
    POST /movies_index/movies/3/_update
    {
      "doc":{
        "doubanScore":9.9
      }
    }
    
    
    
    
    GET /movies_index/movies/2
    GET /movies_index/movies/_search
    {
      "query": {
        "match_all": {}
      }
    }
    
    
    # 过滤按范围进行过滤
    GET /movies_index/movies/_search
    {
      "query": {
        "bool": {
          "filter": {
            "range": {
              "doubanScore": {
                "gte": 8
              }
            }
          }
        }
      }
    }
    
    
    GET /movies_index/movies/_search
    {
      "query": {
        "match": {
          "name": "red"
        }
      },"sort": [
        {
          "doubanScore": {
            "order": "desc"
          }
        }
      ]
    }
    
    
    
    GET /movies_index/movies/_search
    {
      "query": {
        "match_all": {}
      }
      ,"sort": [
        {
          "doubanScore": {
            "order": "desc"
          }
        }
      ]
    }
    
    
    GET /movies_index/movies/_search
    {
      "query": {
        "match_all": {}
      },"sort": [
        {
          "doubanScore": {
            "order": "asc"
          }
        }
      ]
    }
    
    
    # 分页查询
    GET /movies_index/movies/_search
    {
      "query": {"match_all": {}},
      "from": 1,
      "size": 1
    }
    
    
    # 指定查询的字段
    GET /movies_index/movies/_search
    {
      "query": {"match_all": {}},
      "_source": ["name","doubanScore"],
      "sort": [
        {
          "doubanScore": {
            "order": "asc"
          }
        }
      ],
      "from": 0,
      "size": 10
    }
    
    
    
    GET /movies_index/movies/_search
    {
      "query": {"match": {
        "name": "red sea"
      }},
      "highlight": {
        "fields": {"name":{}}
      }
    }
    
    GET /movies_index/movies/_search
    {
      "query": {"match_all": {}},
      "aggs": {
        "aggs_by_event_type": {
          "terms": {
            "field": "event_type"
          }
        }
      }
    }
    
    
    GET /movies_index/movies/_search
    {
      "query": {"match_all": {}}
    }
    
    # 聚合,取出每个演员一共从参加了多少部电影
    GET /movies_index/movies/_search
    {
      "query": {
        "match_phrase": {
          "event_type_path": "/事件类型/恶意样本/"
        }
      }
    }
    
    # 每个演员参演的电影的平均分,并按评分排序
    GET /movies_index/movies/_search
    {
      "aggs": {
        "groupby_actor_id": {
          "terms": {
            "field": "actorList.name.keyword",
            "order": {
              "avg_score": "desc"
            }
          },
          "aggs": {
            "avg_score": {
              "avg": {
                "field": "doubanScore"
              }
            }
          }
        }
      }
    }
    
    
    
    
    
    
    GET /fmall_dau/_doc/_search
    {
      "aggs":{
        "groupby_logDate":{
          "terms":{
            "field":"logDate"
          }
        }
      }
    }
    
  • 相关阅读:
    UVA 12338
    最短路问题
    菜鸟调错(十)——启动Tomcat报错“Unsupported major.minor version xxx ”
    Servlet总结(一)
    <html>
    Android Developer:Allocation Tracker演示
    H2数据库集群
    安卓通过广播自己主动回填短信验证码
    江湖问题研究-- intent传递有没有限制大小,是多少?
    spring 配置文件被加载两次
  • 原文地址:https://www.cnblogs.com/cerofang/p/12330993.html
Copyright © 2020-2023  润新知