我正在使用MongoDB来勾选R中的数据分析。最初我使用了MySQL,它运行良好,但我想为此目的测试MongoDB。该数据集目前包含大约2亿条目。使用RODBC我可以使用sqlQuery(conn, "select * from td where prd = 'TY' and date = '2012-01-03'")
在MongoDB中,我有Document{{_id=5537ca647a3ad42a84374f0a, prd=TY, time=1325661600043, px=130.6875, sz=11}}
在Java中,我可以检索一天的刻度数据 - 大约100,000个条目,创建Tick对象并将它们添加到数组中,所有这些都在不到2秒的时间内完成。
使用rmongodb,下面需要永远。任何想法如何改善这个?
query <- mongo.bson.from.list( list(product = "TY", date = as.POSIXct("2012-01-04")) )
res.cursor <- mongo.find(mongo, db.coll, query, limit = 100e3, options=mongo.find.exhaust)
resdf <- mongo.cursor.to.data.frame(res.cursor)
使用find.all
同样很慢。