我知道我可以使用以下命令处理所有文本文件。
alltexts = sc.textFile("hdfs://mydir/*", 1584)
relevant = alltexts.mapPartitions(lambda x: my_func(x)).collect()
但是,如何处理包含压缩numpy数组的目录(格式为.npz)?
修改
我设法获取文件列表并使用
处理它import pydoop.hdfs as hdfs
filelist = hdfs.ls("/user/my_user/my_dir", recursive=True)
rdd = sc.parallelize(filelist).mapPartitions(lambda x: my_func(x))
但是,当我尝试使用my_func()
在np.load()
中加载numpy文件时,出现以下错误。有什么建议?
IOError: [Errno 2] No such file or directory: u'hdfs://.../my_dir/file.npy`