gpt4 book ai didi

javascript - Elasticsearch 批量设置 _id

转载 作者:行者123 更新时间:2023-12-03 00:45:13 27 4
gpt4 key购买 nike

当我将文档添加到设置了 _id 的 elasticsearch 时,我得到:

Field [_id] is a metadata field and cannot be added inside a document. Use the index API request parameters.

使用 client.bulk

  const body = dataset.flatMap(doc => [{ index: { _index: 'myindex' } }, doc])  
const { body: bulkResponse } = await client.bulk({ refresh: true, body })

我没有看到在参数中放置 _id 的地方。

https://www.elastic.co/guide/en/elasticsearch/client/javascript-api/current/api-reference.html

我应该使用不同的方法吗?

谢谢。

最佳答案

它需要在命令部分里面,但是你还需要在doc中把它从源文档中移除:

                                                                        here
|
v
const body = dataset.flatMap(doc => [{ index: { _index: 'myindex', _id: doc._id } }, doc])
const { body: bulkResponse } = await client.bulk({ refresh: true, body })

关于javascript - Elasticsearch 批量设置 _id,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/63343237/

27 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com