Designing a database is a complex task, which involves many related and conflicting aspects. The design and development of biological databases is not very different from the development of the “traditional” ones, as business or government databases: the first step is understanding the information to store in the database, and then translating them into a robust framework, debugging and maintaining the system (Birney and Clamp, 2004). Of course, this is not a simple task, since modeling a database structure requires a careful and complex analysis, and involves many problems.
2.1. Data Conservancy
One of the basilar problems encountered when designing biological databases concerns the data to store: data can be integrated across a unique species, or refer to multiple species (Paton and Goble, 2001). The first category of data is collected in deep databases; some examples are FlyBase (Drysdale and Crosby, 2005), that collects genetic and molecular data of the insect family Drosophilidae, the Mouse Genome Database (MGD) (Blake et al., 2003), and SCPD (Zhu and Zhang, 1999), SGD (Christie et al. 2004), YEASTRACT (Teixeira et al. 2006), YPD (Hodges et al. 1998) for Saccharomyces cerevisiae. While deep databases collect data of a single species, broad databases store biological information across multiple species; these data pertain to nucleotide sequences as in EMBL (Stoesser et al. 1999) and GenBank (Benson et al. 1998); protein sequences, as in SWISS-PROT (Bairoch and Boeckmann, 1992), MIPS (Mewes et al. 1997), PDB (Berman et al. 2002); pattern sequences, that represent the pattern associated with the alignments of the sequences, as in InterPro (Apweiler et al. 2001), PROSITE (Falquet et al. 2002), GELBANK (Babnigg and Giometti, 2004), collection of proteins, nucleotide sequences as in NCBI (Pruitt et al. 2006); genomic information, as transcriptome (Cahoy et al. 2008) and pathways, in MPW (Selkov et al. 1998), PUMA2 (Maltsev et al. 2006), LIGAND (Goto et al. 2002).
A further classification distinguishes databases according to the source of data: primary databases contain biological information that are directly derived from experiments, as in EMBL (Stoesser et al. 1999) and GenBank (Benson et al. 1998), while secondary databases collect data derived from other storage sources, as repositories, different databases, analysis, i.e. in Swiss-Prot (Bairoch and Boeckmann, 1992) and ENZYME (Bairoch, 2000).