如何在GAE Python上从cron启动mapreduce作业

如何在GAE Python上从cron启动mapreduce作业,python,google-app-engine,cron,mapreduce,Python,Google App Engine,Cron,Mapreduce,我在mapreduce.yaml中定义了mapreduce作业: mapreduce: - name: JobName mapper: input_reader: google.appengine.ext.mapreduce.input_readers.DatastoreInputReader handler: handler_name params: - name: entity_kind default: KindName 如何从cron启

我在mapreduce.yaml中定义了mapreduce作业:

mapreduce:
- name: JobName 
  mapper:
    input_reader: google.appengine.ext.mapreduce.input_readers.DatastoreInputReader
    handler: handler_name
    params:
    - name: entity_kind
      default: KindName
如何从cron启动它?是否有一些url可以运行它?

是的,如果您查看页面,它显示您在
应用程序中设置了url。yaml

handlers:
- url: /mapreduce(/.*)?
  script: mapreduce/main.py
  login: admin
然后,您可以用通常的应用程序引擎方式cron它,在本例中,这将是编写一个
cron.yaml
如下:

cron:
- description: daily summary job
  url: /mapreduce
  schedule: every 24 hours

您可以使用从任何类型的AppEngine处理程序启动mapreduce任务


这将创建一个cron作业,每天获取一次mapreduce管理页面。它不会执行任何mapreduces。我注意到文件中有一条评论说,
start\u map
已被弃用,请改用
map\u作业。start
;此评论可能是在给出此答案后添加的。
from mapreduce import control

mapreduce_id = control.start_map(
    "My Mapper",
    "main.my_mapper",
    "mapreduce.input_readers.DatastoreInputReader",
    {"entity_kind": "models.MyEntity"},
    shard_count=10)