2016-11-29 69 views
4

是否可以從Elastic Search(最好在Java API中)獲取當前日期和時間?ElasticSearch - 如何獲取當前日期和時間?

我到處搜索了很長時間,但發現只有Range Queries可以對某些日期字段執行數學運算,並且可以使用腳本字段,但是我找不到任何用於返回當前日期的腳本。我所要求的是類似於SQL的()。

謝謝你的時間。

+0

爲什麼你需要那個?這是一個不尋常的要求。 –

+0

我們正在做應用程序集羣,我需要確保所有集羣在相同的日期和時間運行。在使用常規數據庫的其他項目(以及它們的日期/時間)中,一切正常並且很好用。 – Sikor

+0

這種事/同步通常在系統級完成(使用ntp之類的),不是嗎? – Val

回答

0

在檢測(沒有指定的ES版本,這個工程對2.3.2):

GET your_index/_search 
{ 
    "size": 1, 
    "script_fields": { 
    "now": { 
     "script": "new Date().getTime()" 
    } 
    } 
} 

在Java API,它會是這樣的(未測試):

yourSearchRequestBuilder.addScriptField("now", "new Date().getTime()"); 

這確實需要your_index中至少有1個文檔,這樣才能掛起腳本字段;這有點破解。