python-3.x 从Azure数据库读取Azure Datalake Gen2图像

6ljaweal  于 2023-08-08  发布在  Python
关注(0)|答案(1)|浏览(102)

我正在处理存储在Azure Data Lake Gen 2中的.tif文件。要使用Azure Databricks中的rasterio打开此文件。
范例:
从Data Lake阅读图像文件时,spark.read.format("image").load(filepath)工作正常。
x1c 0d1x的数据
但试图打开相同的

with rasterio.open(filepath) as src:
    print(src.profile)

字符串
获取错误:

RasterioIOError: wasbs://xxxxx.blob.core.windows.net/xxxx_2016/xxxx_2016.tif: No such file or directory


有什么线索我做错了什么吗?
更新:
正如阿克塞尔R所建议的那样,在Databricks文件系统上挂载文件,但仍然遇到相同的问题,无法从rasterio打开文件,但可以读取为df。



还尝试通过创建共享访问签名的文件中的数据,并试图通过URI访问该文件。现在获取下面的错误:

CURL error: error setting certificate verify locations:   CAfile: /etc/pki/tls/certs/ca-bundle.crt   CApath: none


为了进一步测试,尝试从Web打开一个相同的文件,该文件为@
filepath = 'http://landsat-pds.s3.amazonaws.com/c1/L8/042/034/LC08_L1TP_042034_20170616_20170629_01_T1/LC08_L1TP_042034_20170616_20170629_01_T1_B4.TIF'工作正常

3pvhb19x

3pvhb19x1#

我认为这是因为rasterio使用的是本地API,只能从以/dbfs/开头的路径读取。
您是否可以挂载blob存储?这将允许您使用以/dbfs/mnt/开头的路径使用rasterio访问它

相关问题