Vendors Move on 32-Bit Main-Memory Databases
The concept of in-memory, or main-memory, database technology -- where data is stored directly in memory rather than on disk -- has been around for years. It was not, however, seen as suitable for 32-bit environments. But in recent months some vendors have taken the technology and run with it. Microsoft Corp. plans to add in-memory capabilities to its COM+ application development architecture, due out with the release of Windows 2000.
Main-memory database technology can dramatically speed up the performance of applications in data warehouses, e-commerce and OLTP. A main-memory database can also serve as a front-end cache to a disk-based database.
While larger shops running 64-bit Unix systems may find the concept of in-memory databases appealing, adoption in the Windows NT world may be slow, says Merv Adrian, vice president and research leader with Giga Information Group (www.gigaweb.com). The extremely rapid response times possible through in-memory databases "are not at the top of the list for most NT shops," he says.
Microsoft's COM+ in-memory database (IMDB) provides an application with fast access to data, without incurring the overhead associated with storing and accessing data to and from physical disks. "We're setting aside a cache of memory on the machine that's running your application for data from a database on another platform," says Michael Gross, product manager for COM+. "You'll be running your application on a Windows 2000 machine, but you may be actually accessing the data from an Oracle database on another platform."
Microsoft does not intend to offer IMDB separately from COM+. "There are no current plans to productize the IMDB separately, or incorporate it into SQL Server in the near future," Gross says. He notes that SQL Server 6.5 and 7.0 -- along with Oracle7 and Oracle8 -- will be able to serve as back-end data stores for the IMDB. Microsoft's IMDB also supports the OLE DB for an ODBC provider.
But as Windows 2000 sits, vendors have come forward with main-memory database systems that run on 32-bit Windows NT systems. TimesTen Performance Software (www.timesten.com) -- a Hewlett-Packard Co. spin-off -- offers a main-memory database for Windows NT and Unix. Angara Database Systems Inc. (www.angara.com) also has demonstrated an RDBMS. Empress Software Inc.’s (www.empress.com) Empress RDBMS for Windows NT intermixes main memory and disk storage mechanisms to achieve increased speed.
Digital Equipment Corp. -- now part of Compaq Computer Corp. -- and Oracle Corp. first demonstrated in-memory data storage in 1994. Oracle simply moved its entire code base into the 8 GB in-memory database on a 64-bit Alpha machine running Digital Unix. The newer products from Angara and TimesTen reduce the amount of code required to manage the movement of data, Adrian points out. "There are far fewer tasks required to manage the data." In addition, the technology developed by Digital and Oracle was not seen as plausible for 32-bit environments.
Half of TimesTen's customer base consists of 32-bit Windows NT environments, notes Tim Shetler, vice president of marketing at TimesTen. In general, 32-bit NT supports 2 GB of in-memory data, he says. This limitation leaves out large-scale environments such as data warehouses but permits improvements to response time and throughput, Shetler explains.
While Microsoft's IMDB component will be released as part of the 32-bit version of Windows 2000, it will be more suited to 64-bit environments. "It takes over a chunk of physical memory and will be limited by how much physical memory you have on your machines," Gross says.
The main mission of a main-memory database is rapid-response and OLTP applications, according to a report written by Wayne Kernochan, a senior vice president at the Aberdeen Group (www.aberdeen.com), an analyst firm. The biggest "bang for the buck" from main-memory databases, he says, will come with Web-based applications. "Using a main-memory DBMS, the enterprise can 'pull forward' key user data such as premier-customer information, current promotions, and recent product releases" to enable real-time interaction, Kernochan writes.
In March, TimesTen released benchmarks demonstrating the ability of its in-memory database to power leading Internet applications, using a Compaq ProLiant server running Windows NT. Using TimesTen's ODBC SQL interface, this benchmark achieved a maximum throughput of about 1.6 million database read operations per minute, or over 25,000 per second.
Angara's Data Server -- version 3.0 was unveiled in February -- provides throughput up to 20 times faster than memory-resident cache of disk-based database systems, Angara claims. A Windows NT version is scheduled to be available in late May.
When the 64-bit version of Windows 2000 becomes viable on Intel Corp.’s Merced-based servers, the capabilities of in-memory databases will expand dramatically, industry observers agree. "You'll see the ability to address large physical amounts of memory," says Gary Ebersole, vice president of marketing at Angara. "When Merced comes out, you'll be able to build fairly large, low-cost configurations with potentially up to hundreds of gigabytes of main memory."
In December, TimesTen announced version 3.0, which supports 64-bit Unix servers. "We're definitely in-line to be available on the Merced family as soon as it's commercially available," Shetler adds. "There's no question that 64-bit addressability is a big boon for in-memory databases in terms of expanding our market. But by no means are we holding our breath until then."