ElasticSearch结果的差异

时间:2013-06-19 17:44:01

标签: elasticsearch

我有一个相对简单的搜索索引,用于简单的纯文本查询。没有路由,自定义分析器或类似的东西。一个搜索实例/节点,一个索引。

我删除了索引中的文档,RESTfull API确认:

GET / INDEX_NAME / person / 464

{
  "_index": "INDEX_NAME",
  "_type": "person",
  "_id": "464",
  "exists": false
}

然而,文档是从简单的搜索返回的

POST / INDEX_NAME / person

{
  "query": {
    "bool": {
      "must": [
        {
          "query_string": {
            "default_field": "person.offices",
            "query": "Chicago"
          }
        }
      ]
    }
  }
}

返回的一行:

{
  "_index": "INDEX_NAME",
  "_type": "person",
  "_id": 464,
  "_score": null,
  "fields": [
    ...
  ]
}

我是ElasticSearch的新手,并认为在深入挖掘之前我终于掌握了基本概念。但我不确定为什么文档无法通过REST访问,但它仍然出现在结果中?

我也遇到了相反的问题,即从API返回文档但是它们没有在搜索中返回。为了清楚起见,我暂时考虑一个单独的问题,但我觉得这两个问题可能是相关的。

我的一部分想要删除我的索引并重建它,但我不想在几天内陷入相同的情况(我不确定这是否会有所帮助)。

关于为什么会出现这种差异的任何想法或指示?也许一个进程处于某种僵尸状态,而弹性搜索只需要重新启动?

0 个答案:

没有答案