使用Spring使用来自JSON的文档填充ElasticSearch索引

时间:2016-08-05 10:44:53

标签: elasticsearch spring-data-elasticsearch

如何使用spring / spring-data-elasticsearch使用JSON文件中的多个文档填充ES中的现有索引?

修改

我知道ES BulkAPI和Spring的elasticsearchTemplate.bulkIndex(indexQueries); 然而,这种方法我必须自己处理JSON解析(I want to avoid this way)。但是,如果我们已经知道索引和映射,我想知道是否有更简单的东西只需要传递foo.json文件?

1 个答案:

答案 0 :(得分:0)

我认为春季数据弹性搜索中没有这样的功能。但你可以这样做: -

1.为索引设置正确的映射(使用json结构)

2.创建索引并放置映射。

3.使用JSON解析器并解析输入json文件,如下所示: -

     //parse json file
     JSONParser parser = new JSONParser();
     Object object = parser.parse(new FileReader("mydoc\\test.js"));
     JSONObject jsonData = (JSONObject) object;
     // index parsed contents
     IndexQuery indexQuery = new IndexQueryBuilder().withIndexName(indexName).
                        withSource(jsonData.toString()).build();
     elasticsearchTemplate.index(indexQuery);

我不确定这是否是你所看到的,但这仍然有帮助。