23

我想在Elasticsearch中添加一個日期時間字符串時遇到問題。在elasticsearch中存儲日期格式

該文件下面是:

{"LastUpdate" : "2013/07/24 00:00:00"} 

這份文件提出了一個錯誤,是"NumberFormatException" [For input string: \"20130724 00:00:00\"]

我知道我可以使用Elasticsearch日期格式,但我不知道如何使用,甚至我在網站上閱讀了文檔。

{"LastUpdate": { 
    "properties": { 
     "type": "date", 
     "format": "yyyy-MM-dd"} 
    } 
} 

{"LastUpdate": { 
    "type": "date", 
    "format": "yyyy-MM-dd" 
    } 
} 

是錯誤的。

如何在Elasticsearch中將日期時間字符串轉換爲日期格式?

如何將日期時間字符串直接存儲到Elasticsearch中?

+1

可以使用雙管道來支持多種格式。例如「yyyMMdd || yyyy-MM-dd」 –

回答

27

你快到了。設置映射這樣的:

{"LastUpdate": { 
    "type" : "date", 
    "format" : "yyyy/MM/dd HH:mm:ss"} 
} 

閱讀the date mapping and its optionsthe date format parameter(選項到日期映射之一)的文檔。

祝你好運!

+0

「格式」如何知道日期時間字符串是「2013/07/24 00:00:00」?或者它現在會使用日期時間?我更改爲「LastUpdate」:{「type」:「date」,「format」:「yyyy/MM/dd HH:mm:ss」},它引發另一個錯誤,即「ElasticSearchIllegalArgumentException [unknown property [type]]」 –

+0

這是我給出的映射。 ''格式「:」yyyy/MM/dd HH:mm:ss「告訴elasticsearch接受該格式的日期。 – ramseykhalaf

+0

我該如何推/讓elasticsearch知道數據是什麼? –

相關問題