Friday, 28 April 2017

What is Multitenant Architecture and Its Benefits Pluggable and Container Databases

What is Multitenant Architecture?  


This feature allows you to create and maintain many pluggable databases within an multitenant container database.

Multiple tenants share same resources on a mutual benefit for different purposes at a very broad level. The same applies to Oracle Database where Multiple Databases share a single instance of resources aiming for different purposes on the same Server. This Oracle Database which is built on Multitenant foundation is called Container Database(CDB), and each container(tenant) residing inside is called Pluggable Database(PDB, Container).
Oracle Database Tutorials, Oracle Database Certifications

A multitenant container database (CDB) is defined as a database capable of housing one or more pluggable databases. A container is defined as a collection of data files and metadata that exist within a CDB. A pluggable database is a special type of container that can be easily provisioned by cloning another database. If need be, a pluggable database can also be transferred from one CDB to another.

Every CDB contains a master set of data files and metadata known as the root container. Each CDB also contains a seed container, which is used as a template for creating other pluggable databases. Each CDB consists of one master root container, one seed container, and zero, or one or more, pluggable databases.

Benefits:


One of the main reasons for Multitenant Architecture is to have “Database Consolidation”.

Till now we have databases deployed across multiple Small Physical machines on various platforms. It could be waste of resources having a database on each machine dedicatedly rather keeping them all on a single powerful machine. By consolidating all Databases onto a Single powerful chip and a Single Oracle Instance, we achieve following benefits:

Cost reduction in terms of Product licensing and Hardware procurement as we require less number of processors and less memory compare to a Non-CDB environment

Easier Database maintenance, Pluggable Databases can easily be moved or copied locally or remotely across Physical machines in the network, Upgrading Operating System, Upgrading or Patching Database itself is a lot easier and “often” a one shot process, that greatly improves the availability

Performance tuning becomes a lot easier as all PDBs in a CDB environment share same Hardware/Platform/Network resources like CPUs/Memory/OS/Bandwidth etc.. For example, It is quite easy to tune one single piece of SGA/PGA on one single instance rather tuning each SGA on each physical machine.