The Power WithinBy Alan Joch
Embedded Oracle databases drive technology at the edge of the enterprise.
For Riverbed Technology, choosing the right database for its network-acceleration appliances isn't something it takes lightly. The company's Steelhead appliances help boost WAN speeds an average of 30 times for customers running anywhere from hundreds to several thousands of nodes, and what Riverbed needs is a database that's robust and that can go the distance. To achieve the performance gains it needs with the smallest technology footprint possible, Riverbed relies on Oracle Berkeley DB, a member of Oracle's family of embeddable databases.
Unlike traditional databases, embedded versions reside within software applications or hardware appliances like Riverbed's and don't require day-to-day management by DBAs. Instead, they work behind the scenes, often without end users even knowing they're using the data management technology.
"Customers like our turnkey solution. They buy our appliances because they don't want to mess around with operating systems and figure how to get this piece of hardware to work with that piece of software," explains David Wu, Riverbed's vice president of software development. "Our customers aren't database experts, so it makes sense for us to bundle in an embedded database that just tunes itself."
Embedded databases aren't new—developers have relied on them for decades. Many developers have built their own, because their application requirements were so unique, and commercial choices were inadequate.
"Although custom development is very time-consuming and expensive, it enables developers to build very specific capabilities," says Rex Wang, vice president of embedded product marketing at Oracle. "We understand that developers need technical flexibility and choice, so that's why Oracle's strategy is to offer developers the broadest selection of embeddable databases for the diverse range of applications out there." In fact, Oracle offers four embedded database choices. (See the "Choosing an Embedded Database" sidebar for more information.)
"Oracle offers a suite of embedded databases for network appliances, mobile devices, packaged applications, and other uses," says Noel Yuhanna, principal analyst with Forrester Research. "Customers can choose among any of those products, with the additional advantage of having compatibility across the various databases."
Cisco Systems released the Cisco License Manager (CLM) at the beginning of 2007. The CLM enables Cisco customers to inventory and manage sometimes thousands of licenses for network devices running in their enterprises.
"If a customer wants to upgrade any of the licenses, they place an order online and enter an authorization key into the CLM, and it automatically obtains the licenses and deploys them to the network devices," says Niraj Gopal, CLM product manager at Cisco. When customers download the CLM, the product includes Oracle Berkeley DB Java Edition for managing licensing and authentication information for each device.
Before Cisco settled on Oracle Berkeley DB Java Edition, the company considered several other databases, including several commercial offerings and a homegrown solution. Cisco chose Berkeley DB Java Edition after pilot tests convinced developers that it could meet their top design goals—the database had to be scalable and portable and work within a small resource footprint.
"[The database] had to run on powerful servers as well as a single blade," explains Shaw Li, Cisco software development manager. The scalability test bed networked dozens of Windows PCs to simulate the traffic load of 10,000 devices.
"After an evaluation and a prototype, we decided that the scalability and portability of Berkeley DB Java Edition fit the bill," says Li. In addition, Li says, because Oracle Berkeley DB Java Edition is written in Java, "it gives us great portability across different operating systems."
Aspect Software uses both Oracle Database and Oracle TimesTen In-Memory Database within its contact center solutions for organizations to manage incoming questions and service requests from customers.
"Traditionally, contact centers were measured by 'handle time'—basically how long it takes to address each customer's call. The quicker being the better," says Mike Sheridan, Aspect's senior vice president of strategy and marketing. "But now companies recognize that's not the best performance measurement because it doesn't speak to whether they satisfied the customer or what the propensity is for that person to buy more things from you in the future as a result of that call."
Contact centers are massive data generators that collect data for years. It must be possible to retrieve detailed records to service an individual call, as well as look at aggregated information about the contact center's overall performance. To help meet this challenge, Aspect relies on Oracle Database for its enterprise data mart and Oracle TimesTen for real-time analytics about performance across multiple call centers. Oracle TimesTen also feeds a program that provides graphic visualizations of contact center performance to help managers and supervisors monitor the environment.
Aspect Software chose Oracle TimesTen because it performs fast enough to serve real-time demands. "Traditional databases haven't been quick enough for us to get the visualizations we needed in a timely fashion," says Roger Sumner, senior vice president in the Aspect Software Office of Technology.
But speed wasn't the company's only consideration. The database also needed to perform all of the essential data organization tasks of traditional information management systems, including replicating data, sorting through it, and retrieving information for reporting tools.
"We looked for a fully functional relational database that could be used in an embedded setting," Sumner says.
An added bonus is that as a long-time Oracle customer, Aspect now works with a single vendor for both Oracle Database and Oracle TimesTen. "If we're looking for consulting help, we can go to a single team," Sumner says. "And we see staying power. Oracle is clearly investing in the Oracle TimesTen product going forward."
The Riverbed Central Management Console (CMC) configures and manages Riverbed Technology's Steelhead appliances and embeds Oracle Berkeley DB to hold traffic and performance data about each device on a network. The information ranges from details about performance from five minutes ago to historical trend summaries that span months or years, says Riverbed's Wu. Customers may install dozens or thousands of appliances, depending on the size of their WANs.
"Our requirements for an embedded database are that it needs to be robust, scale efficiently, and be enterprise grade," Wu explains. "One of the top reasons we went with Berkeley DB is its low resource consumption when it comes to memory, CPU, and disk usage. It has such lightweight requirements that it doesn't steal away important processing power."
Wu also appreciates the database's "very clean" APIs, which were easy for developers to understand and which enabled them to integrate the product into Riverbed's existing technology framework in only a couple of weeks.
Quick development time was critical because Wu and his staff were under a tight deadline to roll out the CMC. To accomplish this goal, Riverbed tapped the Oracle technical support staff to apply integration strategies that worked for other customers to the CMC project. "Oracle support folks are top-notch, and it was very easy to get us up and running very quickly," Wu says.
Alan Joch ( firstname.lastname@example.org ) is a technology writer based in New England who specializes in enterprise, Web, and high-performance-computing applications.