Managing an Instance's Resources
Start course

This course focuses on maximizing the performance of hardware and infrastructure relating to database servers. You will learn the best ways to improve an SQL server's performance and that of its databases through infrastructure choice and configuration settings.

Learning Objectives

  • Learn how to set up disks for maximum performance
  • Understand how to boost file performance and how to use instant file initialization
  • Understand how to optimize TempDB and choose the right VM for your workloads
  • Learn how to manage an instance's resources
  • Learn how to configure your database as well as your SQL Server system accounts
  • Understand how to use Intelligent Query Processing to optimize database performance
  • Understand the benefits of using Azure SQL Serverless

Intended Audience

  • Database administrators
  • Solutions architects
  • Anyone interesting in improving the performance of their database


To the most out of this course, you will need to be familiar with basic Azure concepts, have some knowledge of computer hard drives and networking, and be familiar with databases and their servers.


SQL Server and SQL Managed Instance enable you to ration or allocate an instance's, critical resources, so that more consistent performance is available to databases in a multi application environment. Resources are allocated by assigning them to resource pools, incoming connections are assigned to a workload group. Each workload group is assigned to a resource pool.

\Initially, an instance has two resource pools: Internal is for SQL Server's use, while the default is, well the default, for any connecting users or applications. A resource pool can have limits specified for CPU and memory usage. Incoming connections are assigned to a workload group by their username, via a classification function.

The classification function can be arbitrarily complex, so long as it doesn't impede logging in, and is selected from the classifier function name dropdown list, in the resource governor properties page. The resource governor is mostly used in multi-tenant environments, to ensure consistence performance across customers' databases. That is not to say it can't be utilized in other scenarios to reduce the impact of background tasks on mission critical systems.

About the Author
Learning Paths

Hallam is a software architect with over 20 years experience across a wide range of industries. He began his software career as a  Delphi/Interbase disciple but changed his allegiance to Microsoft with its deep and broad ecosystem. While Hallam has designed and crafted custom software utilizing web, mobile and desktop technologies, good quality reliable data is the key to a successful solution. The challenge of quickly turning data into useful information for digestion by humans and machines has led Hallam to specialize in database design and process automation. Showing customers how leverage new technology to change and improve their business processes is one of the key drivers keeping Hallam coming back to the keyboard.