"I've been very critical of multitenancy at the application layer," Ellison said during his keynote speech on Tuesday. He noted that security tools would not work sufficiently in this architecture.
"Data isolation should be at the infrastructure layer -- in separate virtual machines -- or at the database layer," he said. Of the two options, the database layer is more efficient, Ellison argued.
The pluggable database is inherently more efficient for a number of reasons, Rajamani later explained. Today, a server running 100 databases must switch rapidly between all those databases, which creates a lot of overhead. "A hundred binaries are going to 100 context switches," he said. A single database eliminates all this task switching. Also, each database has a large number of background processes that need to run continuously, and reducing all of these processes to a single set saves resources.
Also, having a single copy of database software to handle multiple user databases reduces the amount of disk space needed, since it eliminates the multiple copies of the host database software. (Oracle did not disclose how this new architecture would affect licensing costs.)
In the past, organizations have tried to consolidate their data onto a single database, but they may have encountered a number of difficulties. For one, they may have run into namespace problems, where the names of columns of one user database table may be identical to those in another, which then must be reconciled on an individual basis. Also, it is difficult to effectively control access to multi-use databases. Different users require different tables, but establishing access rights for each user at the database level can be a time-consuming and error-prone process.
The pluggable database architecture could solve these problems, however. In separate user databases, the namespaces would be entirely independent of one another, so duplicate names would not be a problem. It also solves the access problem. Oracle is promising that the separation between two pluggable databases will be as strong as the separation between two totally independent databases today.
Pluggable databases will also make upgrades and database transfers between machines more efficient, Oracle argued. As the name implies, pluggable databases could be easily decoupled from the container database. A user database can be cleanly moved from one copy of Oracle 12c to another copy of Oracle 12c. Also, Oracle is updating its Enterprise Manager and other database management software so it can allow administrators to apply changes across multiple user databases through a single action.