问题描述
我正试图将超过7000条记录索引到elasticsearch中。我将根据长度从JSonarray中选择所有记录,然后遍历数组,并使用Indexrequest API将记录逐一索引到elasticsearch中。由于我是Elastisearch的新手,所以我想确认这是正确的方法。我在下面给出了我的代码。
for (int i = 0; i < odsData.size(); i++) {
IndexRequest request = new IndexRequest(ConstantsHelper.INDEX_NAME + strDate);
request.id();
String jsonString = odsData.get(i).toString();
request.source(jsonString,XContentType.JSON);
IndexResponse indexResponse = client.index(request,RequestOptions.DEFAULT);
}
采用这种正确的方法吗?我也想检查一下数组中的记录数,一旦完成索引,Elasticsearch中索引的记录数是否匹配?
解决方法
是的,应该可以正常工作,但这将是一个缓慢的过程。还有一个批量索引API,可用于一次快速索引多个文档。 Link