使用RavenDB批量插入数据

时间:2012-04-03 17:27:02

标签: twitter ravendb large-data bigdata

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

Error while trying to add lots of data to 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插入一个对象数组?我这样做完全错了吗?

1 个答案:

答案 0 :(得分:5)

两个选项:

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

无论哪种方式都行,但第二种方法稍微更快。

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