News

New version of Berkeley DB handles XML natively

While relational database vendors add XML translation capabilities to existing products, Sleepycat Software Inc. (www.sleepycat.com), is set to release a version of its Berkeley DB that handles XML natively.

While not a household name, privately held Sleepycat -- with bi-coastal offices in Berkeley, Calif., and Lincoln, Mass. -- already supplies database technology to Amazon, British Telecom, Cisco Systems, EMC, Hitachi, HP, IBM, Motorola, RSA Security, Sun Microsystems and Veritas, according to Michael Olson, Sleepycat's president and CEO.

Sleepycat's Berkeley DB XML, currently in beta and due for general availability in the next 30 days, is targeted at software developers, according to Olson, a UC Berkeley computer science alum who helped found the company in 1996. The company commercially develops, supports and distributes Berkeley DB embedded data management software, which originated in the academic world as an open-source technology. It currently claims more than 200 million deployments.

"Berkeley DB and Berkeley DB XML are application-specific embedded data managers," Olson explained. "They can be tuned to provide exactly the level of database service the application requires."

As developers seek the most effective way to manage XML data, Olson argues that the embedded approach that handled XML natively is best suited to the task.

"The relational vendors have, across the board, announced products that are able to decompose XML into relational format, store it in the relational engines, and transform XPath or XQuery over the XML data into SQL queries run over the data they store in the tables," he told XML Report. "Our point of view is that's not really the right tool for the job. If your data is natively XML, which is an inherently free form and easy to modify data format, you don't need all of your records to have the same structure; for example, it's very hard to store those in relational tables and preserve the flexibility that XML delivers."

That translation from XML to SQL employed in the RDBMS approach can be costly to maintain and can introduce inconsistencies in query-ability and other data operations, Olson said.

"Our point of view is that you don't really want to decompose your XML data into tables and then run SQL queries over it," he explained. "What you want to do is manage it in exactly the form that you work with it in the application."

Olson said the beta test of Berkeley DB XML, now in its final stage, indicates that application developers are seeking a way to manage, store and retrieve XML data locally. "So native storage and retrieval is critical," he said in making the case for Sleepycat's embedded approach.

"The other key difference between our product and every other product of which I am aware, is that ours is genuinely embedded," he said. "It runs in the same address space as the application. There's no separate server to install and administer. There is no runtime communication path that the application pays to fetch data from the database. It is stored locally, it is available instantly, and all of the recovery and scalability that an industrial database delivers is available from us as well."

About the Author

Rich Seeley is Web Editor for Campus Technology.