我正在尝试使用库(如“TIFFILE”)从PySpark中的HDFS读取一个“.tif”图像,该图像的[m,n,4](行,列,通道)维度为“uint16”,使用以下代码:
import tifffile as tiff\ img = tiff.imread('hdfs://master:9000/image1.tif')
,但我总是得到这样的信息:
FileNotFoundError: [Errno 2] No such file or directory: '/home/user/spark_files/tfos/hdfs:/master:9000/image1.tif'
映像hdfs://master:9000/image1.tif
的HDFS路径是正确的,“tiffile”库在使用本地文件系统而不是HDFS时运行良好。
看起来图像库不理解HDFS路径!
考虑到Spark API无法读取此类图像,如何解决此问题
最后,我可以使用
hdfs
和imagecodecs
库来解决这个问题:你可以用两种方法来解决这个问题
Spark使用文件选项提交作业并传递所需文件,这样它将上载到所有执行者,并可直接访问
在边缘节点上获取文件,然后触发脚本
相关问题 更多 >
编程相关推荐