验证数据库由Elasticsearch编制索引

时间:2013-07-02 11:54:11

标签: elasticsearch

我正在使用Elasticsearch来索引和搜索我的数据库...

  1. 如何验证数据库是否已编入索引?
  2. 如果我使用以下命令:

    curl -XGET'http://localhost:9200/_search?q=whatever'

  3. 结果是:

    {
      "took": 4,
      "timed_out": false,
      "_shards": {
        "total": 6,
        "successful": 6,
        "failed": 0
      },
      "hits": {
        "total": 0,
        "max_score": null,
        "hits": []
      }
    }
    

    如何解释这些结果?

2 个答案:

答案 0 :(得分:0)

  1. 要检查您的数据库是否已编入索引,可以尝试以下命令:

    curl -XGET 'http://localhost:9200/_aliases'?pretty=true 在那里你可以看到索引列表并检查你的索引是否已编入索引。

  2. 您使用的命令基本上会在所有索引中搜索关键字“whatever”。 但它无法找到任何东西。因此,您将获得以下输出: 搜索成功(由“take”描述:4,“timed_out”:false,“_ shards”:“total”:6,“成功”:6,“失败”:0})但它没有找到任何东西(描述) by“hits”:{“total”:0,“max_score”:null,“hits”:[]})

答案 1 :(得分:0)

您可以使用该命令获取数据库中存在的索引列表。您可以查看列表中是否存在索引。这表明索引已经创建。

curl -XGET 'localhost:9200/_cat/indices?v&pretty'

检查索引中是否有任何条目。您可以使用此命令获取所有文档的列表。

curl -XGET 'localhost:9200/INDEX_NAME/_search?v&pretty'

在您发布的问题中。 “_shards”{     “total”:给出索引中有多少条目(这里有6个)   } “命中”:{     “total”:为您提供与您的搜索匹配的条目与关键字(0) }