#azure #azure-cosmosdb #azure-synapse
#azure #azure-cosmosdb #azure-synapse
Вопрос:
Я пытаюсь использовать изменения канала в synapse, я использую ссылку synapse для подключения к cosmos,
dfStream = spark.readStream
.format("cosmos.oltp")
.option("spark.synapse.linkedService", "<enter linked service name>")
.option("spark.cosmos.container", "<enter container name>")
.option("spark.cosmos.changeFeed.readEnabled", "true")
.option("spark.cosmos.changeFeed.startFromTheBeginning", "true")
.option("spark.cosmos.changeFeed.checkpointLocation", "/localReadCheckpointFolder")
.option("spark.cosmos.changeFeed.queryName", "streamQuery")
.load()
Но я получаю сообщение об ошибке ниже:
Ошибка: org.apache.hadoop.fs.azurebfs.contracts.exceptions.AbfsRestOperationException: ошибка операции: «Этот запрос не авторизован для выполнения этой операции с использованием этого разрешения»., 403, УДАЛИТЬ, https://adlsgarage7.dfs.core.windows.net/adlsgarage7/localReadCheckpointFolder/streamQuery ?
Ответ №1:
Вам необходимо разрешение на доступ в качестве участника к контейнеру учетной записи Data Lake, который был подключен к рабочей области во время создания. Вам нужен доступ ARM-участника хранилища больших двоичных объектов к учетной записи adlsgarage7 или, по крайней мере, к контейнеру adlsgarage7.
Вы также должны обязательно указать имя связанной службы, к которой вы подключаетесь, и контейнера.