RealTime IT News

Java Wakes Up Sleepycat

Sleepycat Software is seeing value in the Java brand. So much so that it released a new version of its database software, which is written in pure Java.

Based on a write-once, append-only log architecture, the company's Berkeley DB Java Edition is significant for Sleepycat in that it keeps them competitive with other database vendors like IBM, Oracle, Microsoft and MySQL. The software is available for download now from Sleepycat under a dual-license structure.

"We saw a need in the market for a pure Java version of Berkeley DB database, driven by the need for portability and ease of development," said Sleepycat president and CEO Mike Olson. "We've had over four thousand downloads of Java Edition already, and we are very pleased to see such high customer interest in our new product."

The Java Edition offers the same storage services as its current Berkeley DB engine, but the new product was completely redesigned in Java to take advantage of Java's portability and services, such as deeply integrated threading and Java NIO. Like its original, the new version features full ACID transactions and recovery for data storage in its native format. The Java Edition also includes full source code for easier integration and debugging.

"Berkeley DB Java Edition will, without a doubt, be the de facto standard Java API for manipulating BTree databases," said Alex Karasulu, technical lead for the Apache Directory Project. "We're so convinced of this that we are basing the Eve Directory Server on back-ends built using Berkeley DB Java Edition."

In addition to the Apache group, Sleepycat said it has also signed customer deals for its Java Edition with JBoss and the Swiss Institute of Bioinformatics. Sleepycat said it would market the new version to companies looking for data-management software used for specific applications, including data communications, e-commerce and storage.

But how does it stack up against larger players like IBM DB2, Oracle Database 10g or Microsoft SQL Server? Carl Olofson, IDC's program director for information management and data integration software research, told internetnews.com that Sleepycat could actually complement whatever it was running alongside.

"For instance, a developer could write a DB2 client in Java and embed Berkeley DB Java Edition as a means of managing data local to the client as a sort of cache," Olofson said.

Still, there are differences. For example, DB2's Java support lets users -- mainly database administrators, or DBAs -- write Java-stored procedures for DB2 running in an enterprise database management context. Sleepycat's Berkeley DB Java Edition is different in that users run the DBMS natively in a Java environment. It also lets ISVs integrate the Berkeley DB code into their native Java applications and tools without worrying about compiling, linking, and managing interfaces across modules. In the former case, the end-user is a database application user in a DBA-managed environment, whereas in the latter case, the end-user is generally unaware that a database is even present."

The addition of Java in Sleepycat's product line also hints at shifts in the enterprise market. For vendors, the challenge in the open source era is to find a business model that enables them to consistently deliver and support a high-quality open source product and still make a profit.

"The dual-license model seems to be just the approach to deal with that problem -- providing the source code without charge to the open source community while offering the software under conventional license and maintenance agreements to other users at an extremely affordable price," Olofson said.

Sleepycat's new version is also significant for Java, Olofson points out, as it gives the programming language one more avenue to move into more high-performance enterprise computing systems.

"Java has simply taken over as the de facto standard for most new development on UNIX and Linux systems, and has become a key language on other platforms as well," Olofson said.

"Now that Sun and Microsoft have buried the hatchet, one can expect to see more Java development for Windows, as well. Java offers the user flexibility of deployment, promising the ability to run its software on a wide range of devices from mainframes to RISC systems to Intel systems to PDAs. In a sense, both open source and Java are all about freedom of choice. Open source offers ultimate understanding and control of the software, and Java offers ultimate flexibility in deployment of that software."