欢迎大家赞助一杯啤酒🍺 我们准备了下酒菜:Formal mathematics/Isabelle/ML, Formal verification/Coq/ACL2, C++/F#/Lisp
Dbm
(→简介) |
|||
第1行: | 第1行: | ||
+ | [[image:qdbm_logo.png]] | ||
==简介== | ==简介== | ||
Quantumtheoretically Dangerous Blast Machine-QDBM是一个管理数据库的开发库,参照GDBM实现:更高的处理速度,更小的数据库文件大小,和更简单的API。 | Quantumtheoretically Dangerous Blast Machine-QDBM是一个管理数据库的开发库,参照GDBM实现:更高的处理速度,更小的数据库文件大小,和更简单的API。 |
2007年1月7日 (日) 11:16的版本
简介
Quantumtheoretically Dangerous Blast Machine-QDBM是一个管理数据库的开发库,参照GDBM实现:更高的处理速度,更小的数据库文件大小,和更简单的API。
QDBM is a library of routines for managing a database. The database is a simple data file containing records, each is a pair of a key and a value. Every key and value is serial bytes with variable length. Both binary data and character string can be used as a key and a value. There is neither concept of data tables nor data types. Records are organized in hash table or B+ tree.
As for database of hash table, each key must be unique within a database, so it is impossible to store two or more records with a key overlaps. The following access methods are provided to the database: storing a record with a key and a value, deleting a record by a key, retrieving a record by a key. Moreover, traversal access to every key are provided, although the order is arbitrary. These access methods are similar to ones of DBM (or its followers: NDBM and GDBM) library defined in the UNIX standard. QDBM is an alternative for DBM because of its higher performance.
As for database of B+ tree, records whose keys are duplicated can be stored. Access methods of storing, deleting, and retrieving are provided as with the database of hash table. Records are stored in order by a comparing function assigned by a user. It is possible to access each record with the cursor in ascending or descending order. According to this mechanism, forward matching search for strings and range search for integers are realized. Moreover, transaction is available in database of B+ tree.
QDBM is written in C, and provided as APIs of C, C++, Java, Perl, and Ruby. QDBM is available on platforms which have API conforming to POSIX. QDBM is a free software licensed under the GNU Lesser General Public License.