愚者求师之过,智者从师之长。

求指导这2种聚合查询的区别与性能

Elasticsearch | 作者 kkyxch | 发布于2017年06月22日 | 阅读数:3041

我是 ES新人。有2个问题请教:
1.一下2种查询的格式是相同的意思吗?但是我查出的结果不太一样
{
  "size": 0,
  "aggs": {
    "eee": {
      "filter": {
        "term": {
          "tags": "nginx_cms_log"
        }
      },
      "aggs": {
        "xxx": {
          "range": {
            "field": "@timestamp",
            "ranges": [
              {
                "from": "now-1m",
                "to": "now"
              }
            ]
          },
          "aggs": {
            "ccc": {
              "cardinality": {
                "field": "client_ip.keyword"
              }
            }
          } 
      }
    }
}
}
}

{
  "size": 0,
  "query": {
    "range": {
      "@timestamp": {
        "gte": "now-1m",
        "lte": "now"
      }
    }
  }, 
  "aggs": {
    "eee": {
      "filter": {
        "term": {
          "tags": "nginx_cms_log"
        }
      },
      "aggs": {
        "ccc": {
          "cardinality": {
            "field": "client_ip.keyword"
          }
        }
      }
    }
}
}
 
第二个问题:
我把nginx日志按照日期做了索引,但是es是utc格式,生成索引是本地时间,导致当天0-8点的数据存到了前一天的里面,kibana可以自动处理,但是我通过python去当天的索引的时候,0-8点就没有数据了,有什么好的解决办法吗?
非常感谢!!!
 
 
 
 
 
已邀请:

要回复问题请先登录注册