使用Java API的Elasticsearch

斯蒂芬赛

嗨,我正在尝试通过遵循sql查询对弹性搜索进行查询,并且我想使用Java API来实现相同的逻辑

select * from log , web where l.loghost = w.webhost and @datetime between '2016-05-20' AND '2016-05-25' 

log并且web是不同的类型,并且索引设置为logstash-log-*logstash-web*@timestamp格式如下"2016-05-20T17:14:01.037Z"

现在我有以下Java代码,但我不知道如何在两个日期之间进行设置,因此它不返回预期的输出

  SearchResponse response = client.prepareSearch("logstash-log-*","logstash-web-*")
   .setTypes("log","web")
  .setSearchType(SearchType.DFS_QUERY_THEN_FETCH)
  .setFetchSource(new String[]{"*"}, null)
 .setQuery(QueryBuilders.queryStringQuery("1.2.3.4").field("*_host"))// Query
  .execute()
 .actionGet();

请指导我是弹性搜索的新手。提前致谢。

您需要将range查询query_string查询内的bool/filter查询结合起来

QueryStringQueryBuilder qs = QueryBuilders.queryStringQuery("1.2.3.4").field("*_host");
RangeQueryBuilder range = QueryBuilders.rangeQuery("@timestamp")
    .gte("2016-05-20T00:00:00.000Z")
    .lte("2016-05-25T00:00:00.000Z");

接着

...
.setQuery(QueryBuilders.boolQuery().filter(qs).filter(range))
...

本文收集自互联网,转载请注明来源。

如有侵权,请联系[email protected] 删除。

编辑于
0

我来说两句

0条评论
登录后参与评论

相关文章

来自分类Dev

使用Java API的Elasticsearch

来自分类Dev

使用Java API的Elasticsearch聚合

来自分类Dev

ElasticSearch Java API与ElasticsearchTemplate

来自分类Dev

Elasticsearch搜索Java API

来自分类Dev

Elasticsearch Java验证API

来自分类Dev

Elasticsearch搜索Java API

来自分类Dev

elasticsearch JSON Java API

来自分类Dev

ElasticSearch Java API与ElasticsearchTemplate

来自分类Dev

通过插件使用ElasticSearch Java Client API

来自分类Dev

使用Elasticsearch Java API中的建议

来自分类Dev

使用Eclipse通过JAVA API访问Elasticsearch

来自分类Dev

使用Java API获取Elasticsearch版本

来自分类Dev

使用Eclipse通过JAVA API访问Elasticsearch

来自分类Dev

使用Java API的Elasticsearch FunctionScore查询

来自分类Dev

通过插件使用ElasticSearch Java Client API

来自分类Dev

使用Java API从ElasticSearch检索复杂字段

来自分类Dev

使用Java API检查并插入Elasticsearch

来自分类Dev

Elasticsearch Java API错误“ NoClassDefFoundError”

来自分类Dev

elasticsearch | 模板查询| Java API

来自分类Dev

ElasticSearch Java API搜索错误

来自分类Dev

使用Elasticsearch api方法的vuejs

来自分类Dev

使用Elasticsearch的多重搜索API

来自分类Dev

如何使用ElasticSearch Java API从JSON构建聚合

来自分类Dev

使用JSON模式和ElasticSearch Java API添加类型映射

来自分类Dev

使用Java API的ElasticSearch日期范围查询聚合

来自分类Dev

如何在Java中使用Elasticsearch Rest API?

来自分类Dev

如何使用Java API在Elasticsearch中分析文本?

来自分类Dev

ElasticSearch-使用Java API为大型文件编制索引

来自分类Dev

如何在ElasticSearch上将hasChildFilter与JAVA API结合使用