4

(也许我做错了什么,但是)我从 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 个此类文档。经度和纬度上有一个空间索引。我想阅读它们并将它们导出到文本文件中。

4

1 回答 1

3

Kaveh,您正在执行超过 2000 个查询,以及进行深度分页。如果您想获取所有信息,请使用走私者,这就是它的用途,而且非常有效。

于 2012-06-25T07:31:55.283 回答