嵌套限制/级别是否可以在Elasticsearch中嵌套对象的深度?
目前有些结构有3层深,例如:x.y.z
,因此我对一般情况提出质疑。
答案 0 :(得分:0)
嵌套没有限制。基本上,任何有效的JSON文档都可以存储在ES中。
您可能遇到的唯一限制可能是在检索深度嵌套的文档时,您希望使用特定于语言的解析器进行解析,例如PHP的json_decode
,默认情况下仅支持512个级别,虽然你可以调整它。
但如果你达到那么多级别,你可能需要重新考虑你的文档设计; - )
您需要考虑的另一个限制是,在任何不同级别具有相同名称的两个字段将需要have the exact same mapping(即相同的字段类型)。具体而言,您不能让x.y.z
成为123(integer
)而a.b.c.d.z
成为“猫”(即string
)