首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >无法链接Dataimporthandler和schemaless以添加未知字段

无法链接Dataimporthandler和schemaless以添加未知字段
EN

Stack Overflow用户
提问于 2016-06-21 21:42:32
回答 1查看 325关注 0票数 0

我被链接到无模式模式下的dataimporthandler。将配置参数“add -unknown-fields to -the-schema”添加到dataimporthandler中,如下所示,并配置所有内容。Dataimporthandler导入数据并且工作正常,但是solr不能将未知字段添加到模式中。它只适用于现有字段。这是dataimporthandler对请求的回答。

{ "responseHeader": { "status": 0, "QTime": 0 }, "initArgs": [ "defaults", [ "update.chain", "add-unknown-fields-to-the-schema", "config", "db-data-config.xml" ] ], "command": "status", "status": "idle", "importResponse": "", "statusMessages": { "Total Requests made to DataSource": "1", "Total Rows Fetched": "273", "Total Documents Processed": "273", "Total Documents Skipped": "0", "Full Dump Started": "2016-06-21 13:29:48", "": "Indexing completed. Added/Updated: 273 documents. Deleted 0 documents.", "Committed": "2016-06-21 13:29:49", "Time taken": "0:0:0.543" } }

您可以看到我的配置是正确的。下面是solrconfig文件。

代码语言:javascript
复制
<requestHandler name="/dataimport"   class="solr.DataImportHandler">
    <lst name="defaults">
         <str name="update.chain">add-unknown-fields-to-the-schema</str>
         <str name="config">db-data-config.xml</str>
   </lst>

我希望能够添加来自数据库的未知字段。

EN

回答 1

Stack Overflow用户

发布于 2016-06-22 22:19:17

DataImportHandler优先于无模式模式。如果您正在尝试自动映射它(列名到字段名),则实现它是为了检查该字段是否存在于模式中,以了解如何映射它。这样,您就能够在模式中只定义您想要的字段,而忽略其余字段。它不知道无模式模式可以弥补这一点,也不提供任何字段排除的替代机制(如果默认接受每个字段,则需要这种机制)。

如果您在DIH中显式地定义了字段映射,那么它应该可以工作。

如果您确实不知道将拥有什么字段,最好从数据库内容生成CSV、XML或JSON文件并将其推送到Solr,而不是使用DIH拉取它。

票数 2
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/37946150

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档