我試圖從azure讀取流:
(火花。readStream .format .option (“cloudFiles (“cloudFiles”)。clientId’, CLIENT_ID) .option (“cloudFiles。clientSecret’, CLIENT_SECRET) .option (“cloudFiles。tenantId’, TENTANT_ID) .option(“頭”,“真正的”).option (“cloudFiles。格式”、“csv”) .option (“cloudFiles。schemaLocation CHECKPOINT_PATH) .load (f“wasbs: / /{容器}@ {ACCOUNT_NAME}.blob.core.windows.net/”+ AZURE_PATH))
然而,我得到
Py4JJavaError:調用o9451.load時發生一個錯誤。:shaded.databricks.org.apache.hadoop.fs.azure.AzureException: shaded.databricks.org.apache.hadoop.fs.azure.AzureException:集裝箱<容器>賬戶<帳戶> .blob.core.windows.net未找到,我們不能創建它使用anoynomous憑證,憑證中還沒有發現它們的配置。
我知道位置存在,似乎它忽略了提供憑證。我如何設置憑證?
@Hanan Shteingart:
它看起來像你使用Azure Blob存儲連接器火花從Azure讀取數據。錯誤消息表明,提供的憑證你未被使用的連接器。
指定的憑證,可以在代碼中設置以下選項:
.option (“cloudFiles。帳號名稱”,ACCOUNT_NAME) .option (“cloudFiles。accountKey”, ACCOUNT_KEY)
取代ACCOUNT_NAME和ACCOUNT_KEY名稱和關鍵的Azure存儲賬戶,分別。你可以找到帳戶關鍵在Azure門戶“訪問鍵”部分下的存儲賬戶。
注意,提供賬戶關鍵代碼中不推薦,是為了安全起見。相反,您應該考慮使用Azure密鑰庫或其他安全的密鑰管理方案來存儲和檢索您的憑據。