23

Tôi đã gặp sự cố khi tôi muốn thêm một chuỗi ngày giờ vào Elasticsearch.Định dạng ngày cửa hàng trong elasticsearch

Tài liệu này là dưới đây:

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

Tài liệu này đưa ra một lỗi đó là "NumberFormatException" [For input string: \"20130724 00:00:00\"]

tôi biết rằng tôi có thể sử dụng định dạng ngày trong Elasticsearch, nhưng tôi không biết làm thế nào để sử dụng ngay cả Tôi đọc tài liệu trên trang web.

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

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

là sai.

Làm cách nào để chuyển chuỗi ngày giờ thành định dạng ngày trong Elasticsearch?

Làm cách nào để lưu trữ chuỗi ngày giờ trực tiếp vào Elasticsearch?

+1

người ta có thể sử dụng ống đôi để hỗ trợ nhiều định dạng. ví dụ. "yyyMMdd || yyyy-MM-dd" –

Trả lời

27

Bạn sắp hoàn tất. Thiết lập bản đồ của bạn như thế này:

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

Đọc các tài liệu trên the date mapping and its optionsthe date format parameter (một trong các tùy chọn để lập bản đồ ngày).

Chúc may mắn!

+0

Cách "định dạng" biết chuỗi ngày giờ là "2013/07/24 00:00:00"? Hoặc nó sẽ sử dụng datetime bây giờ? Tôi thay đổi thành "LastUpdate": {"type": "date", "format": "yyyy/MM/dd HH: mm: ss"}, nó đưa ra một lỗi khác là "ElasticSearchIllegalArgumentException [unknown property [type]]" –

+0

Đó là bản đồ tôi đã đưa ra. Định dạng '" định dạng ":" yyyy/MM/dd HH: mm: ss "' yêu cầu elasticsearch chấp nhận ngày ở định dạng đó. – ramseykhalaf

+0

Làm cách nào để tôi có thể đẩy/cho phép elasticsearch biết dữ liệu là gì? –