Companies struggling with database sprawl might be able to tap into Pluggable Database, a new feature in the upcoming Oracle Database 12c.
Several beta testers of Oracle Database 12c consider the new Pluggable Database feature to be among the most powerful in the new version of the database, due out early next year. They said that in the same way that server virtualization abstracts operating systems from underlying hardware, Pluggable Database abstracts databases from their underlying management system.
"We are interested in how to reduce our footprint and get more flexibility," said Marshall Romberg, enterprise data architect for Southlake, Tex.-based travel technology company Sabre Holdings. "Our primary use case around Pluggable Database is consolidation."
Romberg described a common scenario: Many databases in his company were serving specific division's application needs, and taking up a whole server by themselves. As a result, Sabre had to maintain thousands of machines, most of which were only running at 5% CPU utilization. Sabre started doing schema consolidation, but ran into issues with it. For example, because some applications have strict schema-naming standards, Sabre struggled with namespace collisions.
Others considered straight-up server virtualization to solve low CPU utilization. But according to a lead principal technical architect for a major telecommunications firm, that exacerbated management issues.
"Each virtual machine would have an operating system and a database and applications," said this person, who asked not to be named because of his company's policy about speaking to the press. "So the workload for the database team just multiplied. If you have 15 virtual hosts, then you have 15 OSes and 15 databases."
How Oracle Database 12c Pluggable Database works
The new feature has two major components: the Container Database and the Pluggable Database. The Container Database serves as the database instance, and includes database operations, metadata and functionality. The Pluggable Database is the user's database that can plug into the Container Database. According to Oracle, up to 250 Pluggable Databases can fit into a Container Database. Those Pluggable Databases can then be unplugged and plugged into a different Container Database, either on the same machine or a different one.
In some cases it's a huge benefit, especially when you're managing development and you have to give them multiple databases.
Amit Das, engineering architect, PayPal
Oracle officials said this allows for faster database deployment and redeployment. You can patch or upgrade the single Container Database and changes are made to all underlying Pluggable Databases. Or you could create a new Container Database that has been patched or upgraded and then move Pluggable Databases over from a different Container Database. Oracle officials claim that the separation between two Pluggable Databases in terms of security is as strong as the separation of two regular Oracle Databases on the same operating system.
Amit Das, database engineering architect at PayPal, said his company has more than 500 database instances ranging in size from 10 TB to 130 TB. The fast-paced online transaction processing (OLTP) environment includes up to 14,000 concurrent processes and 80,000 executions per second. Managing all of that? Not so easy.
"As part of the 12c beta program, we learned about the Pluggable Database feature," Das said. "In some cases it's a huge benefit, especially when you're managing development and you have to give them multiple databases."
Alex Gorbachev, chief technology officer at database consultancy Pythian, agreed. The big benefit he found with Pluggable Database was the management aspect. Gorbachev said he doesn't really like using hypervisors when it comes to databases. He said it introduces a new tier into the database stack and takes away some visibility.
Gorbachev likened Pluggable Database more to Solaris Containers, Sun's operating system virtualization technology.
"So you take this virtualization technology and you move it inside the database kernel," he said. "You're not adding a layer. You're using virtualization technology inside the database code. So there is no additional overhead."