Azure高级存储中的Databricks自动加载器文件通知模式



我想使用Databricks自动加载器读取文件流,数据量很高,所以我想使用文件通知模式(当我使用目录列表模式时延迟很糟糕),但似乎我需要一个"存储队列"。这在Azure高级存储中不可用,当我试图运行以下代码时,我得到了错误消息:UnknownHostException:.queue.core.windows.net

val manager = CloudFilesAzureResourceManager
.newManager
.option("cloudFiles.connectionString", "XXX")
.option("cloudFiles.resourceGroup", "XXX")
.option("cloudFiles.subscriptionId", "XXX")
.option("cloudFiles.tenantId", "XXX")
.option("cloudFiles.clientId", "XXX")
.option("cloudFiles.clientSecret","XXX")
.option("path", "abfss://XXX@ZZZ.dfs.core.windows.net/test") // required only for setUpNotificationServices
.create()
// Set up a queue and a topic subscribed to the path provided in the manager.
manager.setUpNotificationServices("XXX")

https://learn.microsoft.com/en-us/azure/databricks/ingestion/auto-loader/file-notification-mode permissions-azure

有没有办法在Azure高级存储中使用文件通知模式?

使用自动加载器扩展自动加载器以摄取数百万个文件。选项使用通知允许您选择目录列表模式检测新文件。

请提供创建云资源所需的权限。配置cloudFiles,如果使用,则通知设置为true

cloudFiles ={
"cloudFiles.subscriptionId" :"<subscription_Id>",
"cloudFiles.connectionString" :"<connectionString_Storage_account>",
"cloudFiles.format":"csv",
"cloudFiles.tenantId":"<tenantId>",
"cloudFiles.clientId":"<client_ID>",
"cloudFiles.clientSecret":"<Client_Secret>",
"cloudFiles.resourceGroup":"<Resource_group_name>",
"cloudFiles.useNotifications":"yes"
}

有关配置自动加载器的更多信息对于数据块,请遵循此链接。有关于read的详细说明和自动加载器上的流数据。

最新更新