solr有可能以更可原谅的方式索引文档吗?
目前,如果我尝试索引数据并且不适合百分之百的架构,我总是会得到SolrException。如果solr无论如何都可以索引文档并为不正确的字段打印例外,那会更好。
答案 0 :(得分:1)
如果您有权访问服务器solr正在运行,并且可以看到日志solr提供此信息。您可以在架构中放置一个设置,该架构捕获可在下载示例中找到的所有特定类型
catchall字段,包含所有其他可搜索的文本字段(已实现 通过此架构中的copyField进一步
<field name="text" type="text_general" indexed="true" stored="false" multiValued="true"/>
答案 1 :(得分:0)
在@Si Philp的答案上稍微扩展一下。如果查看Solr发行版附带的示例schema.xml,您将看到以下条目:
<!-- uncomment the following to ignore any fields that don't already match an existing
field name or dynamic field, rather than reporting them as an error.
alternately, change the type="ignored" to some other type e.g. "text" if you want
unknown fields indexed and/or stored by default -->
<!--dynamicField name="*" type="ignored" multiValued="true" /-->
<!-- since fields of this type are by default not stored or indexed,
any data added to them will be ignored outright. -->
<fieldtype name="ignored" stored="false" indexed="false" multiValued="true"
class="solr.StrField" />
这将在您的架构中为尚未定义的任何字段创建动态定义,它们将被忽略。但是,它不会为您提供任何被忽略的字段/值的指示。