我的索引有两种类型:
marker
,包含字段name
和age
data
,字段name
,age
和car
marker
有20k个条目,data
- 200k。
我想了解这是否可以原生地发出类型
的查询在
中的条目匹配的所有条目data
中找到name
和age
与marker
一个例子,如果marker
有
"name": "john", "age": 23
"name": "john", "age": 30
"name": "monica", "age": 27
和data
"name": "john", "age": 30, "car": "renault"
"name": "john", "age": 30, "car": "peugeot"
"name": "john", "age": 99, "car": "fiat"
"name": "bob", "age": 42, "car": "fiat"
结果将是
"name": "john", "age": 30, "car": "renault"
"name": "john", "age": 30, "car": "peugeot"
因为只有这两个匹配marker
name
和age
的条目。
我打算在Python中通过获取markers
和data
中的所有内容来进行此匹配,咀嚼数据并将结果批量发回(到新索引)。在我看来,这是一种非常低效的方式来进行此类查询,特别是如果大小不是数千但是数以千万计的条目。
答案 0 :(得分:0)
那是不可能的。您需要使用嵌套或父/子文档(您目前不是)或使用两步过程(获取marker
中的所有值,然后将它们与data
匹配),但这么多条目都不实用。