Archives 2021

Azure SQL Database – Identify considerations for relational data on Azure

Azure SQL Database

Azure SQL Database is a fully managed relational database service provided by Microsoft Azure. It offers the broadest SQL Server engine compatibility and powers your cloud applica-tions with a variety of built-in features such as intelligent performance tuning, scalability, high availability, and advanced security capabilities.

Azure SQL Database operates as a database as a service (DBaaS), meaning you don’t have to worry about managing the underlying infrastructure. Instead, you can focus on optimizing your data and developing robust, data-driven applications.

USE CASES

Azure SQL Database, with its fully managed, scalable capabilities, is an exemplary choice for a range of contemporary application architectures. This managed database service is fine-tuned for the cloud environment, making it particularly well-suited for the following scenarios:

■■ Modern cloud applications: Azure SQL Database is an excellent choice for modern cloud applications because of its built-in intelligence and scalability features.

Skill 2.2: Describe relational Azure data services CHAPTER 2 47

  • Microservices architectures: Its ability to independently scale out database makes it suitable for microservices architecture where each microservice can have its dedicated database.
  • Multitenant applications: If you’re developing a SaaS application that needs to pro-vide a separate, isolated database for each customer (multitenancy), Azure SQL Data-base is a great choice because of its isolated database capabilities.

BUSINESS BENEFITS

Azure SQL Database stands out in the realm of cloud services, offering a suite of benefits that underscore its value proposition for businesses seeking efficient, scalable, and secure database solutions. Embracing Azure SQL Database can lead to a more streamlined operational model with a focus on innovation and growth:

  • Lower total cost of ownership (TCO): With Azure SQL Database, you don’t need to purchase, set up, or manage any physical hardware, reducing your overall expenses. It also provides predictable billing and cost-efficiency with a pay-as-you-go model.
  • Scalability: Azure SQL Database offers the ability to quickly scale resources up or down based on your needs. You can adjust compute and storage resources independently

in seconds, ensuring you always have the resources you need without overpaying for excess capacity.

  • High availability and disaster recovery: Azure SQL Database comes with built-in high availability, automated backups, and geo-replication capabilities. It ensures that your data is available and protected at all times, reducing the risk of data loss.
  • Advanced security: Azure SQL Database provides a high level of security with features such as automated updates, threat detection, data encryption, and compliance with various international and industry-specific compliance standards.
  • Time savings: Because Azure SQL Database is a fully managed service, you don’t need to spend time on database administration tasks. Instead, you can focus on what truly matters: developing and optimizing your applications.

Azure SQL Managed Instance – Identify considerations for relational data on Azure

Azure SQL Managed Instance

Azure SQL Managed Instance is a powerful blend of the feature-rich capabilities of an on-premises SQL Server and the operational efficiency and PaaS benefits of Azure. It’s a fully man-aged service that provides near-complete SQL Server compatibility and native virtual network support. This means you can migrate your on-premises SQL Server databases to Azure without altering the application code, making it an ideal solution for enterprises looking to move to the cloud while avoiding the complexity of refactoring their applications. Managed Instance comes

48 CHAPTER 2   Identify considerations for relational data on Azure

with the luxury of automated patching, backups, and maintenance, plus built-in features such as threat detection and performance tuning. The service operates within Azure Virtual Net-work, which provides an additional layer of isolation and security, ensuring that your databases are not exposed to the public internet. For organizations with extensive use of SQL Server features such as SQL Agent jobs, Service Broker, or the Common Language Runtime (CLR), Azure SQL Managed Instance offers a seamless migration pathway with minimal downtime and maximum data retention.

SQL Server on Azure VMs

SQL Server on Azure VMs represents the IaaS side of Azure’s database offerings, giving you full control over both the SQL Server instance and the virtual machine it runs on. This service is tailored for scenarios where specific SQL Server features or configurations are required, such as legacy applications that depend on a particular SQL Server version or need the database server within a Windows or Linux environment. With SQL Server on Azure VMs, you can replicate the on-premises experience in the cloud while also benefiting from Azure’s built-in features such as automated backups, scalable storage, and robust networking capabilities. The choice of VM size, storage type, and SQL Server edition is in your hands, offering a high degree of custom-ization. Additionally, you can take advantage of Azure’s security and compliance offerings while maintaining the ability to implement your own security measures at the OS or database level. For workloads that require OS-level access or for companies that make use of extensive SQL Server administration, SQL Server on Azure VMs is an optimal choice.

Azure Synapse Analytics – Identify considerations for relational data on Azure

Azure Synapse Analytics

Azure Synapse Analytics is a limitless analytics service that brings together big data and data warehousing. It offers a unique environment for processing large volumes of data in relational and non-relational formats. Synapse Analytics stands out with its ability to query data on-demand with serverless capabilities or to provision resources for more demanding workloads. It integrates deeply with other Azure services, providing a unified experience for ingesting, exploring, preparing, managing, and serving data for immediate BI and machine learning needs. Azure Synapse links with Azure Data Lake, which offers massive scale and secure data lake functionality. Moreover, it provides a unified experience for data prep, data management, data warehousing, big data, and AI tasks. The Synapse Analytics workspace brings together these components into a cohesive development environment that supports multiple program-ming languages and offers a code-free experience through a web-based interface.

