我试图将数据从Oracle数据库导入到SOLR索引。 Dabatase实体确实具有lat / long值,索引中的文档应具有字段位置。因此,data-config.xml中的相应配置是
<field column="LONGITUDE" name="long_d" />
<field column="LAT" name="lat_d" />
<field column="bl" name="position" template="${data.LAT},${data.LONGITUDE}"/>
其中 position 字段定义为
<field name="position" type="location_rpt" indexed="true" stored="true" multiValued="false"/>
schema.xml文件中的。
我遇到的问题是严重选择了lat和long的数据库条目的默认值999.9,而DIH不接受它作为位置字段的导入值。
所以我的目的是只要DB条目有错误的默认值就省略字段 position 。
我可以在DataImportHandler的配置文件中定义哪些内容可以提供我想要的结果吗?
答案 0 :(得分:0)
您可以在两个阶段中应用更改:
因此,例如,您可以使用RegexTransformer用空格替换已知的错误值。如果(空白但存在的字段)导致问题,您可以在自定义链中使用RemoveBlankFields删除它们。