Data selection from adls2 in Serverless Warehouse
- Mark as New
- Bookmark
- Subscribe
- Mute
- Subscribe to RSS Feed
- Permalink
- Report Inappropriate Content
04-30-2025 07:08 AM
Hi everyone,
I'm trying to query data from our adls2 delta lake using a serverless sql warehouse. We've already set up private connectivity via NCC, but hitting a snag when running queries like:
SELECT * FROM delta.`abfss://container@xxx.dfs.core.windows.net/delta_tbl`
"Invalid configuration value detected for fs.azure.account.key"
My questions:
Where exactly should I configure this storage key in a Serverless setup? (It's not a traditional cluster where I'd use spark.conf.set)
- Is creating an external table in UC a better approach? Something like:
CREATE EXTERNAL TABLE xxx
and what config should be made for this to work Thanks.
USING DELTA
LOCATION 'abfss://container@xxx.dfs.core.windows.net/xxx'
- Mark as New
- Bookmark
- Subscribe
- Mute
- Subscribe to RSS Feed
- Permalink
- Report Inappropriate Content
04-30-2025 11:18 AM
Here is something to try:
fs.azure.account.key in a Serverless Setup The error indicates that your storage account key isn't properly registered in the configuration. Unlike traditional clusters (where you'd use spark.conf.set), with a serverless SQL warehouse, you must specify this configuration in the SQL Warehouse's "Advanced Options" under the Spark Config section.- Navigate to the Databricks console.
- Go to SQL > SQL Warehouses, then select the serverless SQL warehouse you're using.
- In the Advanced Options, add the following under the Spark Config textbox:
fs.azure.account.key.<storage_account>.dfs.core.windows.net "<storage_account_key>"Replace<storage_account>with your Azure Storage account name and<storage_account_key>with your actual storage key.
-
External Table Syntax:
sql CREATE EXTERNAL TABLE catalog_name.schema_name.table_name USING DELTA LOCATION 'abfss://container@xxx.dfs.core.windows.net/delta_tbl';Replacecatalog_name,schema_name, and other parameters as per your setup. -
Steps to Configure Access:
- If using a service principal or OAuth, ensure the following Spark configurations are added either through the SQL Warehouse interface, an admin console, or a direct configuration file:
plaintext fs.azure.account.auth.type <auth_type> fs.azure.account.oauth2.client.id <client_id> fs.azure.account.oauth2.client.secret <client_secret> fs.azure.account.oauth2.client.endpoint <oauth_endpoint>Adjust these values based on your exact setup and Azure credentials.
- If relying on a shared key, you would still add the
fs.azure.account.key.<storage_account>.dfs.core.windows.netproperty directly, as explained in Section 1 above.
- If using a service principal or OAuth, ensure the following Spark configurations are added either through the SQL Warehouse interface, an admin console, or a direct configuration file:
nslookup to verify private endpoint reachability, or by reviewing network access rules within NCC and Azure.- Mark as New
- Bookmark
- Subscribe
- Mute
- Subscribe to RSS Feed
- Permalink
- Report Inappropriate Content
09-12-2025 01:37 PM
Hi
I am following these steps
- Navigate to the Databricks console.
- Go to SQL > SQL Warehouses, then select the serverless SQL warehouse you're using.
- In the Advanced Options, add the following under the Spark Config textbox: fs.azure.account.key.<storage_account>.dfs.core.windows.net "<storage_account_key>" Replace <storage_account> with your Azure Storage account name and <storage_account_key> with your actual storage key.
but I dont see any Spark Config text box in advance Options:
Do i have to enable something on the admin settings
** trying to read delta table in storage account and create another table using SQL serverless & SQL query editor **
thanks
- Mark as New
- Bookmark
- Subscribe
- Mute
- Subscribe to RSS Feed
- Permalink
- Report Inappropriate Content
05-02-2025 06:44 AM
Hi, thanks for the detailed explanation.
Unfortunately, configuring fs.azure.account.key in the Serverless advanced options didn’t help (I’m sure I wrote it correctly) - still receiving the same error.
I saw in some sources around the net that I should create an external location - will try that approach too.