hamburger icon close icon

Azure Database Deployments: Best Practices, Tips, and Tricks

April 24, 2020

Topics: Azure NetApp Files Advanced7 minute read

A number of factors must be taken into consideration when deploying databases in Azure to ensure the integrity of the database, such as data availability, durability, performance, and data protection. For database-dependent applications, such as SQL and Oracle, any lag in performance can adversely affect user experience and thus cannot be afforded.

It is therefore crucial to choose the right services and configuration to ensure applications run as efficiently as they would on-premises. From compute to storage, your cloud infrastructure choices define your performance and capabilities.

When it comes to storage choice, the Azure NetApp Files (ANF) managed file share service offers the bare-metal performance, scalability, and high availability database-dependent workloads need. Read on to find out how Azure NetApp Files can help you meet your database requirements in Azure as well as tips and tricks for successful deployment.

Database Deployment in Azure: Challenges

Line-of-business (LOB) applications often depend on databases for storing and retrieving critical customer information.The underlying storage layer where the database files are stored should be robust and durable enough to handle peak traffic without compromising performance. Choosing a storage service in Azure is an important decision to make during the deployment planning phase. This process, however, can be challenging, especially for databases that depend on NFS file shares, as the storage must encompass all the desired capabilities discussed below.

Meeting Performance Standards

Azure offers customized virtual machine (VM) SKUs for deployment of database workloads like SQL and Oracle to meet compute performance benchmarks. As the data is handled by the storage layer, storage performance (IOPS) and throughput should not become a bottleneck. Rather, the storage must be able to keep up with the high IOPS requested by the VMs to avoid delays or snags in accessing the data. Yet customers frequently fail to consider this aspect during database deployment in Azure.

The storage service should also be capable of varying performance levels for different types of data; for example, lower performance for archives and backups and the highest IOPS for production databases.

High Data Availability

Database servers should have uninterrupted access to the storage layer in order to maintain application availability. The storage system should be highly available by design, as any disruption to data access could prove catastrophic. While most customers prepare a detailed design for high server availability, they often fail to plan for high availability of the storage layer. Often this is not done with the same precision due to the additional configuration overhead associated with it.

Data Durability

ACID (atomicity, consistency, isolation, and durability) compliance is considered mandatory for databases handling production data. It guarantees data integrity, as any committed database transactions will be written to the storage layer without failures.Your database storage system must be highly durable in order to prevent data loss due to hardware or software failures.

Ensure Business Continuity

As data forms the lifeblood of any application, the capability to recover from outages with zero data loss (RPO=0) is non-negotiable. Your system should have disaster recovery features available to help bring the services back online within the defined RTO.

Enhanced Security

Handling business-critical information and sensitive customer data, databases must be protected both at rest and in transit. While data in transit is managed by the network or application layer, the storage should support strong encryption methods to ensure the security of data at rest.

Planning Well for Database Deployments

The Azure NetApp Files file share service in Azure enables organizations to provision high-performance NFS file shares best suited for use with database workloads. Unlike marketplace offerings, it is available as a first-party Azure service, sold and supported by Microsoft. It brings to Azure the storage management capabilities of NetApp® ONTAP, which has helped enterprise customers run mission-critical database workloads in their on-premises data centers for 25 years.

Prior to ANF’s introduction in the market, customers were required to build their own NFS clusters in Azure using VMs and managed disks just to provision the required NFS file shares for Azure databases. The deployment and ongoing maintenance of these NFS clusters was both labor-intensive and costly.

With ANF, in just a few clicks, the NFS file shares required for storing databases can be provisioned and connected to your Azure SQL server or Oracle database. ANF is a one-stop NFS file solution for Azure database deployments.

ANF Capabilities

Let’s explore ANF’s enterprise-class storage features and how they can help address database deployment challenges in Azure.

High-Throughput, Low-Latency Storage

ANF offers the lowest cost and highest throughput shared storage for databases, as proven by benchmark tests conducted on Oracle database workloads. A single instance of a read/write Oracle database in a standard D64s_v3 VM was able to achieve 71,000 IOPS at less than 0.5 ms latency and 218,000 IOPS with less than 2.5 ms latency. This scales to 310,000 IOPS with two ANF volumes while still maintaining a latency of 2 ms.

Data Durability

The data stored in ANF volumes remains protected from underlying hardware errors, disk failures, storage media and software errors, and more. This helps databases stay ACID compliant and meet stringent industry standards for data durability.

Out-of-the-Box High Availability

As a managed service, ANF’s underlying infrastructure deployment and configuration is handled by the platform. Built on top of the reliable NetApp® ONTAP technology, ANF volumes feature out-of-the-box high availability offering 99.99% uptime backed by the Azure SLA. No additional configuration of the storage level is required in order to achieve high availability for your databases.

Faster Database Recovery and Business Continuity

NetApp® Snapshot technology can be used to create instant copies of databases, enabling quick recovery in the event of data loss. Snapshots are point-in-time copies of data and can be instrumental in building a database protection and recovery plan for your applications with minimal overhead.

Uncompromising Security

ANF volumes are deployed with a private IP address in your vnet or security domain. This eliminates the need to create additional security domains in order to secure storage services. Moreover, they’re protected by industry-standard FIPS-140-2-compliant encryption. Encryption-at-rest is thus available to databases by default. NFS file shares are protected from unauthorized access through ACLs, and Active Directory authentication can be enabled for SMB file shares. In addition, Azure RBAC can be implemented so that only authorized personnel are able to create, delete, and manage ANF volumes from the Azure portal.

Azure Best Practices: ANF for Databases

ANF can be integrated with all major enterprise database platforms, including MS SQL, Oracle, and open-source solutions such as MySql, Postgresql, MongoDB, and others. While deployment patterns and designs will vary across database platforms, the following are some common best practices and tips for database administrators when using ANF for databases in Azure.

  • Optimal performance: To achieve optimal performance with your Azure deployments, always choose the Azure VM SKUs optimized for databases as well as the right ANF storage tier. ANF offers three service levels: Standard, Premium, and Ultra. The Ultra tier offers the highest throughput of 128 MB/second per provisioned terabyte.
  • Capacity management: A single ANF volume can be scaled from 100 GB to 100 TB. The maximum size of the capacity pool from which the volumes are provisioned is 500 TB. It’s important to review the ANF resource limits during the deployment planning phase in order to determine the number of capacity pools required for your databases.
  • Volume placement: It is recommended to deploy database files and log files in separate ANF volumes, where the database volume can be configured to use the Ultra tier and the log volume the Premium tier. This allows you to optimize cost and performance for your Azure database deployment.
  • Data migration: ANF’s Cloud Sync service can be leveraged for seamless and secure data migration and synchronization between on-premises systems and ANF volumes.
  • Stringent security: Follow the security principle of minimal permissions for management and data plane access. Limit the portal configuration access through built-in or custom RBAC roles and access to the NFS volumes through restricted ACLs.

Managing Your Database Workloads in Azure with Confidence

Design, deployment, and configuration of the storage layer is as nuanced as the Azure database deployment infrastructure. Application efficiency is dependent on the database and storage services used for the application, and so the entire process must be carefully considered. Through its advanced data management capabilities powered by NetApp® ONTAP, ANF is designed to meet the specific needs of your specialized database workloads in Azure.

Simplify the management of your database deployments in Azure. Register for ANF today.

Cloud Data Services