CODE: MCS_DP-300T00
LENGTH: 32 Hours (4 days)
This course provides students with the knowledge and skills to administer a SQL Server database infrastructure for cloud, on-premises and hybrid relational databases and who work with the Microsoft PaaS relational database offerings. Additionally, it will be of use to individuals who develop applications that deliver content from SQL-based relational databases.
Plan, deploy and configure Azure SQL offerings
Monitor database performance and tune a database and queries for optimum performance
Plan and configure a High Availability Solution
The audience for this course is data professionals managing data and databases who want to learn about administering the data platform technologies that are available on Microsoft Azure. This course is also valuable for data architects and application developers who need to understand what technologies are available for the data platform with Azure and how to work with those technologies through applications.
Successful Azure Database Administrators start this role with professional experience in database management and technical knowledge of cloud technologies.
Specifically:
Working with, maintaining, and developing with SQL Server
Experience with Azure, such as deploying and managing resources
At a minimum, you should know the information in the following online training before attending the course:
AZ-900 Azure Fundamentals
DP-900 Azure Data Fundamentals
Module 1: Introduction to Azure Database Administration
This module explores the role of a database administrator in the world of Azure SQL. It also provides some foundational information relevant to the overall content. This includes a review of the various SQL Server-based options (SQL Server in a VM, SQL Managed Instance, and Azure SQL Database).
Lessons
Prepare to maintain SQL databases on Azure
After completing this module, students will be able to:
Understand the role of Azure Database Administrator as it fits in with other data platform roles
Be able to describe the key differences between the SQL Server-based database options
Describe other features for Azure SQL platforms available
Module 2: Plan and Implement Data Platform Resources
This module introduces methods for deploying data platform resources in Azure SQL. You will learn about options for both upgrading and migrating existing SQL databases to Azure. You will learn how to set up Azure resources to host SQL Server on a Virtual Machine, a SQL Managed Instance, and SQL Database. You will learn how to determine which options are best based on specific requirements including the High Availability and Disaster Recovery (HADR) needs. They will learn to calculate resource requirements and understand hybrid approaches.
Lessons
Deploy IaaS solutions with Azure SQL
Deploy PaaS solutions with Azure SQL
Evaluate strategies for migrating to Azure SQL
Migrate SQL workloads to Azure SQL Databases
Migrate SQL workloads to Azure Managed Instances
Lab : Provision SQL Server on an Azure Virtual Machine
Explore the Azure Portal
Deploy a SQL Server on an Azure Virtual Machine
Connect to SQL Server on an Azure Virtual Machine
Lab : Provision an Azure SQL Database
Create a Virtual Network
Deploy an Azure SQL Database
Connect to an Azure SQL Database using Azure Data Studio
Query an Azure SQL Database using SQL Notebook
After completing this module, students will be able to:
Explore the basics of SQL Server in an Infrastructure as a Service (IaaS) offering
Understand PaaS provisioning and deployment options
Evaluate migration scenarios to SQL Managed Instance and SQL Database
Evaluate and implement a strategy for moving a database to Azure
Module 3: Implement a Secure Environment for a Database Service
This module explores the practices of securing your SQL Server Database as well as an Azure SQL database. This includes a review of the various SQL Server-based options as well as the various Azure options for securing Azure SQL Database. Students will lean why security is crucial when working with databases, and explain authentication options for Azure SQL Database.
Lessons
Configure database authentication and authorization
Protect data in-transit and at rest
Implement compliance controls for sensitive data
Lab : Configure a server-based firewall rule using the Azure portal
Configure Azure SQL Database firewall rules
Validate access
Lab : Authorize Access to Azure SQL Database with Azure Active Directory
Create users
Manage access to database objects
Validate access
Lab : Enable Microsoft Defender for SQL and Data Classification
Enable Microsoft Defender for Azure SQL Database
Configure Data Classification for Azure SQL Database
After completing this module, students will be able to:
Understand the differences between Windows, SQL Server and Azure Active Directory Authentication
Describe and configure both data-at-rest encryption solutions as well as data-in-transit encryption
Implement a data sensitivity solution
Module 4: Monitor and Optimize Operational Resources
This module will teach you about resource optimization for your databases created using either IaaS or PaaS services. The module also covers monitoring server and hardware resources. It will familiarize you with the various tools available for monitoring performance and establishing a baseline. You will learn how to interpret performance metrics for the most critical resources. You will also learn how to troubleshoot database performance using Azure SQL Insights.
Lessons
Describe performance monitoring
Configure SQL Server resources for optimal performance
Configure databases for optimal performance
Lab : Isolate performance problems through monitoring
Review CPU utilization in Azure portal
Identify high CPU queries
Lab : Detect and correct fragmentation issues
Investigate index fragmentation
Rebuild fragmented indexes
Validate performance improvements
After completing this module, students will be able to:
Monitor activity and compare to a baseline
Identify major causes of performance problems
Configure resources for optimal performance
Configure a user database for optimal performance
Module 5: Optimize Query Performance
Query execution plans are potentially the most important aspect of database performance. Improving bad plans is certainly an area where a small amount of effort can bring huge improvements. While hardware issues can limit query performance, improving hardware usually yields performance improvements in the 10-20% range, at most. More commonly database administrators encounter queries that are not optimized, have stale or missing statistics, have missing indexes, or poor database design choices that lead to the database engine doing more work than is necessary to return results for a given query. Improving the plans can sometimes yield performance improvements in the 100-200% range or even more, meaning that after improving a plan with better indexes or statistics, a query could run twice or three times as fast! This module provides details on how to analyze individual query performance and determine where improvements can be made.
Lessons
Explore query performance optimization
Explore performance-based database design
Evaluate performance improvements
Lab : Identify database design issues
Examine the query and identify the problem
Identify ways to fix the warning message
Improve the code
Lab : Identify and resolve blocking issues
Run blocked queries report
Enable Read Commit Snapshot isolation level
Evaluate performance improvements
Lab : Isolate problem areas in poorly performing queries in a SQL Database
Generate actual execution plan
Resolve a suboptimal query plan
Use Query Store to detect and handle regression
Examine Top Resource Consuming Queries report
Force a better execution plan
Use query hints to impact performance
After completing this module, students will be able to:
Analyze query plans and identify problem areas
Evaluate potential query improvements using Query Store
Review table and index design
Determine whether query or design changes have had a positive effect
Module 6: Automate database tasks
A common goal for database administrators in many environments is to automate as many of their repetitive tasks. This can be as simple as using scripting to automate a backup process, and as complex as building a fully automated alerting system. This module provides details of automating tasks to simplify the DBA’s job. Methods include scheduling tasks for regular maintenance jobs, as well as how to use elastic jobs and Azure Automation runbooks.
Lessons
Automate deployment of database resources
Create and manage SQL Agent jobs
Manage Azure PaaS tasks using automation
Lab : Deploy an automation runbook to automatically rebuild indexes
Create an Automation Account
Connect to an existing Azure SQL Database
Configure Automation Account assets
Create a PowerShell runbook
Create a schedule for a runbook
Lab : Deploy Azure SQL Database using an Azure Resource Manager template
Explore Azure Resource Manager template
Lab : Create a CPU status alert for a SQL Server
Create an alert when a CPU exceeds an average of 80 percent
After completing this module, students will be able to:
Deploy resources using automated deployment scripts
Create scheduled tasks
Create notifications and alerts
Configure automation for PaaS services
Module 7: Plan and Implement a High Availability and Disaster Recovery Solution
Data must be available when the business needs it. That means the solutions hosting the data must be designed with availability and recoverability in mind. Suppose you work for a company that sells widgets both in stores and online. Your main application uses a highly transactional database for orders. What would happen if the server or platform hosting the transactional database had a problem that made it unavailable or inaccessible for some reason? What impact would it have on the business? If the right solution is put in place, the database would come online in a reasonable timeframe with minimal effort, thus allowing business to continue with little-to-no impact. This module and its associated lab cover configuring, testing, and managing a solution for high availability and disaster recovery (HADR) in Azure, for both Infrastructure-as-a-Service (IaaS) and Platform-as-a-Service (PaaS) deployments. This module will not only cover basic requirements, but also the various options available to achieve HADR.
Lessons
High Availability and Disaster Recovery Strategies
IaaS Platform and Database Tools for HADR
PaaS Platform and Database Tools for HADR
Database Backup and Recovery
Lab : Backup to URL and Restore from URL
Create a credential
Backup to URL
Validate backup through Azure CLI and Storage Explorer
Restore from URL
Lab : Configure geo-replication for Azure SQL Database
Enable geo-replication
Failover to a secondary region
After completing this module, students will be able to:
The difference between recovery time and recovery point objectives
The available HADR options for both IaaS and PaaS
The considerations for planning and configuring HADR solutions including how backup and restore fi
The factors that comprise a HADR strategy
How to configure a high availability solution via a hands-on lab