5

我正在尝试将大量数据(每秒大约 20-25 条推文的 Twitter 流)导入 RavenDB 进行测试和大规模数据测试。我有一些代码可以很好地写入数据,但过了一会儿我得到了一个错误:

尝试向 RavenDB 添加大量数据时出错

我不会填写所有代码,但这里是它的要点:

Open RavenDB Session
Start reading data from Twitter Stream
For each line, parse JSON into known C# object
add item to RavenDB
increment counter
if counter % 25 = 0, save changes to RavenDB.

我没有尝试过它的建议,因为它说要研究不同的方法。我应该每插入 200 次左右就终止会话吗?有没有办法用 Raven DB 插入一个对象数组?我这样做完全错了吗?

4

1 回答 1

5

两种选择:

  • 在达到限制之前创建一个新会话(每个会话 25 个请求是一个不错的值)
  • 将 DocumentSession.Advanced.MaxNumberOfRequests 增加到适当的值

无论哪种方式都可以,尽管第二种方法稍微快一些。

编辑:根据下面的 Orens 评论,它实际上是第一种更快的方法。

于 2012-04-03T18:59:41.590 回答