mapreduce 难以理解

2022-01-13 00:00:00 python google-app-engine mapreduce

问题描述

我已经看到下面的链接,它是使用 python 开始 mapreduce 的链接

I have seen the below link which is of getting started mapreduce with python

http://code.google.com/p/appengine-mapreduce/wiki/GettingStartedInPython

但我仍然无法理解它是如何工作的.我正在执行下面的代码,但无法理解到底发生了什么?

But still I am not able to understand how its working. I am executing below code but not able to understand what exactly is happening?

ma​​preduce.yaml

mapreduce: 
- name: Testmapper 
   mapper: 
       input_reader: mapreduce.input_readers.DatastoreInputReader 
       handler: main.process 
   params: 
       - name: entity_kind 
         default: main.userDetail

ma​​preduce/main.py

some code

class userDetail(db.Model): 
name = db.StringProperty()

some code

def process(u): 
          u.name="mahesh" 
          yield op.db.Put(u)

我正在执行此操作,它在状态页面中为我提供了 status = success.

I am executing this and it gives me status = success in status page.

但无法理解发生了什么

我想用 mapreduce 做的主要事情是从实体中搜索或计算记录

The main thing I want do with mapreduce is to search or count records from entity

那么任何人都可以帮助我吗??

So anyone can please help me??

提前致谢


解决方案

您正在将 "mahesh" 值设置为所有 userDetail 的 StringProperty name 实体.

You are setting the "mahesh" value to the StringProperty name of all your userDetail entities.

如果您想计算您的实体,请使用:

If you want to count your entities use :

from mapreduce import operation as op
 def process(entity):
    yield op.counters.Increment("counter1")

相关文章