Elasticsearch父子映射和索引



我一直在关注这本书"Elasticsearch:最终指南";。这本书已经过时了,当有些东西不起作用时,我会在互联网上搜索,并使其与新版本一起使用。但我找不到任何有用的父子映射和索引。

例如:

{
"mappings": {
"branch": {},
"employee": {
"_parent": {
"type": "branch" 
}
}
}
}

如何在新版的Elasticsearch中表示以下映射。以及我如何索引以下父级:

{ "name": "London Westminster", "city": "London", "country": "UK" }

和以下子代:

PUT company/employee/1?parent=London
{
"name": "Alice Smith",
"dob": "1970-10-24",
"hobby": "hiking"
}

此外,我正在使用elasticsearch python客户端,并在其中提供示例将不胜感激。

已删除_parent字段以支持join字段

联接数据类型是一个特殊字段,用于创建父/子同一索引的文档内的关系。关系部分在文档中定义一组可能的关系,每个关系关系是父名称和子名称。

company视为父级,将employee视为其子级

索引映射:

{
"mappings": {
"properties": {
"my_join_field": { 
"type": "join",
"relations": {
"company": "employee" 
}
}
}
}
}

company上下文中的父文档

PUT /index-name/_doc/1
{
"name": "London Westminster",
"city": "London",
"country": "UK",
"my_join_field": {
"name": "company"
}
}

子文档

PUT /index-name/_doc/2?routing=1&refresh
{
"name": "Alice Smith",
"dob": "1970-10-24",
"hobby": "hiking",
"my_join_field": {
"name": "employee",
"parent": "1"
}
}

最新更新