Niall's Data Blog

A Data Engineer / Architect writing about Tech, Data and the Community

Azure Data Factory: Making Non-Dynamic Linked Services Dynamic

Linked Service Options Using the UI Note: The example here is the Salesforce linked service, but this technique also works for other linked services where the UI does not support adding parameterised properties. One of my clients has been adding data from multiple Salesforce instances to their data platform this week. One of their developers asked me if the Salesforce linked service could be made dynamic, as there is no place in the GUI to add parameters, or a dynamic values for the URL, user name or credentials.

Associative Grouping using tSQL (Part 2)

This is part of series of posts about associative grouping: Part 1 - Associative Grouping using tSQL Recursive CTE’s Part 3 - Associative Grouping using Spark In part one of this series we looked at how we could use recursive CTE’s to find overlapping groups in two columns in a table, in order to put them into a new super group of associated groups. Since I wrote that post, SQL Server 2019 CTP 3.

Associative Grouping using tSQL (Part 1)

This is part of series of posts about associative grouping: Part 2 - Associative Grouping using tSQL Graph Part 3 - Associative Grouping using Spark Recently I was asked by a friend to have a look at an interesting query problem he had been looking at. He was trying to find overlapping groups in two columns, in order to put them into a new super group of associated groups. The simplest way to describe the problem is with an demo, so off we go…

Azure Data Factory Lookup: First Row Only & Empty Result Sets

When using the lookup activity in Azure Data Factory V2 (ADFv2), we have the option to retrieve either a multiple rows into an array, or just the first row of the result set by ticking a box in the UI. The 'First Row Only' Checkbox at the bottom This allows us to either use the lookup as a source when using the foreach activity, or to lookup some static or configuration data.

Signing Stored Procedures for Server Level Permissions

What’s the Problem Stored procedures are often used to allow users to access data in tables that they do not have explicit permissions to use. The mechanism that makes this possible is ownership chaining, whereby in the context of the stored procedure, the permissions of its owner are used (often dbo). This means users only have a limited set of explicit permissions (i.e. EXEC on the stored procedure), but are able to execute CRUD statements using the stored procedures.