Forum Discussion

Anonymous's avatar
Anonymous
Not applicable
7 years ago

Power BI Desktop Get Data from ADLS Gen 2

We're currently using Azure Data Lake Store Gen 1 and are looking to transition to ADLS Gen 2.  Our data lake is solely used by Power BI Pro authors.  However, for the life of me, I can't figure out how to use ADLS Gen 2 as a source from the Power BI Desktop.  There's plenty of articles on using ADLS Gen 2 as the storage for Power BI Data Flows (primarily Connect Azure Data Lake Storage Gen2 for dataflow storage (Preview)), but not how to use data already existing in ADLS as a source.

 

We're using Azure Data Factory to load text files into ADLS Gen 2, similar to how we with ADLS Gen 1.  I've verified the security is setup and can browse, download, upload with Azure Storage Explorer.

 

Power BI Desktop Get Data from ADLS Gen 1 is relatively simple.  Get Data, Azure Data Lake Storage, Enter the URL or ADL URI from the Azure Portal Overview, then Edit and browse to the file you want.

 

Trying to do the same with ADLS Gen 2, I'm going in circles.  Maybe I'm not thinking about it in the right way.  I've tried:
Get Data, Azure Blob Storage, enter Primary Blob Service Endpoint link from ADLS G2 properties page, and get:

Details: "AzureBlobs failed to get contents from 'https://xxxx.blob.core.windows.net/'. Status code: 400, description: 'Blob API is not yet supported for hierarchical namespace accounts.'."

Get Data, Azure Blob Storage, enter Primary DLS File System Endpoint link, and get:

Details: "AzureBlobs failed to get contents from 'https://xxxx.dfs.core.windows.net/'. Status code: 400, description: 'The request URI is invalid.'."

Get Data, Azure Data Lake Storage, enter Primary Blob Service Endpoint link, and get:

Details: "Access to the resource is forbidden."

Get Data, Azure Data Lake Storage, enter Primary DLS File System Endpoint link, and get:

[DataSource.Error] Web.Contents failed to get contents from 'https://xxxx.dfs.core.windows.net/webhdfs/v1/' (400): The request URI is invalid.

 

Note I'm using the latest Power BI Desktop 201903 2.67.5404.581.  Also, I didn't name or enter the ADLS G2 as xxxx, I'm obscuring it in this forum post for security reasons.  We're not savages.

 

Now, before someone says "OMGoodness! Use Dataflows!!!", I tried.  Went to our Power BI Service Premium, workspace, Dataflows (preview), Create Dataflow, Add new entities, Azure.  There's no option for Azure Data Lake, so I tried Azure Blobs.

Entering the Primary Blob Service Endpoint link from ADLS G2 properties page returns:

Error from external service: DataSource.Error: AzureBlobs failed to get contents from 'https://xxxx.blob.core.windows.net/'. Status code: 400, description: 'Blob API is not yet supported for hierarchical namespace accounts.'. (Session ID: 4d1ab14c-bf3b-487c-bd52-54f842d16fe6)

 

Entering the Primary DLS File System Endpoint link with Authentication kind-Account Key & the Account key from ADLS G2 Access keys returns:

Error from external service: DataSource.Error: AzureBlobs failed to get contents from 'https://xxxx.dfs.core.windows.net/'. Status code: 400, description: 'The request URI is invalid.'. (Session ID: 4d1ab14c-bf3b-487c-bd52-54f842d16fe6)

5 Replies