Azure SQL Database is PaaS or IaaS

This is a part of a Series “Stairway to being an Azure SQL DBA“, in which I am planning to cover everything related to working as an Azure SQL DBA.

Starting with a diagram that you must have seen multiple times before.

Azure SQL Database is PaaS or IaaS

When talking about above picture and considering we are specifically concentrating on SQL Server, there isn’t anything like Software as a Service for SQL Server, and SQL Server in Azure more like as a sub-category of PaaS which is DbaaS (Database as a Service).

Having said that let me explain all these topics in more detail taking SQL Server as an example.

Azure SQL Database is PaaS or IaaS

There are 4 different options for SQL Server, including On-Prem and Azure.

Traditional On-Premises: This is a SQL Server installed either on Virtual Machine or the Physical Server where you own the hardware like Server, Storage and Networking, Virtualization technique and OS, and are also responsible for managing them. That will involve the cost of all the hardware and professionals required for configuring and managing it. Generally you own a data center and manage it too. This is what we are using when we are not on any cloud vendor.

Infrastructure as a Service: Here everything related to hardware is owned and managed by your vendor, which in our case is Microsoft (Azure). In this case when you need to have a new server you just “deploy” or create your Virtual Machine on top of the already existing Virtualization about which you don’t need to know how is it being managed. Once you have the VM created you can install your SQL Server onto it or have a pre-installed VM image to build the VM. As far as DBA activities are concerned you will never know the difference between an On-premise SQL Server and a SQL Server installed on an Azure VM.

Platform as a Service – Managed Instance: In PaaS you are just provided a platform (SQL Server in this case) and everything below that OS, Virtualization and hardware is managed by Azure.
Azure provides two options in PaaS, one of which is Managed Instance (MI) in which you don’t even know where the SQL Server is installed you just “deploy” or create a service of SQL Server and Azure is responsible for handling anything below that. This is a big change for a production DBA as you don’t know where your SQL server is installed you can’t rdp into a VM and check its services and do things like that. You have to rely more onto what information you can get from the SQL Server and the Portal.
Here you have SQL Server and the SQL Server Agent, as far as DBA activities are considered you can do mostly everything that you can do on a SQL server installed on a VM or physical Server.

Platform as a Service – Azure SQL Database: The last option of having a SQL Server database is Azure SQL database, it is also the most abstract version available. Here you don’t have the control on SQL Server, you just provide the database name and you get your database created on a SQL Server which is Azure SQL Server, that is basically a logical container and provides a single administrative point.
As even SQL Server is managed by Azure and you don’t have control on it, this make it the biggest change for a DBA. There isn’t SQL Server Agent, no Server objects nor logins. The administration is done per database and you rely more onto the Azure provided features (from the portal itself) for managing and controlling it.

Conclusion

The different flavors of SQL Server make it possible for anyone in using a SQL Server. If you are a big organization making the move to Azure, want to us the data centers but still want to have control on the Operating system and the SQL Server, or you have applications which are still using SQL Server 2008, you can use IAAS platform.

If you want to move to the latest version which is on Azure and also reduce the management cost of Hardware and the Operating system, with still have the SQL Server with the same capability as your On-premise SQL Server then Managed Instance is the one for you.

If you are a small organization, or a team which just want a SQL Server database in the backend and dont want to worry in managing the SQL Server then Azure SQL Database is the path to go.

Well if we talk about SQL Server in relation with Azure platform, there isn’t anything like Software As A Service (SaaS ) for SQL Server. But we can consider it as a Database As A Service (DBaaS) under a sub-category of PaaS (Platform As A Service). In this blog we will try to learn and understand Azure IaaS vs PaaS in relation with SQL Server.

Azure SQL Database is PaaS or IaaS

We've 4 different options available for SQL Server including Azure as well as On-Prem:

  1. Traditional On-Premises

  2. Infrastructure as a Service (IaaS)

  3. Managed Instance (PaaS)

  4. Azure SQL Database (PaaS)

Azure SQL Database is PaaS or IaaS

Traditional On-Premises

  • This is a SQL Server installed either on Virtual Machine or the Physical Server where you own the hardware like Server, Storage and Networking, Virtualization technique and OS, and are also responsible for managing them.

  • This will involve the cost of all the hardware and professionals required for configuring and managing it.

  • This is generally you own a data center and manage it too and there is no involvement of any cloud vendor.

Infrastructure as a Service

  • Here everything related to hardware is owned and managed by your cloud vendor like Microsoft (Azure).

  • In this case when you need to have a new server you just “deploy” or create your VM (Virtual Machine) on top of the already existing Virtualization about which you don’t need to worry how is it being managed. Once you have the VM created you can install your SQL Server onto it or have a pre-installed VM image to build the VM.

  • As far as DBA activities are concerned you will never know the difference between an On-premise SQL Server and a SQL Server installed on an Azure VM.

In PaaS you are just provided a platform (SQL Server in this case) and everything below that OS, Virtualization and hardware is managed by Azure. Azure provides two options in PaaS : i) Managed Instance ii) Azure SQL Database

Managed Instance (Platform as a Service)

  • In Managed Instance, you don’t even know where the SQL Server is installed you just “deploy” or create a service of SQL Server and Azure is responsible for handling anything below that.

  • This is a big change for a production DBA as you don’t know where your SQL server is installed, even you can’t rdp into a VM and check its services and do things like that. You have to rely more onto what information you can get from the SQL Server and the Portal.

  • Here you have SQL Server and the SQL Server Agent, as far as DBA activities are considered you can do mostly everything that you can do on a SQL server installed on a VM or physical Server.

Azure SQL Database (Platform as a Service)

  • In Azure SQL database, you don’t have the control on SQL Server, you just provide the database name and you get your database created on a SQL Server which is Azure SQL Server, that is basically a logical container and provides a single administrative point.

  • As even SQL Server is managed by Azure and you don’t have control on it, this make it the biggest change for a DBA. There isn’t SQL Server Agent, no Server objects nor logins. The administration is done per database and you rely more onto the Azure provided features (from the portal itself) for managing and controlling it.

    Is Azure SQL Database IaaS?

    SQL Server on Azure VM falls into the industry category Infrastructure-as-a-Service (IaaS) and allows you to run SQL Server inside a fully managed virtual machine (VM) in Azure.

    Is Azure MySQL PaaS or SaaS?

    This option is a fully managed MySQL database engine based on the stable version of MySQL community edition. This relational database as a service (DBaaS), hosted on the Azure cloud platform, falls into the industry category of PaaS.

    Is SQL managed instance PaaS or IaaS?

    Option 2: Platform as a Service (PaaS) – Managed Instance Azure SQL Managed Instance is much like SQL Server installed on a server that you don't have to maintain. It gives you the ability to scale compute (4-80 vCores with 5GB of memory per) and storage (8TB max) up or down quickly with the click of a button.

    Is Azure SQL Database cloud?

    Azure SQL is a relational database platform that is present in the cloud where users can host the data and use it as a service. You can pay for what you have used, like all other cloud services.