Solr DataImportHandler增量导入查询

Jas*_*son 12 solr

Solr 1.4数据导入处理程序的delta导入语法最多允许4个查询(query,deltaImportQuery,deltaQuery和parentDeltaQuery),但我不清楚"查询"查询的用法.

在以下示例中,"query"查询与没有where子句的deltaImportQuery相同.

<entity name="data-table" pk="id"
        query="select id,Subject,Text,UserID,CreatedDate,TopicID,TopicType,EPiPageID,ForumID,Room1ID,Room1Name,LastModifiedDate from dbo.CustomForumPosts"
        deltaImportQuery="select id,Subject,Text,UserID,CreatedDate,TopicID,TopicType,EPiPageID,ForumID,Room1ID,Room1Name,LastModifiedDate from dbo.CustomForumPosts where id='${dataimporter.delta.id}'"
        deltaQuery="select id from dbo.CustomForumPosts where LastModifiedDate > '${dataimporter.last_index_time}'">            
</entity>
Run Code Online (Sandbox Code Playgroud)

我不明白为什么或者如果我需要"查询"查询 - 它似乎只是描述了这个delta的完全导入等价物.谁能解释一下?

Joh*_*n P 22

查询是指您在暗示时执行完全导入时使用的查询.文件说:

  • 查询提供了在完全导入时填充Solr文档的字段所需的数据
  • deltaImportQuery提供在运行delta-import时填充字段所需的数据
  • deltaQuery给出了当前实体的主键,它们自上一个索引时间以来发生了变化

http://wiki.apache.org/solr/DataImportHandler#Using_delta-import_command