【问题标题】:Search elasticsearch all content from especific source从特定来源搜索弹性搜索所有内容
【发布时间】:2016-07-28 18:18:54
【问题描述】:

我想知道是否可以在 elasticsearch 中搜索来自特定_source 的所有内容。

例如我有这个:

{
"_shards":{
    "total" : 5,
    "successful" : 5,
    "failed" : 0
},
"hits":{
    "total" : 1,
    "hits" : [
        {
            "_index" : "twitter",
            "_type" : "tweet",
            "_id" : "1", 
            "_source" : {
                "user" : "kimchy",
                "postDate" : "2009-11-15T14:12:12",
                "message" : "trying out Elastic Search"
            }
        }
    ]
}

}

我想在不指定名称的情况下从源查询所有用户。

例如:SQL中类似的东西是这样的

SELECT * user from twitter

然后给所有用户

感谢和抱歉我的英语不好

编辑: 我只想搜索来源。 我举个例子,我有一个存储随机单词的来源,有时存储,有时不存储。我只想在有新词的时候搜索这个来源。

如果在我的特定来源中有新的东西,计划从最后 10 分钟开始验证,如果没有,我不在乎

【问题讨论】:

  • 我不太明白你的问题,你的 sql 命令让我很困惑。考虑到 Twitter 是你的表和用户,postdate 和 message 是你的列,你想从表中选择用户列吗?尝试给出一个更具体的示例,其中包含数据集的预期结果。
  • 在我的弹性搜索中存在接收信息的来源,如果该来源有任何新信息,我想定期验证。如果此来源有任何新内容,我想在 10 分钟内检查 10 个
  • 好的,我想出了怎么做,我只需要在搜索上加上时间戳,在这个 curl -XGET 'localhost:9200/twitter/_search' 我想要从过去 10 分钟开始的这条线搜索,它可能吗?

标签: elasticsearch


【解决方案1】:

你可以:

$ curl -XGET 'http://localhost:9200/twitter/_search'

默认情况下将返回10 文档。您可以指定size:

$ curl -XGET 'http://localhost:9200/twitter/_search?size=BIGNUM'

或者你可以使用scrool:https://www.elastic.co/guide/en/elasticsearch/reference/current/search-request-scroll.html

【讨论】:

  • 感谢您的回答,但我只想搜索来源。我给你一个例子,我有一个存储随机单词的来源,有时存储,有时不存储。我只想在有新词时搜索这个来源。如果在我的特定来源中有新的东西,则计划从最后 10 分钟开始验证,我不在乎,我不在乎
猜你喜欢
  • 1970-01-01
  • 2018-10-26
  • 2019-03-08
  • 2018-05-12
  • 2021-11-23
  • 1970-01-01
  • 2016-10-08
  • 1970-01-01
  • 1970-01-01
相关资源
最近更新 更多