Oracle Updates Berkeley DB with New APIs, Performance Boost, .NET Support

In a bid to attract more developers to its Berkeley DB open source embeddable database, Oracle this week released two upgraded versions with new APIs for simplifying application development and, for the first time, support for Microsoft's C# and .NET Framework.

The core Berkeley DB is an embeddable database for un-typed data in key/value data structures. Essentially, it's a lower-level database for data that's not inherently relational in structure. In addition to adding support for C# and .NET, the upgraded database has a new utility that auto-generates Berkeley DB application code based on SQL. It also integrates with the C++ Standard Template Library and multi-process support in Oracle's Replication Manager API aimed at simplifying development of highly available (HA) applications.

The other version, Berkeley DB XML, is built on top of the Berkeley DB system. It provides XQuery-based access to documents stored in containers and indexed based on their content. It includes a document parser, an XML indexer, and an XQuery engine. Among other enhancements, the 2.5 release adds support for external functions that allow developers to extend the behavior of their XQuery statements in the C++, Java, or Python APIs. And because it's built on top of Berkeley DB, it inherits all of the enhancements to that system and the APIs.

Oracle acquired the Berkeley DB technology with its 2006 purchase of Sleepycat Software, a company founded by the developers of the database. Since it acquired the company, Oracle has maintained a Berkeley DB family of products that includes the core Berkeley DB and XML version, plus the Berkeley DB Java Edition.

Berkeley DB is used primarily by developers, who insert it into software applications, hardware devices, and equipment. "It's essentially invisible to the end user," said Rex Wang, Oracle's vice president of product marketing who came over to the company from Sleepycat. "And it doesn't require a DBA, because the database is managed internally within the application."

Developers who use Berkeley DB have two licensing options: one commercial and one open source. This dual-licensing model--that's one product distributed under two different sets of terms and conditions--has remained in place since Oracle bought Sleepycat, Wang said. "Sleepycat was an open-source company, and Oracle hasn't really changed the model at all," he said.

Berkeley DB has long supported a wide range of programming languages, from C and C++ to Python, but this release targets Windows developers for the first time with support for C# and .NET. "We're definitely going after the Windows developers," said Wang. "We've heard requests from that community for this support for a long time now. It's a large community of developers, of course, and we were just finally ready to support them."

Berkeley DB has been around since the early 1990s. It's in virtually every version of the Linux operating system, BSD Unix, and Open LDAP. "I'd say it's ubiquitous," said Wang. "If it seems as though not that many people have heard of it, that's because it's embedded; they're not supposed to know about it. It's supposed to be invisible, except to developers."

Both the Berkeley DB 4.8 and Berkeley DB XML 2.5 releases also ramp up performance and scalability, Wang said. The new version of Berkeley DB is designed to perform better on multi-threaded or multi-processed applications. It adds enhanced locking/latching code, multiple table partitions, a bulk load/delete API, and new B-tree compression capability. Berkeley DB XML 2.5 gets the benefit of the BDB 4.8 performance enhancements, plus a smaller on-disk footprint for XML containers.

"The Berkeley DB is different from a regular type of Oracle database," Wang said. "And it gives the company access to a completely different market. It's for people who are developing software that doesn't require administration, where the data format is not neatly organized into tables, rows, and columns--which, if you think about it, is most of the data in the world."

The Berkeley DB team at Oracle is currently working on an upgrade of Berkeley DB Java Edition, according to Wang.

About the Author

John K. Waters is a freelance journalist and author based in Mountain View, CA.

Featured

  • zSpace Imagine Learning Solution

    zSpace Debuts Headset-Free AR/VR System

    Immersive learning company zSpace has announced the zSpace Imagine Learning Solution, a headset-free AR/VR laptop system designed for elementary education. The all-in-one platform integrates hardware, software, and hands-on lessons to create dynamic learning experiences for young students.

  • chart with ascending bars and two silhouetted figures observing it, set against a light background with blue and purple tones

    Report: Enterprises Are Embracing Agentic AI

    According to a new report from SnapLogic, 50% of enterprises are already deploying AI agents, and another 32% plan to do so within the next 12 months..

  • abstract geometric pattern of glowing interconnected triangles, hexagons, and circles in blue, gold, and white, spread across a dark navy-to-black gradient background

    OpenAI Introduces 'Operator' AI for Performing Web Tasks

    OpenAI has announced "Operator," an AI agent designed to perform web-based tasks autonomously using its own browser. Currently available as a research preview for Pro users in the United States, the tool aims to automate everyday activities such as filling out forms, ordering groceries, and even creating memes.

  • illustration showing a large lock and shield, with school and tech icons like a graduation cap, laptop, and school building

    K12TechPro Launches Cybersecurity Resource Center for K-12 Education

    K12TechPro, a community for technology professionals in education, has introduced the K12TechPro Cybersecurity Hub, a collection of resources designed to bolster cybersecurity in K-12 education.