在Google App Engine上使用AppEngine-MapReduce,分析特定日期范围内实体的最简单方法是什么?

时间:2010-10-23 03:05:00

标签: google-app-engine mapreduce

我正在尝试使用AppEngine-MapReduce。我理解如何对某些entity_kind的所有实体执行操作,但是当实体具有日期属性时,仅对数据范围上的实体进行操作的最简单方法是什么?有没有一种简单的方法将参数传递给映射器?

例如,如果我只想删除实体,那该怎么办:

entity.created >= start and entity.created < stop

class Entity(db.Model):
  created = db.DateTimeProperty()

from mapreduce import operation as op
def process(entity):
  yield op.db.Delete(entity)

2 个答案:

答案 0 :(得分:3)

目前无法迭代mapreduce中的查询 - 您必须迭代给定类型的每个实体。相反,您应该在map函数中应用过滤器,并且只删除匹配的实体。

答案 1 :(得分:0)

commit324开始,可以使用有限的查询过滤器作为输入。

如果这不能让你按照自己的意愿行事,那么你可能需要尝试small extension