2016-11-29 5 views
4

Возможно ли получить текущую дату и время от Elastic Search (желательно в Java API)?ElasticSearch - Как получить текущую дату и время?

Я искал всюду и довольно долгое время, но нашел только, что запросы диапазона могут выполнять математику в некоторых полях даты, и возможно использование полей сценария, но я не мог найти сценарий для возвращения текущей даты. Все, что я прошу, похоже на SQL's now().

Спасибо за ваше время.

+0

Зачем вам это нужно? Это необычный запрос. –

+0

Мы выполняем кластеризацию приложений, и мне нужно убедиться, что все кластеры работают в одни и те же дату и время. Все работает отлично и денди в других проектах, которые используют обычные базы данных (и их дату/время). – Sikor

+0

Такая вещь/синхронизация обычно выполняется на системном уровне (используя ntp и т. П.), Не так ли? – Val

ответ

0

В Sense (вы не указали версию ES, это работает против 2.3.2):

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

В API Java, это было бы что-то вроде (не проверено):

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

Это требует, чтобы в your_index было по крайней мере 1 документ, чтобы можно было повесить поле сценария; это немного взломать.

Смежные вопросы