What is it?
Berkeley DB is a lightweight, embeddable database that emerged
from the open source world but now has the marketing might of
Oracle behind it. It enables developers to incorporate database
functionality within applications that have predictable data access
patterns, without the overhead of SQL query processing. However, it
has nothing to offer database administrators, being designed to
operate without administration.
In addition to the standard release, there are two further
versions: Berkeley DB Java Edition and Berkeley DB XML.
Oracle acquired Berkeley DB's originator, Sleepycat, in February
2006, provoking speculation that it was moving to close down some
of the open source competition that was eating at its market share.
Instead, Oracle has provided a commercially licensed version
alongside the open source project.
Analyst firm Ovum said, "Oracle has continued the development of
Berkeley DB There is no sign of a lack of commitment to the future
of the product."
According to Ovum, the embedded database market is growing
faster than other database markets, at about 35% per year. "The
backing of the Oracle sales and distribution channel should put
Berkeley DB in a good position to exploit that growth," it
said.
Where did it originate?
Berkeley DB was developed at the University of California.
Before Sleepycat was formed, the database was used in Netscape's
browser and LDap (Lightweight Directory Access Protocol)
server.
What's it for?
Sleepycat said, "Berkeley DB is the ideal choice for static
queries over dynamic data, while traditional relational databases
are well suited for dynamic queries over static data."
It can manage databases in memory, on disc or both. All runtime
administration is controlled by the application. Developers specify
how resources are to be allocated, for example, the amount of
memory dedicated to caching records, and the on-disc storage
structure used for individual tables.
Sleepycat said, "Berkeley DB supports replication over multiple
systems, enabling applications to scale massively with low latency
and provide fault tolerance for high availability solutions."
What makes it special?
The non-stop upgrades feature in Berkeley DB 4.5, released under
Oracle's ownership, enables it to be upgraded without downtime,
making it particularly suitable for telecoms and other services
that cannot afford to be offline.
How difficult is it to master?
The three-day Berkeley DB Developers Workshop is aimed at
software engineers and architects with a working knowledge of C/C++
programming and database application development.
Where is it used?
Sleepycat said there are more than 200 million deployments of
Berkeley DB. High-profile users include Google, eBay, Cisco, Yahoo
and AT&T. It is found in all versions of Linux and BSD Unix,
OpenLDap, Sendmail, Kerberos, Openoffice and Red Hat Directory
Server. The Apache web server uses Berkeley DB for basic HTTP
authentication, among other projects.
MySQL allows users to create tables to be managed by Berkeley
DB. There are interfaces for Perl, Python, PHP and Ruby, among
other programming languages.
What's coming up?
Oracle is working to integrate features from Berkeley DB into
other database products. According to Ovum, Oracle is moving
towards a blended database model, where relational and embedded
technologies are integrated into the data management
architecture.
Training
Sourceforge and many other organisations bundle Berkeley DB with
their products. Training is available from Oracle, Sleepycat and
open source training providers:
http://education.oracle.com/
http://sleepycat2.inetu.net/services/training.html
Useful books have been published by Sleepycat and O'Reilly,
among others:
www.oracle.com/technology/documentation/berkeley-db/db/gsg/CXX/introduction.html
www.apress.com
Rates of pay
Salaries for experienced database developers start at about
£40,000.
Comment on this article:
computer.weekly@rbi.co.uk
Related articles:
Salary survey
Catch up on training advice with Hot Skills