NEST比Kibana慢得多

时间:2016-11-15 12:05:57

标签: elasticsearch kibana nest

我们一直在测试Elastic Search的日志记录系统。 ElasticSearch集群中的索引有30万个数据。

我在我的电脑上安装了Kibana和NEST。本地服务器上的集群。

当我使用Dev Tools从Kibana进行查询时,响应时间为1或2 ms,它带来10条记录

GET /dbmessages/_search
{
  "query": {
"bool": {
  "must": [
    { "match": { "user": "Robin*" } }

  ]
}
  }
}

然而,对于.NET客户端(使用NEST),即使使用相同的查询,响应时间也大约为600毫秒。

var sw = new Stopwatch();
sw.Start();    

var result = client.Search<Message>((s => s
        .Index("dbmessages")
        .From(0)
        .Size(10)
        .Query(q => q.Raw(@"  ""query"": { ""bool"": { ""must"": [ { ""match"": { ""user"": ""Robin*"" } } ] } }"))));

sw.Stop();
Console.WriteLine(sw.ElapsedMilliseconds);

如果我使用类似linq的查询,它也会慢一些。

 var response = client.Search<Message>(s => s
.From(0)
.Size(10)
.Index("dbmessages")
.Type(typeof(Message))
.Query(q => q.QueryString(qs => qs.Query("Robin*"))));

即使mongoDb和SQLServer也可以更快地进行选择查询(在~25毫秒内)。我相信NEST有问题。

任何人都知道为什么会这样?

由于

0 个答案:

没有答案