ApacheSolr7.4:使用_儿童文件;没有工作,文档仍然是扁平的
我的用例是这样的:我有一个父->子->孙层次结构 我希望以嵌套方式接收文档,并希望执行块连接查询以检索特定父级的所有孙子、特定父级的所有子级等 我已经在模式中定义了适当的字段(使用curl),并根据应用程序的需要复制字段和字段类型。我还将“文本”定义为所有内容的副本字段,因为我必须支持随机搜索 我已将要摄取的文档定义如下:ApacheSolr7.4:使用_儿童文件;没有工作,文档仍然是扁平的,apache,solr,Apache,Solr,我的用例是这样的:我有一个父->子->孙层次结构 我希望以嵌套方式接收文档,并希望执行块连接查询以检索特定父级的所有孙子、特定父级的所有子级等 我已经在模式中定义了适当的字段(使用curl),并根据应用程序的需要复制字段和字段类型。我还将“文本”定义为所有内容的副本字段,因为我必须支持随机搜索 我已将要摄取的文档定义如下: { "id": "3443", "path": "1.employee", "employeeId": 3443, "employeeName": "Tom", "
{
"id": "3443",
"path": "1.employee",
"employeeId": 3443,
"employeeName": "Tom",
"employeeCounty": "Maricopa",
"_childDocuments_": [{
"id": "3443.54545454",
"path": "2.employee.assets",
"assetId": 54545454,
"assetName": "Lenovo",
"assetType": "Laptop",
"_childDocuments_": [{
"id": "3443.54545454.5764646",
"path": "3.employee.assets.assetType",
"processorId": 5764646,
"processorType": "Intel core i7"
}]
}]
}
现在,当我使用管理UI进行查询时,我得到了以下扁平化对象,并且块连接查询也不起作用:
{
“负责人”:{
“状态”:0,
“QTime”:0,
“参数”:{
“q”:“*:*”,
"_":"1533252181415"}},
“响应”:{“numFound”:1,“start”:0,“docs”:[
{
“id”:“3443”,
“雇员ID”:3443,
“文本”:[“3443”,
“汤姆”,
“马里科帕”],
“雇员姓名”:“汤姆”,
“雇员县”:“马里科帕”,
“_childDocuments_.id”:[3443.5454,
3443.643534544],
“\u childDocuments\u.path”:[“2.employee.assets],
“_childDocuments_.assetId”:[5454,
643534544],
“\u childDocuments\uu.assetName”:[“Lenovo”],
找到了解决方案。我使用了错误的URL发布。
我正在使用http://localhost:8983/solr/my-core/update/json/docs
相反,我应该只使用http://localhost:8983/solr/my-核心/更新
因为我已经将文档格式化为Solr格式,Solr不需要对其进行任何特殊处理来编制索引。找到了解决方案。我使用了错误的URL发布。 我正在使用
http://localhost:8983/solr/my-core/update/json/docs
相反,我应该只使用http://localhost:8983/solr/my-核心/更新
因为我已经在用Solr格式格式化文档,Solr不需要做任何特殊的处理来索引它