我需要将我的数据库数据导入solr。
我在用这个data-config.xml
<dataConfig>
<dataSource driver="org.hsqldb.jdbcDriver" url="jdbc:sqlserver://192.168.122.1;databaseName=giac_txt" user="sa" password="StR0nGp4ss."/>
<document>
<entity name="item" query="select codi_unitat, titol from anc_uniciac>
<field column="codi_unitat" name="code_l_ns"/>
<field column="titol" name="title_txt_ca" />
</entity>
</document>
</dataConfig>当我需要生成id时会出现问题,因为我的模式需要和id:
<schema name="example-data-driven-schema" version="1.6">
<uniqueKey>id</uniqueKey>
...有什么想法吗?
编辑
我查过solrconfig.xml了
<updateRequestProcessorChain name="files-update-processor">
<!-- UUIDUpdateProcessorFactory will generate an id if none is present in the incoming document -->
<processor class="solr.UUIDUpdateProcessorFactory" />默认情况下,它在任何update上都是链接的
<initParams path="/update/**">
<lst name="defaults">
<str name="update.chain">files-update-processor</str>
</lst>
</initParams>这是否意味着在默认情况下生成uuid?
发布于 2020-10-26 09:12:23
UUID是通用唯一IDentifier的缩写。如果没有插入到solr中的文档的id,则可以使用它。
当您需要更新或删除文档时,unique id字段非常有用,因为Solr中的常规搜索不能唯一地标识文档。
在solrconfig.xml中添加以下配置。
<updateRequestProcessorChain>
<processor class="solr.UUIDUpdateProcessorFactory">
<str name="fieldName">id</str>
</processor>
<processor class="solr.LogUpdateProcessorFactory" />
<processor class="solr.RunUpdateProcessorFactory" />
</updateRequestProcessorChain>https://stackoverflow.com/questions/64533828
复制相似问题