Berkeley DB
by Sleepycat™ Software, Inc.
Python Cookbook, 2nd Edition
by Alex Martelli; Anna Martelli Ravenscroft; David Ascher
The Definitive Guide to SQLite
by Michael Owens
XQuery
by Priscilla Walmsley
Linux in a Nutshell, 6th Edition
by Ellen Siever; Stephen Figgins; Robert Love; Arnold Robbins
Linux Pocket Guide, 1st Edition
by Daniel J. Barrett
C++ GUI Programming with Qt 4, Second Edition
by Jasmin Blanchette; Mark Summerfield
Windows PowerShell in Action
by Bruce Payette
bash Cookbook, 1st Edition
by Carl Albing; JP Vossen; Cameron Newham
The Berkeley DB Book is a practical guide to the intricacies of the Berkeley DB. This book covers in-depth the complex design issues that are mostly only touched on in terse footnotes within the dense Berkeley DB reference manual. It explains the technology at a higher level and also covers the internals, providing generous code and design examples.
Average Amazon.com® Rating: ![]()
![]()
![]()
![]()
Based on 2 Ratings
Excellent (but it would be better in C) - 2008-04-23
Reviewer Rating: ![]()
![]()
![]()
![]()
![]()
Berkeley DB (BDB) has certainly grown up over the years, from a simple key/value database to a key/value database with transactional capabilities, replication and more. I read The Berkeley DB Book by Himanshu Yadava, and I was fascinated. The book is very well written; it is always clear, and the author discusses all programming facets of BDB and, where appropriate, compares Berkeley DB to relational database systems, which is a great help if you are used to the latter.
The book is for programmers, and as such, it has a ton of code, which is great. The author writes "Using just C in my code examples would have addressed the largest subsection of programmers", and I agree: I was a bit disappointed that coding is mainly in C++, but chapter 12 shows you the C API (and if you want Java, its API is discussed in chapter 11).
From why and when to use Berkeley DB, through building simple applications and an in-depth discussion of data stores, the book goes on to advanced operations (cursors, duplicate keys, joins, etc.) with plenty of good examples. In Chapter 8, replication; the architecture and APIs provided by BDB, and as always, good code samples. Just before discussing the BDB utilities (the command-line tools: db_stat, db_checkpoint, etc), Himanshu Yadava goes into great detail building distributed transactions and discussing strategies you can apply.
Anyone interested in data storage should read this book, if only to remember that your multi-CPU, terabyte relational database is great, but that there are still a myriad applications that would greatly profit from a smaller, light-weight and blindingly fast database system like Berkeley DB.The Berkeley DB Book belongs on your bookshelf.
Good overview of BerkeleyDB - 2008-03-03
Reviewer Rating: ![]()
![]()
![]()
![]()
![]()
I bought this book to prepare for a project using BerkelyDB. I read the product documentation a few times, but wanted to make sure I hadn't overlooked anything. My interests are rather specialized, I did not pay any attention to replication, for example. I did not read this book cover to cover, I spent an intensive few days trying to resolve some specific questions.
Why care about BerkelyDB?
Berkely DB is an important alternative in cases where a SQL database is not a good solution due to cost, data volumes, administration support, or processing model. BerkelyDB is better described as a set of data store libraries for an in-process, but multi threaded and multi process transactional data store. BerkelyDB is a very mature open source product, with a long history of production deployments.
Why care about this book?
It is the only one written in the last 7 years on this topic, so if it is any good you have to get it. The (free) product documentation is quite good, but rather scattered. As the author says in the introduction, putting it together in one document, with additional commentary is worthwhile.
What I liked?
The text is clean, the layout is well organized. I found it easy to jump to the areas I was interested in. In the end I answered my questions and was satisfied with the content.
What I didn't like?
The author made several decisions that do not fit my particular needs. First, the book is written using C++ examples, and I work in Java these days. That decision is certainly defensible, but using C++ required (for the sake of brevity) using some non standard libraries for things like threading. With Java this is not needed. Secondly, the examples tend to show programs in full. For my purposes I really only care about the specific BDB calls under discussion, the complete examples just take up extra space. My greatest disappointment with the book is that it did not go into architectural issues to any great depth. This is unfortunate, since the data model for BDB is radically different than the relational model.
Top Level Categories:
Operating Systems
Sub-Categories:
Operating Systems > Linux
Linux > Administration
Linux > Basics
Linux > Documentation
Some information on this page was provided using data from Amazon.com®. View at Amazon >