考虑MongoDB中的以下结构 -
人员收集:
{
_id: 1,
GivenName: John,
FamilyName: Smith
}
约会收集:
{
_id:105,
Appointment Type: Puncture Repair
PersonnelID: 1
AppointmentDatetime: ...
}
这两个都在elasticsearch中编入索引,目前只分别在人事和约会指数中。
我想要实现的是能够使用
查询elasticsearch“John smith穿刺修复”
并找到约会记录。
是否有可能实现这一目标,如何才能实现这一目标?我可以根据PersonnelID提供的参考创建某种组合索引吗?
答案 0 :(得分:1)
您可以在elasticsearch中使用父子映射
https://www.elastic.co/guide/en/elasticsearch/guide/current/parent-child-mapping.html
答案 1 :(得分:1)
Elasticsearch 2.x documentation州:
父项和子项使用相同的路由值 - 父项的_id - 因此它们都存储在同一个分片上
由于分片只能属于单个索引,因此父代和子代最终都在同一个索引中。这意味着您不能拥有单独的个人和约会索引,而应该是同一索引中的不同文档类型。