更改每个文档中的数据
Changing data in every document
我正在开发一个包含消息的应用程序,我想存储所有消息。但我的问题是消息的发件人名字和姓氏可能会更改。例如,如果我的 JSON 是
{
"subject": "Hello!",
"message": "Hello there",
"from": {
"user_id": 1,
"firstname": "George",
"lastname": "Lastgeorge"
}
}
用户可能会更改他们的姓氏甚至名字。这基本上需要遍历 elasticsearch 中的每条记录并使用 user_id.
更新每个人
有没有更好的方法来做到这一点?
我觉得你应该使用父映射。
将用户信息作为父级,以用户 ID 作为键。
/index/userinfo/userID
{
"name" : "George",
"last" : "Lastgeorge"
}
接下来,您需要将每个聊天记录作为子文档进行维护,并将父文档映射到 userindo 类型。
这样,每当您想对用户信息进行一些更改时,只需更改 userInfo 类型即可。
保留此功能后,您可以根据用户信息搜索您的日志,或根据聊天记录搜索用户。
Link - http://www.elasticsearch.org/guide/en/elasticsearch/guide/current/parent-child.html
我正在开发一个包含消息的应用程序,我想存储所有消息。但我的问题是消息的发件人名字和姓氏可能会更改。例如,如果我的 JSON 是
{
"subject": "Hello!",
"message": "Hello there",
"from": {
"user_id": 1,
"firstname": "George",
"lastname": "Lastgeorge"
}
}
用户可能会更改他们的姓氏甚至名字。这基本上需要遍历 elasticsearch 中的每条记录并使用 user_id.
更新每个人有没有更好的方法来做到这一点?
我觉得你应该使用父映射。 将用户信息作为父级,以用户 ID 作为键。
/index/userinfo/userID
{
"name" : "George",
"last" : "Lastgeorge"
}
接下来,您需要将每个聊天记录作为子文档进行维护,并将父文档映射到 userindo 类型。 这样,每当您想对用户信息进行一些更改时,只需更改 userInfo 类型即可。
保留此功能后,您可以根据用户信息搜索您的日志,或根据聊天记录搜索用户。
Link - http://www.elasticsearch.org/guide/en/elasticsearch/guide/current/parent-child.html