shaded.databricks.org.apache.hadoop.fs.azure.AzureException: 安装后尝试列出目录时出现异常
shaded.databricks.org.apache.hadoop.fs.azure.AzureException: An exception while trying to list a directory after mounting
我低于异常,
shaded.databricks.org.apache.hadoop.fs.azure.AzureException: java.util.NoSuchElementException: 枚举结果时出错,查看原始异常详情
首先我将目录挂载到 dbfs 中,如下所示,
dbutils.fs.mount(
source = f"wasbs://{containerName}@{storageAccount}.blob.core.windows.net/",
mount_point = "/mnt/a",
extra_configs = {f"fs.azure.sas.{containerName}.{storageAccount}.blob.core.windows.net": sasKey}
)
然后我做了,
dbutils.fs.ls("/mnt/a")
我明白以下原因,
Caused by: java.util.NoSuchElementException: 枚举结果时发生错误,查看原始异常以获取详细信息。
在 hadoop_azure_shaded.com.microsoft.azure.storage.core.LazySegmentedIterator.hasNext(LazySegmentedIterator.java:113)
在 shaded.databricks.org.apache.hadoop.fs.azure.StorageInterfaceImpl$WrappingIterator.hasNext(StorageInterfaceImpl.java:158)
在 shaded.databricks.org.apache.hadoop.fs.azure.AzureNativeFileSystemStore.listInternal(AzureNativeFileSystemStore.java:2444)
... 41 更多
Caused by: hadoop_azure_shaded.com.microsoft.azure.storage.StorageException: 此请求无权使用此权限执行此操作。
在 hadoop_azure_shaded.com.microsoft.azure.storage.StorageException.translateException(StorageException.java:87)
在 hadoop_azure_shaded.com.microsoft.azure.storage.core.StorageRequest.materializeException(StorageRequest.java:305)
在 hadoop_azure_shaded.com.microsoft.azure.storage.core.ExecutionEngine.executeWithRetry(ExecutionEngine.java:196)
在 hadoop_azure_shaded.com.microsoft.azure.storage.core.LazySegmentedIterator.hasNext(LazySegmentedIterator.java:109)
有人可以帮我解决这个问题吗?
真正的错误是:“此请求未被授权使用此权限执行此操作”- 最可能的原因是您没有不同于“贡献者”权限的“Blob 贡献者”权限这是在您创建存储帐户时设置的。
发生这种情况的原因是错误的 SAS 密钥配置没有容器的所有权限。为正确的 SAS 密钥提供所有权限后,该问题已得到解决。
我低于异常,
shaded.databricks.org.apache.hadoop.fs.azure.AzureException: java.util.NoSuchElementException: 枚举结果时出错,查看原始异常详情
首先我将目录挂载到 dbfs 中,如下所示,
dbutils.fs.mount(
source = f"wasbs://{containerName}@{storageAccount}.blob.core.windows.net/",
mount_point = "/mnt/a",
extra_configs = {f"fs.azure.sas.{containerName}.{storageAccount}.blob.core.windows.net": sasKey}
)
然后我做了,
dbutils.fs.ls("/mnt/a")
我明白以下原因,
Caused by: java.util.NoSuchElementException: 枚举结果时发生错误,查看原始异常以获取详细信息。 在 hadoop_azure_shaded.com.microsoft.azure.storage.core.LazySegmentedIterator.hasNext(LazySegmentedIterator.java:113) 在 shaded.databricks.org.apache.hadoop.fs.azure.StorageInterfaceImpl$WrappingIterator.hasNext(StorageInterfaceImpl.java:158) 在 shaded.databricks.org.apache.hadoop.fs.azure.AzureNativeFileSystemStore.listInternal(AzureNativeFileSystemStore.java:2444) ... 41 更多 Caused by: hadoop_azure_shaded.com.microsoft.azure.storage.StorageException: 此请求无权使用此权限执行此操作。 在 hadoop_azure_shaded.com.microsoft.azure.storage.StorageException.translateException(StorageException.java:87) 在 hadoop_azure_shaded.com.microsoft.azure.storage.core.StorageRequest.materializeException(StorageRequest.java:305) 在 hadoop_azure_shaded.com.microsoft.azure.storage.core.ExecutionEngine.executeWithRetry(ExecutionEngine.java:196) 在 hadoop_azure_shaded.com.microsoft.azure.storage.core.LazySegmentedIterator.hasNext(LazySegmentedIterator.java:109)
有人可以帮我解决这个问题吗?
真正的错误是:“此请求未被授权使用此权限执行此操作”- 最可能的原因是您没有不同于“贡献者”权限的“Blob 贡献者”权限这是在您创建存储帐户时设置的。
发生这种情况的原因是错误的 SAS 密钥配置没有容器的所有权限。为正确的 SAS 密钥提供所有权限后,该问题已得到解决。