Как сохранить файл в hadoop с python

Я пытаюсь сохранить файл в Hadoop с Python 2.7. Я искал в интернете. У меня есть некоторый код для сохранения файла в Hadoop, но он сохраняет всю папку при сохранении (общее количество файлов в папке сохраняется в Hadoop). Но мне нужно сохранить конкретный файл.

Вот ссылка для сохранения папки в Hadoop: http://www.hadoopy.com/en/latest/tutorial.html

Теперь мне нужно сохранить определенный файл в Hadoop, например: abc.txt,

Вот мой код:

import hadoopy
hdfs_path = 'hdfs://192.168.x.xxx:xxxx/video/py5'
def main():
   local_path = open('abc.txt').read()
   hadoopy.writetb(hdfs_path, local_path)


if __name__ == '__main__':
    main()

Здесь я получаю need more than one value to unpack

Любая помощь будет оценена.

2 ответа

Решение

hadoopy.writetb кажется, ожидает итеративный из двух значений в качестве второго аргумента. Пытаться:

hadoopy.writetb(hdfs_path, [("abc.txt", open("abc.txt").read())])

http://www.hadoopy.com/en/latest/api.html?highlight=hadoopy.writetb

writedb требует второго аргумента как kvs - итератор (ключ, значение)

По ссылке, которую вы дали, вы забыли скопировать функцию read_local_dir в вашем коде.

Другие вопросы по тегам