gpt4 book ai didi

javascript - 如何向 ElasticSearch 添加新字段?

转载 作者:搜寻专家 更新时间:2023-10-30 21:49:43 25 4
gpt4 key购买 nike

我正在尝试向 elasticsearch 添加一个新字段 - 称为“dateAdded”,它也将用于对数据进行排序。不确定如何使用 nodejs。

我在看这里?

https://www.elastic.co/guide/en/elasticsearch/reference/current/docs-update.html

我只看到一个使用 curl 的示例,我如何使用带有此模块的 nodejs 来实现 - https://github.com/elastic/elasticsearch-js

这是我最初索引它的方式:

esclient.index({  
index: 'projects',
type: 'project',
id: projectIdStr,
body: {
"title": proj.title,
"company": proj.company,
"tags": proj.tagsArray,
"defaultPicId": proj.defaultPicId
}
},function(err,resp,status) {
if(err) { console.log(err);} else {

//stored
}

});

最佳答案

根据您的 elasticsearch 集群的设置方式,答案会略有不同。

如果您有默认设置,那么您将启用动态映射。如果是这种情况,那么添加一个新字段就像索引一个包含该字段的文档一样简单,elasticsearch 将推断什么样的映射是合适的并将该字段添加到该类型的映射中。

https://www.elastic.co/guide/en/elasticsearch/guide/current/dynamic-mapping.html

如果你关闭了动态映射,那么你只需要在类型上执行一个 PUT 映射命令

PUT indexname/_mapping/mytype 
{
"properties": {
"dateAdded": {
"type": "date",
"format": "dateOptionalTime"
}
}
}

看看这个:https://www.elastic.co/guide/en/elasticsearch/reference/current/indices-put-mapping.html

因此,考虑到这一点,如果您设置了动态映射,则只需使用更新 API,它就会为您计算出新的映射。

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

关于javascript - 如何向 ElasticSearch 添加新字段?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/41009290/

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