【问题标题】:Limitation in retrieving rows from a mongodb from ruby code从 ruby​​ 代码中从 mongodb 检索行的限制
【发布时间】:2011-01-26 16:42:14
【问题描述】:

我有一个代码,它从 mongodb 的集合中获取所有记录,然后执行一些计算。

我的程序花费了太多时间,因为“coll_id.find().each do |eachitem|.......”一次只返回 300 条记录。

如果我在循环中放置一个计数器并检查它会打印 300 条记录,然后在打印下一组 300 条记录的计数器值之前休眠大约 3 到 4 秒..

coll_id.find().each do |eachcollectionitem|
    puts "counter value for record " + counter.to_s
    counter=counter +1 
            ---- My computations here ----- 
    end

这是 ruby​​-mongodb api 的限制还是需要进行一些配置,以便代码可以立即访问所有记录。

【问题讨论】:

    标签: ruby mongodb mongodb-ruby


    【解决方案1】:

    您的文档有多大?反序列化可能需要很长时间。您使用的是 C 扩展 (bson_ext) 吗?

    您可能想在连接时尝试传递一个记录器。这可以帮助我们对正在发生的事情进行分类。或者,您可以粘贴到 MongoDB 日志中吗?暂停期间发生了什么?

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2012-03-12
      • 2013-12-27
      • 2011-11-26
      • 2014-12-05
      • 1970-01-01
      • 1970-01-01
      相关资源
      最近更新 更多