c# - RavenDB 读取性能

标签 c# performance nosql ravendb

(也许我做错了什么但是)我从 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/

相关文章:

java - 用于生成 C# 代码的 XML 语法

c# - 在 asp.net 中回发后如何将焦点设置在文本框上

c# - 使用 MVC Controller 将 websocket 连接到 windows azure

linux - 检查目录树中文件时间戳的快速方法

Cassandra 抛出错误请求 : Batch with conditions cannot span multiple tables

c# - Azure 表存储查询从错误分区返回数据?

c# - 引用创建类的不同表现

performance - git - 只获取文件,不获取历史

java - 如何使用Jedis获取redis服务器的系统时间?

azure - DocumentDB 存储过程每个请求只返回 100 个文档?