Ensembl uses MySQL relational databases to store its information. A comprehensive set of Application Programme Interfaces (APIs) serve as a middle-layer between underlying database schemes and more specific application programmes. The APIs aim to encapsulate the database layout by providing efficient high-level access to data tables and isolate applications from data layout changes.
Ensembl's API is written in Perl:
CoreSequence, genes and other automated annotation |
Comparative genomicsHomologues, paralogues and protein families |
VariationSNPs, somatic mutations and structural variants |
RegulationRegulatory features, motifs and oligoprobes |
The Registry system allows to tell your programs where to find the EnsEMBL databases and how to connect to them. It has been implemented for the Ensembl Core and Compara APIs.
Ensembl is an open project and we would like to encourage correspondence and discussions on any subject on any aspect of Ensembl. Please see the Ensembl Contacts page for suitable options for getting in touch with us.
If you are interested in undertaking a short-term collaborative project, our "Geek for a Week" scheme allows developers and researchers to work alongside Ensembl team members.