Multi -Tenant Databases
Architecture where a single instance of software can server multiple clients can be termed as “Multi-Tenant”, and every single client known as “Tenant”. Today, this can be easily understood with the help of cloud computing, where user can run single instance application on single instance of database and accommodate the request of multiple web users. In such case data and information of each tenant or client is isolate from other. Oracle makes use of multi-tenancy architecture and provide the feature called “Pluggable Database” in its Oracle 12c release. This option multi-tenant database allow single database known as container database or CDB to host multiple databases known as pluggable database or PDB.
Consolidation, we know is the option in IT industry that almost every organization is looking at to reduce the IT cost. This consolidation has been worked upon and implemented at every layer of IT infrastructure. It can be network consolidations, web server consolidations etc. while consolidating care has promptly be taken that it won’t hamper functions of consolidated components. Oracle too, has come with up this option of consolidating multiple database into a single container database. This option of multitenant architecture fully compliments with other Oracle Technologies like Oracle RAC, Streams, and Dataguard. That means one can easily use the features of Oracle high availability in this architecture without any changes and modifications. Following lets have glance at offerings of this new architecture:
- Oracle has beautifully taken care of basic requirement of database and its architecture. Each pluggable database gets its own memory and set of its background processes, as in case of single traditional database. Unlike old architecture multi-tenant architecture of database allows you run as many pluggable database as you can, which provides the benefit of schema-based consolidation.
- Most of the time we come across situation where we need replica of our database. The requirement can testing environment, development environment or any other. DBA’s knows the overheads it has. With this new feature we can easily clone the database within seconds, with simple SQL statements. The next one, the copy or clone can be created within same container database or between the various containers. Also the pluggable databases can be unplugged from one container database to another.
- The feature that is really stunning about the Oracle 12c multi-tenant architecture. We are very well aware of the patching and upgrading processes of the software and database. They are not only time consuming, but need to look upon various dependencies and compatibilities at various level like OS, applications, etc. With pluggable databases, you simply need to unplug and plug the database to multi-tenant container database of different Oracle Version. Upgrading/Patching container database will automatically upgrade/patch the pluggable database. Not to revise again that it cost effective and time saving tasks we ever simply had it before.
- Management in turn has become more simple that before. DBA can manage many database as one, by simply plugging existing database to container database.
- Oracle 12c has designed it Resource Manager so well that, DBA’s have total control over the resource allocation and management between n numbers of pluggable databases with container database.
To conclude I can say that it is the best ever database management solution available not only for individual database users but also service provider those can provide Multi-Tenant Database as SaaS. To summarize following are benefits that both service provider and service seeker can look for:
- Scalability and Resource Utilizations
- Manage n numbers of database as single database
- Isolation of one database from another within container database without compromising with access rights, data confidentiality and consistency.
- Can be used with other Oracle offerings like Oracle RAC, and Dataguard.
In article we shall see:
- Creation of Container databases (Using DBCA).
- Creation of pluggable databases.
- Plugging and unplugging databases.