Azure SQL Edge

Azure SQL Edge caters to the burgeoning realm of IoT and edge computing. It’s designed to stretch the capabilities of SQL databases to edge devices, bringing data storage and processing capabilities closer to the source of data generation. SQL Edge offers a small-footprint database engine optimized for the edge, with built-in capabilities for streaming, storage, and AI-driven analytics. It supports a subset of the T-SQL language and integrates with Azure’s IoT tools, thus providing a consistent programming model across your cloud and edge solutions. With Azure

Skill 2.2: Describe relational Azure data services     CHAPTER 2      49

SQL Edge, you can deploy data workloads on devices running on ARM and x64 architectures, ensuring flexibility across diverse hardware. It also brings robust security features, such as data encryption and support for private networks, ensuring that your edge data is well-protected. For scenarios that involve disconnected or semi-connected environments, intermittent cloud connectivity, or real-time analytics on the edge, Azure SQL Edge provides a streamlined and efficient solution.

Managed Instance and SQL Server on Azure Virtual Machines – Identify considerations for relational data on Azure

Managed Instance and SQL Server on Azure Virtual Machines

As you navigate the transition from on-premises SQL Server environments to the cloud, you have two distinct pathways within the Azure ecosystem, each offering a unique blend of features and control levels: Azure SQL Managed Instance and SQL Server on Azure Virtual Machines.

Azure SQL Managed Instance is for those seeking to lift-and-shift their existing SQL work-loads directly into the cloud without extensive reconfiguration. It is a bridge between the con-venience of a fully managed PaaS and the familiarity of an on-premises SQL Server instance; therefore, it offers a swath of SQL features you’ve come to rely on, paired with the perks of a managed service.

SQL Server on Azure Virtual Machines caters to those demanding the utmost flexibility and control. This IaaS solution is akin to a canvas, providing the full SQL Server instance and the freedom to manage every aspect, from the operating system to the data platform, and mirror-ing the experience of an on-premises server but within Azure’s scalable environment.

In this section, we will delve into the details of each service, dissecting their architectures, use cases, and the rich tapestry of features they offer. Whether your priority is seamless man-agement or granular control, these Azure services will meet your business needs with precision and efficiency, propelling you into the future of cloud-based data management.

Managed Instance

Azure SQL Managed Instance is a deployment option of Azure SQL that bridges the gap between an on-premises SQL Server instance and the Azure cloud platform. It offers full com-patibility with the SQL Server engine, enveloped in a fully managed PaaS offering and provid-ing a “best-of-both-worlds” approach to database management.

This service provides a highly available, scalable, and secure SQL Server environment with-out the overhead of managing the underlying infrastructure. It does so by encapsulating the SQL Server instance in a fully managed Azure environment, thus offloading typical infrastruc-ture responsibilities such as patching, backups, and high availability to Azure’s automated services.

Azure SQL Managed Instance is built on an isolated and dedicated subnet within Azure Virtual Network, which allows for secure connectivity from your on-premises network to Azure via ExpressRoute or VPN Gateway. It’s essentially a private cluster of resources that Azure provisions and manages for you. Figure 2-25 outlines the key benefits of Azure SQL Managed Instance.

50 CHAPTER 2     Identify considerations for relational data on Azure

FIGURE 2-25  Azure SQL Managed Instance

ARCHITECTURAL COMPONENTS – Identify considerations for relational data on Azure

ARCHITECTURAL COMPONENTS

To fully appreciate the robust capabilities of Azure SQL Managed Instance, it is crucial to understand its core architectural components. These components deliver a seamless and effi-cient database management experience:

■■ Compute resources: Provisioned as a scalable set of virtual machines running the SQL

Server database engine, ensuring that compute capacity flexibly aligns with your work-load demands.

■■ Storage: Automatically allocated from Azure’s Premium Storage, guaranteeing high input/output operations per second (IOPS) and low latency for your data operations.
■■ Automated backups: Systematically stored in georedundant Azure Blob storage, pro-viding resilient data recovery options and peace of mind.
■■ Management service: A built-in feature that oversees your instance, conducting automated updates and patches to maintain security and performance without manual intervention.

Each element plays a pivotal role in maintaining the service’s high standards of perfor-mance, reliability, and convenience, setting the Azure SQL Managed Instance apart as a pre-mier choice for database management in the cloud.

KEY FEATURES

The Azure SQL Managed Instance features cater to the diverse needs of modern-day database management, seamlessly bringing the SQL Server environment into the cloud. Here are its standout features:

■■ SQL Server engine: Managed Instance boasts nearly 100% compatibility with on-premises SQL Server, adeptly supporting a wide array of features required by current SQL Server workloads.

Skill 2.2: Describe relational Azure data services CHAPTER 2 51

■■ Networking: Managed Instance seamlessly integrates within Azure Virtual Network, offering a secure and private network environment tailored to your SQL Server instance.
■■ Pricing models: Managed Instance has flexible vCore-based purchasing options so you can precisely allocate resources to fit the demands of your workload.
■■ Service tiers: You can choose between the General Purpose and Business Critical ser-vice tiers to balance performance and costs according to your operational needs.

