Solr 嵌套对象解析错误
Solr nested Object Parse Error
我在 Solr 中有一个嵌套对象,我在管理模式文件中使用模式。
但是 Solr 以扁平方式存储嵌套对象。
示例:-
{ "id": 1234,
"name":{
"fname":"Random",
"lastName":"Name"
}
}
管理模式文件
<field name="id" type="int" indexed="true" stored="true" required="true" multiValued="false" />
<field name="name" type="string" indexed="true" stored="true" required="true" multiValued="false" />
<field name="name.fName" type="string" indexed="true" stored="true" required="true" multiValued="false" />
<field name="name.lastName" type="string" indexed="true" stored="true" required="true" multiValued="false" />
什么时候在 Solr 中插入示例数据时将数据存储为这样
{"id":1234,
"name.fName":"Random",
"name.lastName":"Name"
}
所以当我从 solr 获取数据并尝试转换为我的 class 对象时,它给我解析错误 no value for key fName
请帮忙
谢谢
在 Solr 的 modelling/querying 嵌套对象中有 2 种主要可能的方法:
索引时间加入
暗示一个非常具体的索引策略,你必须索引整个块(子+父)
相当快
查询时间加入
- 您不需要遵循任何特定的索引策略,一切都会在查询时发生。
- 'slow'
在这两种情况下,您不需要任何奇特的方式来命名架构中的字段(嵌套对象功能与字段命名无关)。
我在 Solr 中有一个嵌套对象,我在管理模式文件中使用模式。 但是 Solr 以扁平方式存储嵌套对象。
示例:-
{ "id": 1234,
"name":{
"fname":"Random",
"lastName":"Name"
}
}
管理模式文件
<field name="id" type="int" indexed="true" stored="true" required="true" multiValued="false" />
<field name="name" type="string" indexed="true" stored="true" required="true" multiValued="false" />
<field name="name.fName" type="string" indexed="true" stored="true" required="true" multiValued="false" />
<field name="name.lastName" type="string" indexed="true" stored="true" required="true" multiValued="false" />
什么时候在 Solr 中插入示例数据时将数据存储为这样
{"id":1234,
"name.fName":"Random",
"name.lastName":"Name"
}
所以当我从 solr 获取数据并尝试转换为我的 class 对象时,它给我解析错误 no value for key fName
请帮忙 谢谢
在 Solr 的 modelling/querying 嵌套对象中有 2 种主要可能的方法: 索引时间加入
暗示一个非常具体的索引策略,你必须索引整个块(子+父)
相当快
查询时间加入
- 您不需要遵循任何特定的索引策略,一切都会在查询时发生。
- 'slow'
在这两种情况下,您不需要任何奇特的方式来命名架构中的字段(嵌套对象功能与字段命名无关)。