Scalar User-defined Functions in SQL Server 2019 (fast focus)

This page contains the description for my conference session “Scalar User-defined Functions in SQL Server 2019”, and links to the slide deck of this presentation.

Description

Target audience Intermediate and experienced database developers and DBAs.
Short description A quick overview at “Scalar UDF inlining” (FROID), one of the new performance features in SQL Server 2019. Why is it needed? What does it do? And how does it work?
Duration This session is a 20 – 30 minute “fast focus” session.
Full abstract Scalar user-defined functions (UDFs) can be great for development, since they allow easy code reuse and encapsulation. But they tend to have disastrous effects on performance in SQL Server. This forced developers into an impossible choice: use UDFs and accept worse performance (and the wrath of your DBA), or copy and paste your code all over the place and risk future maintenance.
But that will change in SQL Server 2019! Carefully hidden as “just one of the features” under the Intelligent Query Processing umbrella is “FROID” – a framework that enables SQL Server to use UDFs without suffering the drawbacks!
In this session, we will look at why UDFs traditionally are such a performance bottleneck. We will then look at what exactly changes with FROID, and how all of this works under the covers.
Is this really the panacea that MS marketing wants you to believe? Can we now finally have our cake and eat it too? Or are there limitations and problems we should be aware of?
Come to this session to find the answer to all those questions!

Resources

Click here to download a ZIP file containing the slide deck and demo code used in this presentation.

(Note: my presentations tend to evolve over time, so the version you find here may not be an exact match for the version you witnessed)

Recordings

Not able to attend a conference and still interested in this session? Just watch it on YouTube!

  • Option 1: Live recorded for SQLBits 2020 (auto-generated captions)

By continuing to use the site, you agree to the use of cookies. more information

The cookie settings on this website are set to "allow cookies" to give you the best browsing experience possible. If you continue to use this website without changing your cookie settings or you click "Accept" below then you are consenting to this.

Close