从Google App Engine数据存储中获取随机记录?

dem*_*mos 20 python google-app-engine google-cloud-datastore

我有一个数据存储区,模型中有大约1,000,000个实体.我想从中获取10个随机实体.

我不知道该怎么做?有人可以帮忙吗?

Jas*_*all 22

为每个实体分配一个随机数并将其存储在实体中.然后查询10个随机数大于(或小于)某个其他随机数的记录.

然而,这不是完全随机的,因为具有附近随机数的实体将倾向于一起出现.如果你想打败这个,请根据十个随机数进行十次查询,但效率会降低.

  • 在不损害读取时间效率的情况下增加随机性的一种可能性是将任务排队到为您获取的实体分配新的随机数,因此如果再次点击其中一个,则不会使用它获得相同的邻居. (4认同)