Amazon EMR上的Python Mapper

bea*_*ito 4 python amazon-ec2 amazon-web-services amazon-emr

我正在尝试在Amazon EMR上运行Python脚本作为映射器.

我的脚本的初始部分类似于:

import sys
import decimal

def some_function(sensor_record):
    return 1
Run Code Online (Sandbox Code Playgroud)

这导致以下错误输出:

[...]/mapper_script.py: line 1: import: command not found
[...]/mapper_script.py: line 2: import: command not found
[...]/mapper_script.py: line 5: syntax error near unexpected token `('
[...]/mapper_script.py: line 5: `def some_function(sensor_record):'
Run Code Online (Sandbox Code Playgroud)

有什么想法吗?我以前成功使用过EMR,但没有用过Python.我通过Web界面和使用boto库获得了相同的结果.

小智 8

你只需要添加

   #!/usr/bin/env python 
Run Code Online (Sandbox Code Playgroud)

在脚本的开头,以确保EMR选择正确的语言.