These features underscore Azure SQL Managed Instance’s commitment to providing a robust, versatile, and cost-effective database service that aligns with your business’s scalability and performance requirements.

USE CASES

Azure SQL Managed Instance is engineered to handle a multitude of scenarios, shining in envi-ronments where specific SQL Server capabilities and considerations are paramount. Here are some of its more prominent use-cases scenarios:

■■ Complex workloads: Tailor-made for intricate SQL Server workloads, it embraces the full spectrum of SQL features, including SQL Agent, cross-database queries, and Com-mon Language Runtime integration, to handle the most demanding tasks.

■■ Compliance and security: It is the go-to option when your applications are bound by stringent regulatory standards, offering a suite of advanced security measures and com-pliance controls.

■■ Hybrid deployments: For those navigating the hybrid landscape, Azure SQL Managed Instance ensures a smooth, secure connection between cloud-based resources and on-premises systems.

USE CASES- Identify considerations for relational data on Azure

USE CASES

Azure SQL Managed Instance is engineered to handle a multitude of scenarios, shining in envi-ronments where specific SQL Server capabilities and considerations are paramount. Here are some of its more prominent use-cases scenarios:

■■ Complex workloads: Tailor-made for intricate SQL Server workloads, it embraces the full spectrum of SQL features, including SQL Agent, cross-database queries, and Com-mon Language Runtime integration, to handle the most demanding tasks.

■■ Compliance and security: It is the go-to option when your applications are bound by stringent regulatory standards, offering a suite of advanced security measures and com-pliance controls.

■■ Hybrid deployments: For those navigating the hybrid landscape, Azure SQL Managed Instance ensures a smooth, secure connection between cloud-based resources and on-premises systems.

EXAMPLE SCENARIO

Consider a scenario where you are managing a SQL Server environment for a healthcare application that contains sensitive patient data. The application uses complex SQL Server functionalities, including SQL Agent jobs for scheduling tasks and the CLR for database-level computations. Compliance with health regulatory standards such as Health Insurance Portabil-ity and Accountability Act (HIPAA) is also a critical requirement.

To transition to Azure SQL Managed Instance, follow these steps:

  1. Assess the compatibility of your SQL Server workloads using the Data Migration Assistant.
  2. Plan the migration to Azure SQL Managed Instance considering the compute, storage, and performance needs.
  3. Utilize the Azure Database Migration Service to migrate your on-premises SQL Server databases to Azure SQL Managed Instance with minimal downtime.
  4. Configure a virtual network and ensure that network security groups are set up to allow traffic to and from your managed instance.

By choosing Azure SQL Managed Instance for this healthcare application, you ensure a seamless migration of your complex SQL workloads to a fully managed database service that complies with industry standards, thus maintaining the integrity and confidentiality of sensitive data.

Azure SQL Managed Instance is tailored for those who need the rich feature set of SQL Server coupled with the benefits of a managed, scalable, and secure cloud environment. It represents a strategic choice for businesses looking to modernize their database infrastructure while maintaining operational consistency.

SQL Server on Azure Virtual Machines- Identify considerations for relational data on Azure

SQL Server on Azure Virtual Machines

In the realm of Azure cloud services, SQL Server on Azure Virtual Machines (VMs) is an offering that stands out for its familiar operational model and deep customization capabilities. This service embodies the IaaS model, providing you with the autonomy of managing SQL Server instances that are hosted on virtual machines in the Azure cloud.

SQL Server on Azure VMs presents a traditional SQL Server setup, but with the underlying hardware abstracted away. You’re given the flexibility to choose the exact version and edition of SQL Server that aligns with your business needs, ranging from SQL Server 2008 to the most recent versions.

KEY ASPECTS OF SQL SERVER ON AZURE VMS

When setting up SQL Server on Azure Virtual Machines, you’re equipped with an array of con-figurations to tailor your environment precisely to your workload’s requirements. Here are the key aspects that highlight the adaptability and depth of SQL Server on Azure VMs:

  • Virtual machine choices: Azure offers a diverse selection of VM series and sizes, ensur-ing you can find the perfect match for your SQL Server’s operational demands, whether they lean toward general-purpose tasks, compute-intensive operations, or memory-heavy workloads.
  • Storage configuration: With Azure’s versatile storage solutions, you have the free-dom to customize your storage setup to strike the right balance between performance needs and budget constraints, opting for high-speed SSDs or cost-effective HDDs as necessary.
  • Network integration: The placement of your SQL Server VMs within Azure Virtual

Network (VNet) provides secure, flexible networking options; you can seamlessly inte-grate it with your existing on-premises infrastructure, and you can configure public and private connectivity tailored to your security standards.

Skill 2.2: Describe relational Azure data services         CHAPTER 2       53


■■ Licensing flexibility: Azure caters to both new and existing SQL Server customers by offering a choice between bringing your own existing licenses to the cloud or utilizing the pay-as-you-go pricing model, which includes the SQL Server license, giving you financial and operational flexibility.