java—使用索引api同步将数千条记录索引到elasticsearch中是正确的方法吗?

xyhw6mcr  于 2021-06-10  发布在  ElasticSearch
关注(0)|答案(1)|浏览(328)

我正在尝试将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中索引的记录数是否匹配?

mklgxw1f

mklgxw1f1#

是的,这应该很好,但这将是一个缓慢的过程。还有一个批量索引api,您可以使用它一次索引多个文档,速度非常快。链接

相关问题