2016-04-23 58 views
2

我有一个简单的问题。我将包含多个字段的JSON文件编入索引到Elasticsearch。如何说ElasticSearch到忽略(不要索引并存储它们)来自传入文件的已定义字段组或仅与定义的字段组一起工作?这可能通过使用映射?Elasticsearch - 忽略来自索引文件的字段

例如:我有JSON文件是这样的:

{ 
    "id": 123456789, 
    "name": "Name value", 
    "screenName": "Nick name", 
    "location": "Location value", 
    "description": "Description text", 
    "url": "url value", 
    "anotherField": 456789, 
    "status": null, 
    "anotherField2": "9AE4E8", 
    "color": "333333", 
    ....... 
} 

现在我想Elasticsearch仅适用领域(例如)“ID,名称,描述,位置,状态,网址”和ingnore其他领域。

任何帮助?谢谢。

+0

如何在ES中加载这些文档?通过logstash? – Val

+0

我通过使用HttpClient一个接一个地从另一个JAVA应用程序发送它们。 – user1827257

回答

1

当您使用DTO(POJO)将数据序列化为json时,如果您使用的是Jackson序列化器/解序器,则可以使用@Jsonignore注释标记您不想索引的字段。

例如:@JsonIgnore private Date creationDate;

package com.fasterxml.jackson.annotation;