Queues are well-suited for applications that create records, and then must deal with those records in creation order. A good example is on-line purchasing systems. Orders can enter the system at any time, but should generally be filled in the order in which they were placed. Berkeley DB offers important data management services, including concurrency, transactions, and recovery. All of these services work on all of the storage structures.
Many users can work on the same database concurrently.
Berkeley DB handles locking transparently, ensuring that two users working on the same record do not interfere with one another. The library provides strict ACID transaction semantics. Some systems allow the user to relax, for example, the isolation guarantees that the database system makes. Berkeley DB ensures that all applications can see only committed updates. Multiple operations can be grouped into a single transaction, and can be committed or rolled back atomically.