我正在使用默认机制(不传递任何架构/结构)索引数据。我只是 XPOST JSON 文档。
我想使用:
- 一个单一的索引
- 各种类型,但不依赖于数据本身
我遇到的问题是我的 JSON 文档有一个特定的属性,它有时会递归地嵌套自己。当它发生时,ElasticSearch 在数据索引 PUT 操作上出错。
此类属性的内容对于我的搜索/索引目的并不重要。我知道我可以将它从数据中排除,但我仍然希望它像 NoSQL 解决方案一样存储。
例子:
{ prop1 :“某物”,dirty_prop :{ someprop :123 ,dirty_prop :{ .... } } }
从上面可以看出,有一个嵌套的包含,它将失败。
问题是:如何避免错误,保留数据。我 认为从索引中删除dirty_prop将允许它通过。什么是排除它的最简单方法,而不必提供完整的结构(我无法提供完整的结构/模式,因为我在数据中获得了新属性)。