Поиск имени хоста подчиненных узлов в hadoop во время выполнения команды map-Reduce - PullRequest
0 голосов
/ 02 июня 2018

Я хочу знать, как выполнить код преобразования карты в Hadoop 2.9.0 многоузловой кластер?Я хочу понять, какой узел процесса, какой вход.Собственно, как найти, какая часть входных данных обрабатывается каким картографом?Я выполнил следующий код Python на мастере:

import sys
import socket

for line in sys.stdin:
    line = line.strip()
    words = line.split()
    for word in words:
        print('%s\t%s\t%s' % (word, 1, socket.gethostname()))

Я использовал socket.gethostname() для поиска имени узла узлов.Я ожидаю, что выходные данные этого преобразователя будут (например):

Bye     1   hadoopmaster
Goodbye 1   hadoopmaster
Hadoop  1   hadoopmaster
Hadoop  1   hadoopslave1
Hello   1   hadoopmaster
Hello   1   hadoopslave2

Но это:

Bye     1   hadoopmaster
Goodbye 1   hadoopmaster
Hadoop  1   hadoopmaster
Hadoop  1   hadoopmaster
Hello   1   hadoopmaster
Hello   1   hadoopmaster

Не работает ли код на подчиненных узлах?

...