Two BDB drivers are currently provided with DLZ. In the future, a third may be developed to provide even better performance. All the drivers take advantage of Berkeley DB's built-in caching to improve performance. The Berkeley DB drivers provide the best performance for DLZ.
Original BDB Driver |
The original BDB driver is very simple to setup using the dlzbdb utility and provides good performance. Built using Berkeley DB's Concurrent Data Store capability, this driver allows the database to be updated by multiple processes simultaneously. This driver and the dlzbdb utility do not support transactions. |
BDBHPT Driver |
The BDBHPT driver is a little more difficult to setup because there is no utility program currently provided for managing a BDBHPT database. So you will need to develop your own or use the Berkeley DB's db_load program. In the future we plan to develop a replication service that will replicate data from an SQL database to the BDBHPT database. If there is sufficient interest, we may develop a utility similar to dlzbdb for the BDBHPT database. Performance of the BDBHPT driver is very good--at a minimum it is four times faster than the original BDB driver on my test machine. See the Performance Tests page for a comparison of the DLZ's various database drivers. BDBHPT uses can operate in three different modes. Some modes offer more transactional capabilities at the expense of performance, others provide increased performance. See the BDBHPT Driver's documentation for more info. |
Future BDB Driver |
The BDBHPT driver is probably the fastest text based driver that can be developed for DLZ. It may be possible, however, to build a DLZ driver that provides even more performance by eliminating the expensive query-time conversion of text to Bind's internal structures. For more information, see the BDB future page. |