你好,
我想創建一個數據庫在Azure磚使用abfss位置創建數據庫的語句,就會拋出異常。
%的sql
如果不存在創建數據庫測試評論”數據庫為測試區域“位置”abfss: / /(電子郵件保護)/數據庫/”
創建數據庫的錯誤是:
AnalysisException: org.apache.hadoop.hive.ql.metadata。HiveException: MetaException(信息:有例外:shaded.databricks.azurebfs.org.apache.hadoop.fs.azurebfs.contracts.exceptions.KeyProviderException未能初始化配置存儲賬戶storagetemp.dfs.core.windows.net:無效的配置值檢測fs.azure.account.key)
使用這些設置和運行的一個筆記本,不是幫助。ideea嗎?
我補充說:
service_credential = dbutils.secrets.get(範圍= < secret-scope >”,鍵= < service-credential-key >)
spark.conf.set (“fs.azure.account.auth.type。< storage-account > .dfs.core.windows.net”、“OAuth”)
spark.conf.set (“fs.azure.account.oauth.provider.type。< storage-account > .dfs.core.windows.net”、“org.apache.hadoop.fs.azurebfs.oauth2.ClientCredsTokenProvider”)
spark.conf.set (“fs.azure.account.oauth2.client.id。< storage-account > .dfs.core.windows.net”、“<應用程序id >”)
spark.conf.set (“fs.azure.account.oauth2.client.secret。< storage-account > .dfs.core.windows.net”, service_credential)
spark.conf.set (“fs.azure.account.oauth2.client.endpoint < storage-account > .dfs.core.windows.net。”、“https://login.microsoftonline.com/< directory-id > / oauth2 /令牌”)
在一個筆記本和我運行這個筆記本的開始主要的筆記本,使用魔法命令:
運行%”。/康涅狄格州”
我提到我可以做.save(),我可以做dbutils.fs.ls(位置)。
但是,如果我添加集群中的火花配置:
OAuth fs.azure.account.auth.type。< storage-account > .dfs.core.windows.net
fs.azure.account.oauth.provider.type。< storage-account > .dfs.core.windows.net org.apache.hadoop.fs.azurebfs.oauth2.ClientCredsTokenProvider
fs.azure.account.oauth2.client.id。< storage-account > .dfs.core.windows.net <應用程序id >
fs.azure.account.oauth2.client.secret。< storage-account > .dfs.core.windows.net{{秘密/ < secret-scope > / < service-credential-key >}}
fs.azure.account.oauth2.client.endpoint。< storage-account > .dfs.core.windows.nethttps://login.microsoftonline.com/< directory-id > / oauth2 /令牌
它是有效的。
我做錯了什麼?
謝謝你!