使用 Index API 同步将数千条记录索引到 Elasticsearch 是正确的方法吗?
Indexing thousands of records into Elasticsearch using Index API synchronous is right approach?
我正在尝试将 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
我正在尝试将 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