Storage location in Azure Synapse Lake database

Mathias Opland 155 Reputation points
2023-10-10T14:10:35.8533333+00:00

I am wondering why both LinkedServiceName and Location URL required for tables in a Lake Database? Wouldn't reference to the linked service be enough?

The reason I want to only reference the linked service is that I can change storage account with only a change in the URL in the linked service, while now I have to replace the Location parameter for every table in my Lake database when I want to deploy to a different environment with a different storage account.
User's image

Azure Synapse Analytics
Azure Synapse Analytics
An Azure analytics service that brings together data integration, enterprise data warehousing, and big data analytics. Previously known as Azure SQL Data Warehouse.
5,375 questions
0 comments No comments
{count} votes

2 answers

Sort by: Most helpful
  1. QuantumCache 20,366 Reputation points Moderator
    2023-10-12T17:16:33.42+00:00

    Hello @Mathias Opland

    why both LinkedServiceName and Location URL required for tables in a Lake Database? Wouldn't reference to the linked service be enough?

    LinkedServiceName is a reference to the linked service that defines the connection to the storage account. It contains the connection details such as the storage account name, access key, and other authentication details.

    Location URL, on the other hand, specifies the location of the container within the storage account where the data is stored. It includes the storage account name, container name, and other path details.

    When you create a table in a Lake Database, you need to specify both LinkedServiceName and Location URL. The LinkedServiceName is used to authenticate and connect to the storage account, while the Location URL is used to identify the container where the data is stored.

    In summary, both LinkedServiceName and Location URL are required for tables in a Lake Database because they serve different purposes. LinkedServiceName is used to specify the connection information, while Location URL is used to specify the location of the data.

    Please let me know if this helps with your initial query? Can we close this escalation?


  2. Mathias Opland 155 Reputation points
    2023-10-13T07:18:03.05+00:00

    Hi @SatishBoddu-MSFT!

    I was just thinking it was unnecessary to provide both storage account in the URL and Linked Service. Sources and sinks in data flows only need relative path in addition to Linked service, i.e. LinkedServiceName and container/storagePath.

    The reason I want similar behavior is that we have multiple environments, where the folder structure of the storage accounts are identical, but the storage account name is different. For dataflows we only have to switch the URL of the Linked Service during deploy, and everything works out fine. However, for the Lake Database we will have to add an override arm parameter for each new table to override the path to the storage account. If we forget to do this, our prod workspace can point to the dev storage account, and it would be hard to discover this error.


Your answer

Answers can be marked as Accepted Answers by the question author, which helps users to know the answer solved the author's problem.