使用JestClient进行ElasticSearch查询似乎很慢

特雅斯·乔普拉(Tejas Chopra)

我最近阅读了有关Elasticsearch的信息,并且正在使用Jest与Amazon Elasticsearch Service进行交互。我已经能够利用Jest的文档和索引数据进入ES。

但是,当我尝试使用布尔查询进行查询时,我看到了极高的延迟。我尝试使用POSTMAN执行POST请求,我发现延迟要低得多。

这是示例:

开玩笑查询:给定键,值:返回对象列表。

客户JestClient:

String query = "{\n" +
        "    \"query\" : \n" +
        "        {\"bool\": \n" +
        "            { \"must\": \n" +
        "                [\n" +
        "                    {\"match\": \n" +
        "                        {\"" + key +"\" : \"" + value + "\"}\n" +
        "                    }\n" +
        "                ]\n" +
        "            }\n" +
        "        }\n" +
        "}";

long startTime, endTime;

Search search = new Search.Builder(query)
        // multiple index or types can be added.
        .addIndex(indexName)
        .addType(typeName)
        .build();
endTime = System.currentTimeMillis();
System.out.println("SearchBuilder: " + (endTime - startTime));

startTime = endTime;
JestResult result = client.execute(search);
endTime = System.currentTimeMillis();

System.out.println("ClientExecute: " + (endTime - startTime));

return result.getSourceAsObjectList(<Object>.class);

输出:SearchBuilder:12 ClientExecute:1193

另一方面,使用POSTMAN:我的主体具有POST请求:

{
    "query" : {"bool": { "must": [{"match": {key : value}}]}}
}

这是在以下位置执行的:es.ap-southeast-1.es.amazonaws.com/index/_search输出:

“ took”:1,“ timed_out”:false,“ _shards”:{“ total”:10,“ successful”:10,“ failed”:0},

我也尝试使用Searchsourcebuilder。但无济于事。我在使用正确的API吗?

MindingData

这条线

"took": 1, "timed_out": false, "_shards": { "total": 10, "successful": 10, "failed": 0 }

告诉您实际的ES引擎运行查询所花的时间,但不包括通过互联网发送查询或将结果返回给您时的任何延迟。在您的JestClient示例中,实际上是包含了这一时间,因此,完全有可能在您的JestClient示例以相同的速度执行时,时间差仅与传输和接收数据所花费的时间有关。

我对Jest不太熟悉,但是我在C#中使用过Nest(我认为几乎相同),并且在结果中,您应该能够在返回对象中获得相同的“ took”,“ timed_out”统计信息。

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

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

编辑于
0

我来说两句

0条评论
登录后参与评论

相关文章

来自分类Dev

使用OpenMP进行LU分解似乎很慢,需要建议

来自分类Dev

查询自联接表似乎很慢

来自分类Dev

BigQuery很慢(似乎)非常简单的查询

来自分类Dev

简单的MySQL查询似乎真的很慢

来自分类Dev

与字典查询相比,朱莉娅·瓦尔{c}()似乎很慢

来自分类Dev

使用Elasticsearch进行地理查询

来自分类Dev

Elasticsearch如何使用通配符进行OR查询

来自分类Dev

使用 bool 查询进行 ElasticSearch 全文搜索

来自分类Dev

使用〜4Gb表(MariaDB)进行简单的SELECT查询很慢

来自分类Dev

首先使用`pv`写入磁盘似乎很快,最后却很慢

来自分类Dev

foreach循环似乎很慢

来自分类Dev

fsockopen似乎很慢

来自分类Dev

Haskell Fibonacci似乎很慢

来自分类Dev

fsockopen似乎很慢

来自分类Dev

foreach循环似乎很慢

来自分类Dev

使用iptables进行阻止是否很慢?

来自分类Dev

如何在Java中使用JSON进行Elasticsearch查询?

来自分类Dev

如何使用Java在Elasticsearch中进行多重过滤查询?

来自分类Dev

Elasticsearch更喜欢使用like_text进行此查询

来自分类Dev

Elasticsearch:如何使用引号中的部分短语进行查询

来自分类Dev

elasticsearch-py无法使用script_score进行查询

来自分类Dev

使用Java API进行查询的ElasticSearch定制分析器

来自分类Dev

ElasticSearch使用分数按字母顺序对查询进行排序

来自分类Dev

如何使用elasticsearch进行包含/喜欢查询?

来自分类常见问题

在mongodb中使用ISODate进行日期查询似乎不起作用

来自分类Dev

Elasticsearch对多个查询进行排序

来自分类Dev

用ElasticSearch进行远程查询

来自分类Dev

LinqToSQL-ToList()似乎很慢

来自分类Dev

使用 logstash 将数据集导入 ElasticSearch 很慢

Related 相关文章

热门标签

归档