2014-04-11 69 views
0

在我的ElasticSearch索引中我有一個帶有日期字段的類型。我想獲得這一領域的統計數據,例如最大和最小日期,每月/每年發佈多少文件。我想下面的查詢:ElasticSearch日期字段統計

"query":{ 
     "match_all": {} 
    }, 
    "facets":{ 
     "histo1":{ 
      "date_histogram":{ 
       "field":"published_date", 
       "interval":"year"} 
       } 
      } 

但它返回我,我不知道如何解釋數據:

"facets" : { 
"histo1" : { 
    "_type" : "date_histogram", 
    "entries" : [ { 
    "time" : -946771200000, 
    "count" : 23957 
    }, { 
    "time" : -915148800000, 
    "count" : 45362 
    }, { 
    "time" : -883612800000, 
    "count" : 34568 
    }] 
} 

我本來期望看到每年的數量,時間價值似乎像一個黑匣子。我有什麼錯誤嗎?當我嘗試使用月份時,我也會得到相同的結果。

非常感謝!

回答

1

Elasticsearch Reference for Date Histogram Facet

默認情況下,時間被存儲爲自紀元以來的UTC毫秒。因此,所有的計算和「bucketing」/「舍入」都是在UTC上完成的。可以提供時區(預舍入和後舍入)值,這將導致所有計算考慮相關區域。每個桶/條目返回的時間是自提供時區開始的毫秒數。

您將需要將time構面值從它們的毫秒數轉換爲後期搜索請求操作,以使它們成爲更優選的格式。

相關問題