How Azure Database for MariaDB works

Completed

Here, you explore how Azure Database for MariaDB works. If you're using MariaDB and considering using Azure to host your MariaDB apps, you must choose between hosting with:

  • PaaS, by using Azure Database for MariaDB.
  • IaaS, by using MariaDB on Azure VMs.

In this unit, you learn more about the differences between these options, the functions and features each provides, and the specific requirements of each.

How are the hosting options different?

There are two possible hosting options:

  • Azure Database for MariaDB. A fully managed DBaaS that requires minimal user configuration or control.
  • MariaDB on Azure VMs. A database implementation that uses IaaS. You manage the database.

The following table identifies important differences between Azure Database for MariaDB and MariaDB on Azure VMs.

Feature Azure Database for MariaDB MariaDB on Azure VMs
Version of MariaDB supported MariaDB 10.2 or 10.3 Any version the customer wants to install
MariaDB update and upgrade management Automatic Customer-managed
OS updates and patches Automatic Customer-managed
High availability Built-in and based on node-level interruption mechanisms. When interruption occurs, the service automatically creates a new instance and attaches storage to it. The customer architects, implements, tests, and maintains appropriate high-availability options.
Hybrid scenarios Supports data synchronization from external MariaDB sources. Also supports up to five read-only replicas, potentially across Azure regions. Customer-managed
Backup and restore operations Automatic. Backups are stored in user-configured storage that's either locally redundant or geo-redundant. Point-in-time recovery is supported. Customer-managed
Advanced threat protection Provided Customer-managed

Select a pricing tier

When you create an Azure Database for MariaDB server, there are three pricing tiers from which you can choose:

  • Basic. This tier is best for workloads that require light compute and I/O performance.
  • General purpose. This tier is best for production workloads that require high concurrency, scale, and predictable performance.
  • Memory-optimized. This tier is best for high-performance database workloads that require in-memory performance for faster transaction processing and higher concurrency.

The following table identifies the important differences between these tiers.

Resource Basic General Purpose Memory Optimized
Compute generation Gen 5 Gen 5 Gen 5
vCores 1, 2 2, 4, 8, 16, 32, 64 2, 4, 8, 16, 32
Memory per vCore 2 gigabytes (GB) 5 GB 10 GB
Storage size 5 GB to 1 terabyte (TB) 5 GB to 4 TB 5 GB to 4 TB
Database backup-retention period 7 to 35 days 7 to 35 days 7 to 35 days

Azure Database for MariaDB features

Let's examine some of the key features of Azure Database for MariaDB.

High availability and recovery

Azure Database for MariaDB provides a guaranteed high-availability level as defined in a Service Level Agreement (SLA). The SLA defines an uptime of 99.99 percent. The following table identifies common failure scenarios and how MariaDB helps you recover from them.

Scenario Recovery
Database server failure Automatic. A new database server automatically deploys and the remote data storage is attached to it. After the database recovery is complete, clients can connect to the new database server.
Storage failure Automatic. All data is stored in three copies. So, applications don't notice any impact from disk failure or block corruption.
Region failure Manual. This type of failure is a rare occurrence in Azure. To help protect against a region failure, configure one or more MariaDB read replicas in other regions for disaster recovery.
Logical or user errors Manual. Use a point-in-time recovery to roll back to a pre-error point in time.

Important

Applications that connect to Azure Database for MariaDB databases must be built to detect and retry dropped connections and failed transactions. The applicable gateway that manages client access, can then transparently redirect retried connections to the newly created database server.

Backup and restore

Azure Database for MariaDB performs several backup operations, including:

  • Full
  • Differential
  • Transaction log

Using these backups enables server restoration to a specific point in time.

Tip

The default retention period is seven days. However, you can configure retention for a maximum of 35 days.

Backup frequency varies, depending on database size:

  • Up to 4-TB storage:

    • Full backups weekly.
    • Differential backups twice daily.
    • Transaction logs every 5 minutes.

Note

Servers that have up to 4 TB of storage can retain two full database backups, all differential backups, and transaction log backups performed since the earliest full database backup.

  • Up to 16-TB storage. These backups are snapshot-based and occur as follows:

    • First snapshot after server deployment.
    • Differential snapshots at least once a day thereafter.
    • Transaction logs every 5 minutes.

Note

Servers that have up to 16 TB of storage retain a full database snapshot, all differential snapshots, and transaction log backups from the last eight days.

Describe scaling

Azure Database for MariaDB is available in the following service tiers:

  • Basic
  • General Purpose
  • Memory Optimized

Each tier provides different performance capabilities that support lightweight to heavyweight database workloads. However, you can build your first database app on a small database using the Basic pricing tier, for a few dollars a month. As your needs change, you can adjust the scale to meet your needs. This dynamic scalability can help your database apps respond transparently to resource-requirement changes.

Describe security

Azure Database for MariaDB provides the following app protections:

  • In-transit data protection. MariaDB encrypts your data with Transport Layer Security (TLS). It provides encryption with Secure Sockets Layer and TLS (SSL/TLS) by default.
  • At-rest data protection. MariaDB encrypts at-rest data using a cryptographic module. The Federal Information Processing Standard 140-2 (FIPS 140-2) validates this module.
  • Network security:
    • Connections to MariaDB are routed through a regional gateway. The gateway must have a publicly accessible IP. However, your MariaDB server IP is protected.
    • Firewall rules are created that block all access to any newly deployed MariaDB server.
    • You can optionally implement Advanced Threat Protection to help provide more protection for your MariaDB server.

Next, we consider whether Azure Database for MariaDB is suitable for your organization, its apps, and database workloads.