Question

Difficulty: HardRelational Data Storage Solutions

An organization is designing the relational database tier for a new multi-tenant software-as-a-service (SaaS) application in Azure. The design must meet the following requirements:
- Host 80 separate databases, one for each tenant, to ensure data isolation.
- Manage unpredictable workload spikes dynamically across all databases by sharing a single pool of compute resources.
- Run scheduled administrative queries and schema updates across all databases without managing virtual machines, operating systems, or configuring individual database connections.
- Minimize overall monthly costs.

Which two Azure SQL options or features should you recommend?

  1. Azure SQL Database Elastic PoolsAnswer
  2. Elastic Database JobsAnswer
  3. C
    Azure SQL Managed Instance with SQL Server Agent
  4. D
    SQL Server on Azure Virtual Machines with SQL Server Agent

Answer

The correct recommendations are Azure SQL Database Elastic Pools to share compute resources dynamically, and Elastic Database Jobs to execute scheduled administrative queries across all tenant databases without managing infrastructure.
The correct options are Azure SQL Database Elastic Pools and Elastic Database Jobs. Azure SQL Database Elastic Pools allow multiple databases with unpredictable workloads to share a pre-allocated pool of compute resources, optimizing costs. Elastic Database Jobs allow running T-SQL queries and administrative tasks across all databases in an Elastic Pool simultaneously without managing underlying servers or virtual machines.

Step-by-Step Solution

1
Analyze the tenant database and resource sharing requirements.
Since there are 80 databases with unpredictable workload spikes that must share a single pool of compute resources to minimize costs, Azure SQL Database Elastic Pools is the most cost-effective and suitable fit.
Elastic Pools allow databases to share a set budget of DTUs or vCores rather than paying for peak capacity individually.
2
Analyze the administrative scheduling and query execution requirements.
To execute queries across all 80 databases without managing VMs, operating systems, or configuring individual connections, Elastic Database Jobs should be used.
Elastic Database Jobs is a native, serverless job scheduling agent designed specifically to run T-SQL scripts against groups of databases in Azure SQL Database.
3
Evaluate alternative options against constraints.
Managed Instance and SQL Server on Azure VMs are rejected due to high baseline costs, administrative overhead, and the requirement to avoid managing virtual machines or operating systems.
SQL Server on Azure VMs introduces operating system patching overhead. Azure SQL Managed Instance lacks the elastic resource sharing capabilities of Elastic Pools at a low cost point.

Key Concept

Azure SQL Database Elastic Pools provide resource sharing for multi-tenant databases, while Elastic Database Jobs enable administrative task automation across database groups without infrastructure overhead.
Rate this question