Wednesday, April 28, 2021

Why I Love Oracle Multitenant Architecture

Why I Love Oracle Multitenant Architecture


I have written multiple article on Multitenant. I hope you have gone through all these. If not, you can refer the same as below,


This is my last article in this series. I would like to share my experience about Multitenant and Why I love Oracle Multitenant.

Ask a group of DBAs what's their biggest pain point in their DBA world, and eight out of ten, will say, Creating new DBs for Developer/Tester, Maintenance of Existing databases and Monitoring and Troubleshooting of all the databases (including patching, upgrading etc).

With Oracle Multitenant Architecture, One Container Database (CDB) can have multiple Pluggable Databases (PDBs). This makes DBAs life easier by provisioning new Pluggable databases with single command, Maintenance of Single DB server and One Database Instance of CDB, Monitoring and troubleshooting of database at ease. All databases are up to date with latest patches.

There are more development requirements, Different application type require specialized databases. For example, Spatial applications need spatial databases, Graph applications require Graph DB, some of Payments and fraud protection applications require Blockchain databases, to read/store different documents require specialized databases to store documents and so on.

Oracle Database natively supports all modern data types into one product. Oracle supports Spatial data for location awareness, JSON for document stores, IoT for device integration, in-memory technologies for real-time analytics, Blockchain native tables.
Hence, we called Oracle Database as Converged database.

Today's modern application development runs on Microservice architecture. Each microservice should have its own database that contains data to that relevant  microservice specifically. This helps you to deploy individual services independently. Also Individual teams can have their own databases for the corresponding microservice.

Oracle Multitenant is right fit into the Microservice development environment. Each microservice will have it's own pluggable database. Also in the Development scenario individual teams can have their own database (PDB).

"Oracle Multitenant enables an Oracle Database to function as a container database (CDB). A CDB consolidates multiple pluggable databases (PDB), a portable collection of schemas, schema objects, and non-schema objects. Whether deployed on-premises or in the cloud, with Oracle Multitenant, applications run unchanged in self-contained PDBs, improving resource utilization, management, and overall security." - Oracle Docs

With Multitenant, one can have many benefits, I am just highlighting few here,
  • Efficient Consolidation
  • Rapid Provisioning and Cloning
  • Faster Upgrades and Patching
  • Manage Many Databases As One
  • Plug Into The Cloud

Why I love Multitenant?

There are many reasons why I love Multitenant, But here I am sharing Three Top Most Reasons and  my experience with Multitenant and gradually you will come to know about the same.

Reason 1 : Manage Many Database As One
Multitenant enables me to manage single database server to run multiple databases. I had created one CDB and I have multiple pluggable database inside the same. 
  • One server to Manage
  • One Database to Manage
  • One Database Resource Manager to Manage PDBs
  • One-time Patching
  • One-time Upgradation

Reason 2 : Simple Administration
Multitenant helped me to manage multiple database with very ease. Very simple administration.

With Multitenant,
Earlier Provisioning/Creating of Database was taking 1.5 hours & Now, I am able to finish this in 10mins.
Earlier Database Cloning was taking more than 2 hours, & Now, I am able to finish this task in 30mins.
Earlier Patching multiple single instance database was taking around 12+ hours with Multiple down time windows for different databases & Now, in single downtime window of 2 hours I am able to complete patching my database.
Earlier database refresh was taking almost 1+ hours of time & Now, I have automated PDB refresh and developers are getting Refreshed database at any point of time.

With Multitenant Database Administration, Now, I am able to save lot of my time. I hope you also save your time by adopting Multitenant Architecture.

Reason 3 : Ease of Maintaining Dev/Test Environment.
Our Development team introduce bug fixes and application patches every quarter. Hence, every new development and bug fix environment is required to maintain at certain period of time, say for example one bug fix environment need to maintain almost 18 months and every quarter new application & database environment is needed to maintain Application/Database Fixes and new development.

Every Quarter, creating new database with latest version of database and maintaining old database is tedious task for DBAs.
Multitenant has helped me a lot in this development scenarios and reduces my lot of work and saved my time as well.
Earlier Provisioning/Creating of Database was taking 1.5 hours & Now I am able to finish this in 10mins.
Also Rather maintaining 15+ Database servers, Now I am only maintaining 5 database servers.
Now you can imagine how much work has been reduced by Multitenant Architecture.


Did You Know?
  • No Application changes required to adopt Multitenant Architecture. Application remains Unchanged. Nothing to worry for Developers.
  • You will have TNS entry for each PDBs. You can define PDB listener with different port.
  • AutoUpgrade Automates Upgrade and Conversion of Non-CDB to PDB
  • To simplify upgrades to Oracle Database 21c AutoUpgrade automates steps to convert a database from a non-CDB to a PDB as part of a database upgrade.

Thanks & Regards,
Chandan Tanwani
Oracle Performance Tuning Certified Expert

No comments: