About ACEDB --- The Database Software

This description of ACEDB, the database software, is Question 1 from Brad Sherman's ACEDB Frequently Asked Questions. For more information, see the ACEDB documentation.

What is ACEDB?

ACEDB is an acronym for A Caenorhabditis elegans Database. It can refer to a database and data concerning the nematode C. elegans, or to the database software alone. This document is concerned primarily with the latter meaning. ACEDB is being adapted by many groups to organize molecular biology data about the genomes of diverse species.

ACEDB allows for automatic cross-referencing of items during loading and allows for hypertextual navigation of the links using a graphical user interface and mouse. Certain special purpose graphical displays have been integrated into the software. These reflect the needs of molecular biologists in constructing genetic and physical maps of genomes.

ACEDB was written and developed by Richard Durbin (MRC LMB Cambridge, England) and Jean Thierry-Mieg (CNRS, Montpellier, France), beginning circa 1990. It is written in the C programming language and uses the X11 windowing system to provide a platform independent graphical user interface. The source code is publicly available. Durbin and Thierry-Mieg continue to develop the system, with contributions from other groups including Lawrence Berkeley Laboratory and the Integrated Genomic Database (IGD) project headed by Otto Ritter.

A description by Durbin and Thierry-Mieg:
ACEDB does not use an underlying relational database schema, but a system we wrote ourselves in which data are stored in objects that belong in classes. This is nevertheless a general database management system using caches, session control, and a powerful query language. Typical objects are clones, genes, alleles, papers, sequences, etc. Each object is stored as a tree, following a hierarchical structure for the class (called the "model"). Maps are derived from data stored in tree objects, but precomputed and stored as tables for efficiency. The system of models allows flexibility and efficiency of storage -missing data are not stored. A major advantage is that the models can be extended and refined without invalidating an existing database. Comments can be added to any node of an object.