在Pentaho ElasticSearch更新期间搜索运行

时间:2013-03-06 20:09:01

标签: elasticsearch pentaho

我们正在使用ES来索引来自数据库的~1.5mil记录。为了填充索引,我们使用Pentaho ES组件,该组件设置为“如果存在则覆盖”(运行~15分钟)。此外,可以通过Java服务检索,更新或删除单个索引文档。

问题是,在完整的Pentaho更新运行期间ES会返回什么?例如,我们有1.5mil索引文档,版本= 1.下一次更新会将此版本更改为2.如果我们在Pentaho更新它时请求文档 - 我们会收到它的旧版本吗?该特定文件的服务将无法使用吗?另外,如果我们收到旧版本,新版本会在更新后立即可用,还是等到更新完整批次(pentaho组件分批发送5k行)?

Pentaho - 4.4

ElasticSearch - 0.19.4

Lucene - 3.6.0

1 个答案:

答案 0 :(得分:1)

  1. 如果新文档尚未提交,您将收到旧版本的文档。该服务将继续提供。
  2. 新版本将可用,具体取决于elasticsearch中的refresh_interval设置。默认为每1s
  3. 在数据加载期间,pentaho可能会转动refresh_interval。如果是这种情况,那么你将不得不等到pentaho直接调用refresh方法或直到它重置参数。

    您可以直接开始运行,然后通过以下方式检查refresh_interval的设置:

    curl -XGET "http://my-es-server:9200/my-index-name/_settings"