0
假设你想从rethinkdb获得3条第一条记录。这是很容易与做:如何从rethinkdb中快速获取N个最后记录?
objects = r.db("db").getAll(val, {index:"index"}).limit(N)
但为了让你在计数得到最后的N条记录,对象的数量,然后做切片这样的:
count = r.db("db").getAll(val, {index:"index"}).count(N)
objects = r.db("db").getAll(val, {index:"index"}).slice(count - N, count)
有一个巨大的在时差:
首先一个与.Limit在golang需要:63.28276ms
第二个与.Slice在golang需要:1.028439202s
做orderBy
某些时间戳使所有事情变得更慢。
所以你可以看到它从速度的角度来看只是疯狂的。该查询在数据库中的26 000个文档上执行。 我需要一些关于如何解决这个问题的想法。