hadoop流获取节点ID

时间:2012-09-03 16:04:09

标签: hadoop environment-variables hadoop-streaming

在hadoop流媒体中,有没有办法获取处理给定任务的节点的ID?

通过类比,这个片段给出了任务输入文件的名称:

#!/usr/bin/env python
import os
map_input_file = str(os.environ["map_input_file"])

我正在寻找像os.environ [“map_node_id”]这样的东西。节点的任何唯一句柄都可以工作......

1 个答案:

答案 0 :(得分:1)

您只需使用mapper / reducer中的套接字模块即可获取datanode的主机名:

import socket
...
node = socket.gethostname()