(也许我做错了什么但是)我从 RavenDB 获得了糟糕的读取性能!
这是我的文档:
public class Location
{
public Guid Id { get; set; }
public string Description { get; set; }
public string DescriptionFa { get; set; }
public double Longitude { get; set; }
public double Latitude { get; set; }
}
这是我的代码:
using (var session = documentStore.OpenSession())
{
session.Advanced.MaxNumberOfRequestsPerSession = int.MaxValue;
var page = 1024;
var pageCount = 0;
while (true)
{
var q = session.Query<Location>().OrderBy(l => l.Id).Skip(pageCount * page).Take(page).ToList();
pageCount++;
readCount += q.Count;
if (q.Count < page)
{
break;
}
}
}
我在数据库中有 2100000 个此类文档。经度和纬度有一个空间索引。我想全部阅读并将它们导出到文本文件中。
最佳答案
卡维, 您正在执行超过两千个查询,以及深度分页。 如果您想获取所有信息,请使用走私者,这就是它的用途,而且非常有效。
关于c# - RavenDB 读取性能,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/11184189/