Чтение Azure изображений Datalake Gen2 из Azure блоков данных - PullRequest
2 голосов
/ 22 января 2020

Я работаю над .tif файлами, хранящимися в Azure Озеро данных Gen2. Хотите открыть эти файлы, используя rasterio из Azure Databricks.

Пример:

при чтении файла изображения из озера данных, когда spark.read.format("image").load(filepath) работает нормально.

enter image description here

Но при попытке открыть тоже самое, что и

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

Любые подсказки, что я делаю неправильно?

Обновление:

Как рекомендует Axel R, смонтированные файлы в файловой системе Databricks все еще сталкиваются с той же проблемой и не могут открыть файл из rasterio, но могут считываться как df.

enter image description here

Также попытался создать подпись общего доступа к файлу в Datalake и попытался получить доступ к файлу через URI. Теперь получаю ошибку ниже ошибки:

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

Для дальнейшего тестирования пытался открыть тот же файл из сети, который является @

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' отлично работает

1 Ответ

0 голосов
/ 04 февраля 2020

Я полагаю, это потому, что растерио использует локальные API и может читать только по пути, начинающемуся с /dbfs/.

Возможно ли вам смонтировать хранилище больших двоичных объектов? Это позволит вам получить к нему доступ с помощью растерио с путем, начинающимся с / dbfs / mnt /

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...