Relational database management systems have become all but ubiquitous in enterprise computing since 1970, when they were first devised by E.F. Codd. But as powerful and flexible as those databases are, they've proved inadequate for a handful of ultrademanding applications that have to process hundreds or thousands of transactions per second and never go down. Now, the very-high-performance database technologies that sprang up to serve these niche markets, such as options trading and telephone call processing, are poised to move into mainstream computing.
Some of the new products simply move the action from disk to memory, where access is a million times faster. Others are more radical departures from tradition, such as "streaming" technologies that store queries and pass data through them rather than run queries against stored data. Still others have found clever ways to sidestep much of the overhead -- such as table locking -- associated with the traditional RDBMS.
While some of these products do "store" data in memory-resident data-bases -- either relational or object-oriented -- the tools are primarily designed to speed transaction processing and analytics, not to act as data repositories.
Thanks for the memory
Interact, a Lincoln-based communications service provider, has for more than 10 years used the in-memory database capabilities of Hewlett-Packard Co.'s NonStop servers to do real-time pricing of incoming telephone calls. But the big, expensive computers were overkill for some Interact customers, such as small mobile telephony resellers, says Tom Massey, director of business development.
So 18 months ago, Interact began to offer a call-pricing service that runs on Linux and Unix servers and uses Oracle's TimesTen In-Memory database. "NonStop is big iron and more geared to larger operators," Massey says. "Linux and Unix platforms scale down much better, and operators often prefer them because they are not knowledgeable about NonStop."
Oracle acquired the TimesTen technology last June. Oracle saw the in-memory database as a way to extend its enterprise back-end data storage capabilities to high-performance real-time applications such as Interact's. Interact uses Oracle for back-end data storage as well and does not yet interface those databases with TimesTen, but Massey says he plans to do so.
"We need sub-10-millisecond response time, and you can't get that performance out of an Oracle relational database," says Ed McKee, director of applications at Interact. "To get that kind of performance, the amount of iron you'd have to have would be very significant."
On the other hand, he notes, the in-memory TimesTen product isn't suitable for large-scale data archiving. Interact can serve 1 million telephone subscribers with just 2GB of data in memory because only customer balance information is needed online.
Aspect Software uses TimesTen for call center services. Traditional databases don't have the sub-500-millisecond call- routing capability it requires, says Chief Technology Officer Gary Barnett. Aspect's customers call centers typically have big databases of customer history behind them but cache key information upfront, in memory, for near-instantaneous response to customer requests, he says.
But deciding what data to replicate forward, and how often, can be tricky, Barnett warns. "There's a trade-off. The more data you have [in memory], the more intelligent we can be in routing calls. But the more data in real time, the more expensive it is."
Some users choose a memory- resident product for its features and then gain high performance as a byproduct. For example, Interstate Hotels & Resorts chose the TM1 financial analysis tool from Applix Inc. in Westboro, Mass., because it was easy to use. "We wanted to consolidate all the hotels to close the books each month," says Paul Bushman, senior vice president for IT at the Arlington, Va.-based manager of more than 300 hotels. "But now we use it on a daily basis."
TM1, which Applix calls "the world's fastest business intelligence analytical engine," moves disk-resident data from Oracle databases in Interstate's accounting system into memory in an Excel spreadsheet format. From there, users without technical expertise can run what-if financial models as well as do financial rollups by a variety of user-specified criteria.
They can also perform online consolidations of the type more typically performed in month-end batch processes, Bushman says. "In the accounting system, to produce one financial statement for one hotel for one month could take 30 minutes in a relational database," he says. "But here we can do a consolidation of all 300 hotels in a couple of seconds."