首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >solr DIH:生成标识值

solr DIH:生成标识值
EN

Stack Overflow用户
提问于 2020-10-26 08:42:17
回答 1查看 75关注 0票数 0

我需要将我的数据库数据导入solr。

我在用这个data-config.xml

代码语言:javascript
复制
<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:

代码语言:javascript
复制
<schema name="example-data-driven-schema" version="1.6">
  <uniqueKey>id</uniqueKey>
   ...

有什么想法吗?

编辑

我查过solrconfig.xml

代码语言:javascript
复制
<updateRequestProcessorChain name="files-update-processor">
    <!-- UUIDUpdateProcessorFactory will generate an id if none is present in the incoming document -->
    <processor class="solr.UUIDUpdateProcessorFactory" />

默认情况下,它在任何update上都是链接的

代码语言:javascript
复制
<initParams path="/update/**">
  <lst name="defaults">
    <str name="update.chain">files-update-processor</str>
  </lst>
</initParams>

这是否意味着在默认情况下生成uuid?

EN

回答 1

Stack Overflow用户

发布于 2020-10-26 09:12:23

UUID是通用唯一IDentifier的缩写。如果没有插入到solr中的文档的id,则可以使用它。

当您需要更新或删除文档时,unique id字段非常有用,因为Solr中的常规搜索不能唯一地标识文档。

solrconfig.xml中添加以下配置。

代码语言:javascript
复制
<updateRequestProcessorChain>
 
    <processor class="solr.UUIDUpdateProcessorFactory">
      <str name="fieldName">id</str>
    </processor>
 
    <processor class="solr.LogUpdateProcessorFactory" />
    <processor class="solr.RunUpdateProcessorFactory" />
  </updateRequestProcessorChain>
票数 0
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/64533828

复制
相关文章

相似问题

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