Skip to content

GMOD/Chado

Repository files navigation

Chado

Chado is a modular schema for handling all kinds of biological data. It is intended to be used as both a primary datastore schema as well as a warehouse-style schema.

Introduction

Chado was originally conceived as the next generation Flybase database, combining the sequence annotation database gadfly with the Harvard and Cambridge databases. We have avoided organism or project specificity in the schema, and we hope it will be of use to other projects.

The modules currently in chado are:

Module Description
Audit database audits
Companalysis data from computational analysis
Contact people and groups
Controlled Vocabulary (cv) controlled vocabularies and ontologies
Expression summarized RNA and protein expresssion
General identifiers
Genetic genetic data and genotypes
Library descriptions of molecular libraries
Mage microarray data
Map maps without sequence
Organism species
Phenotype phenotypic data
Phylogeny phylogenetic trees
Publication (pub) publications and references
Sequence sequences and sequence features
Stock specimens and biological collections
WWW generic classes for web interfaces

For documentation on the various modules, see http://www.gmod.org.

Other modules are possible; the existing modules cover a very large variety of use cases.

Chado has a fairly abstract schema, and ontologies and controlled vocabularies (CVs) are utilised where their use is favourable to relational modeling. In particular, the sequence ontology (SO) is vital to the sequence module.

Some (but not all) of the use cases we have discussed are:

  • Central dogma genome annotations

  • Genes that break the central dogma (of which there are many Annotated in fly, including polycistronic transcripts, transplicing, selenocysteine readthroughs, rna editing, ....)

  • Sequence variation data, including SNPs, transposable element insertions, indels, ... how this relates to phenotypes, how these effect the central dogma....

  • Non-wildtype data, including representing a wildtype transcriptome and proteome on a non wildtype genome; implicit and explicit central dogma examples for mutant strains

  • Complex phenotypic data

  • Ontologies structured as graphs; querying over graph ontologies non-recursively by pre-computing the closure

  • Sequence ontology

  • Comparative data

  • Genetic interactions

  • Transgene constructs, complex genetic experiments and their results

The core schema is DBMS independent. The SQL table create files can be found in the chado/modules directory. The main Chado developers are currently using PostgreSQL.

Installation

Please read the included chado/INSTALL.Chado.md document for instructions on how to install the Chado schema.

Using the Chado Docker Image

Locally Build the Docker Image

To build the docker image run the following:

cd docker
make v<version>

Replace <version> with a specific version of Chado that you want to use (e.g. 1.31). This will create a Docker image with the tag: gmod/chado:<version> where is the same version used above (e.g. gmod/chado:1.31).

Using the Chado Docker

You can start and work within the Chado container by using the following command.

docker run -it gmod/chado:<version>

Replace <version> with the specific version of Chado that you want to use (e.g. 1.31). This will start the PostgreSQL server and give you access to a bash terminal.

As a test, you can run the flyway info command after starting the container:

flyway info

You can explore the Chado tables using the psql command in the following way:

psql -U postgres -h localhost -d chado

You will be prompted for a password. The default password is chadotest

Testing a Pull Request

You can test any pull request or other Git branch of Chado by navigating to the Chado directory in the image and changing the branch:

cd Chado/chado
git checkout <branch>

If the branch has any FlyWay migrations you can test those by running these flyway commans:

Use this command to see what needs to be applied

flyway info

For testing of a PR you can set the baseline to the current installation of Chado provided by the image:

flyway baseline

To update Chado you can apply the Flyway migrations:

flyway migrate

As long as no errors occured you will see success for all updates:

flyway info

Chado Support

Please see our website for more information on Chado and the GMOD project:

http://www.gmod.org/

You can send questions to the Chado mailing list:

gmod-schema@lists.sourceforge.net

You can browse the schema CVS repository here:

http://cvs.sourceforge.net/cgi-bin/viewcvs.cgi/gmod/schema/

Authors

Chris Mungall, David Emmert and the GMOD team

Full list of committers: