ES基本使用笔记

1、解决es查询默认10条的方法

创建索引时设置

PUT /index_name
{
   "settings":{
       "index":{
           "number_of_shards":3,
           "number_of_replicas":1,
           "max_result_window":"2"
       }
   }
}

索引存在,修改

PUT /index_name/_settings?preserve_existing=true
{
 "max_result_window" : "2147483646"
}

2、在linux下curl操作

例如删除索引数据

curl -XPOST http://127.0.0.1:19200/index_name/type_name/_delete_by_query?conflicts=proceed -d '{"query":{"match_all":{}}}'

3、es中的GET方式查询也可以使用POST

4、创建索引及mapping,curl的方式

curl -XPUT http://127.0.0.1:19200/index_name/ -d '{"settings":{"index":{"number_of_shards":3,"number_of_replicas":1,"max_result_window":"2147483646"}},"mappings":{"info":{"properties":{"month_time":{"type":"keyword"},"city":{"type":"keyword"},"business_type":{"type":"integer"},"merchant_id":{"type":"long"},"buy":{"type":"keyword"},"loyal":{"type":"keyword"},"sensitive":{"type":"keyword"},"life":{"type":"keyword"},"id":{"type":"keyword"}}}}}'

5、一个比较好的聚合分析DSL

GET index_name/type_name/_search
{
  "query": {
    "bool": {
      "must": [
        {
          "match": {
            "merchant_id": 1
          }
        }
      ],
      "filter": {
        "range": {
          "order_time": {
            "gte": "2019-11-14",
            "lte": "2019-11-16"
          }
        }
      }
    }
  },
  "size": 0,
  "aggs": {
    "jobx": {
      "terms": {
        "field": "name",
        "order": [
          {
            "a": "desc"
          }
        ],
         "size":1
      },
      "aggs": {
        "userdetail": {
          "top_hits": {
            "size": 10
          }
        },
        "a": {
          "sum": {
            "field": "count"
          }
        },
        "b":{
          "sum": {
            "field": "merchant_id"
          }
        }
      
      }
    }
  }
}
发布了7 篇原创文章 · 获赞 1 · 访问量 6237

猜你喜欢

转载自blog.csdn.net/u010342147/article/details/103887952