У меня есть два ZIP-файла на hdfs в той же папке: /user/path-to-folder-with-zips/
.Почему мои `binaryFiles` пусты, когда я их собираю в pyspark?
я прохожу, что «BinaryFiles» в pyspark:
zips = sc.binaryFiles('/user/path-to-folder-with-zips/')
Я пытаюсь распаковать файлы почтового индекса и делать вещи для текстовых файлов в них, поэтому я попытался просто посмотреть, что содержание будет когда я пытаюсь разобраться с RDD. Я сделал это так:
zips_collected = zips.collect()
Но, когда я делаю это, это дает пустой список:
>> zips_collected
[]
Я знаю, что молнии не пустые - они имеют TextFiles. Документация here говорит
Каждый файл считывается как одна запись и возвращается в паре ключа-значения, где ключ является путем каждого файла, значение представляет собой содержимое каждого файла.
Что я здесь делаю неправильно? Я знаю, что я не могу просмотреть содержимое файла, потому что он заархивирован и, следовательно, двоичный. Но, по крайней мере, я должен был бы видеть SOMETHING. Почему он ничего не возвращает?
Там может быть более чем один файл на почтовый файл, но содержимое всегда что-то вроде этого:
rownum|data|data|data|data|data
rownum|data|data|data|data|data
rownum|data|data|data|data|data
Мне пришло в голову, что, возможно, это проблема с * типом * zip-файла. Как узнать, какой тип zip-файла это? – Hunle