PostgreSQL is coined as the world’s most advancedopen-source database. PostgreSQL has been around for almost 27 years now. Thatmakes PostgreSQL one of the most mature open-source databases. No wonder manyorganizations are considering PostgreSQL as an option for their relationaldatabase.
PostgreSQL deployment options in Azure
Therea re several options to deploy PostgreSQL on Azure.
1. Private Cloud or On-premises
PostgreSQL can be deployed on on-premises or privately owned data center orcloud where customer is responsible for everything from hardware to operatingsystem to the database itself. While this option provides the most control, italso requires a lot of overhead on customers.
2. IAAS with PostgreSQL on Azure VM
PostgreSQL can be deployed on Azure VM and managed as Infrastructure as a Service(IaaS). In this case Microsoft manages the VM and underlying hardwareinfrastructure but the customer is responsible for the operating system andabove including the database. While this option takes away some of the overheadfrom customers, while still giving full control on database management, it isstill a lot of overhead.
3. Paas Azure Database for PostgreSQL
PaaS or Platform as a Service is an offering where Microsoft manages thehardware and database software maintenance and user is only responsible for thedata and application. This provides customers with the least overhead, whilegiving the majority of control needed to manage application compatibility. PaaSoption also offers additional features like Intelligent performance andsecurity.
PostgreSQL PaaS Offering in Azure
There are two types of PaaS database available in Azure forPostgreSQL.
1. Azure Database for PostgreSQL
Azure Database for PostgreSQL with flexible server is an ACID compliantrelational database ideal for transactional applications. The PostGIS extensionof PostgreSQL also enables geo-spatial applications to be built on PostgreSQL. MultitenantSAAS applications can also be build on Azure Database for PostgreSQL with onedatabase per customer with their own tenant.
2. Azure Cosmos DB for PostgreSQL
Azure Cosmos DB for PostgreSQL is a distributed database that can scalehorizontally with multiple nodes. This is ideal for applications that need tosupport scaled out transactions.
PostgreSQL is also Azure Arc enabled, so it can be managedlike an Azure resource if its installed on-premises with Azure Arc.
My YouTube video below gives a walkthrough of provisioning and going through Azure portal setup for both Azure Database for PostgreSQL and Azure Cosmos DBfor PostgreSQL.