Difference between revisions of "GotCloud"

From Genome Analysis Wiki
Jump to navigationJump to search
(14 intermediate revisions by 3 users not shown)
Line 1: Line 1:
 
__TOC__
 
__TOC__
  
= Genomes on the Cloud (GotCloud) Introduction=
+
== Genomes on the Cloud (GotCloud) Introduction==
  
 
To handle the increasing volume of next generation sequencing and genotyping data, we created and developed software pipelines called '''Genomes on the Cloud (GotCloud).'''
 
To handle the increasing volume of next generation sequencing and genotyping data, we created and developed software pipelines called '''Genomes on the Cloud (GotCloud).'''
Line 26: Line 26:
 
[[File:Gotcloud.puzzles.v2.png|500px]]
 
[[File:Gotcloud.puzzles.v2.png|500px]]
  
== Getting Help with GotCloud ==
+
 
 +
=== Getting Help with GotCloud ===
  
 
Please join in the [http://groups.google.com/group/GotCloud GotCloud Google Group] to ask / discuss / comment about these pipelines.
 
Please join in the [http://groups.google.com/group/GotCloud GotCloud Google Group] to ask / discuss / comment about these pipelines.
Line 35: Line 36:
  
  
== Sequence Analysis Background Information ==
+
=== Sequence Analysis Background Information ===
  
 
There are many essential steps in the analysis of next generation sequence data.  
 
There are many essential steps in the analysis of next generation sequence data.  
Line 43: Line 44:
 
The fastq files are processed using the [[GotCloud: Alignment Pipeline|alignment pipeline]] which finds the most likely genomic location for each read and stores that information in a [[BAM|BAM (Binary Sequence Alignment/Map format) file]].  In addition to the sequence and base quality information contained in FASTQ files, a BAM file also contains the genomic location and some additional information about the mapping.  As part of the [[GotCloud: Alignment Pipeline|alignment pipeline]], the base qualities are adjusted to more accurately reflect the likelihood that the base is correct.  
 
The fastq files are processed using the [[GotCloud: Alignment Pipeline|alignment pipeline]] which finds the most likely genomic location for each read and stores that information in a [[BAM|BAM (Binary Sequence Alignment/Map format) file]].  In addition to the sequence and base quality information contained in FASTQ files, a BAM file also contains the genomic location and some additional information about the mapping.  As part of the [[GotCloud: Alignment Pipeline|alignment pipeline]], the base qualities are adjusted to more accurately reflect the likelihood that the base is correct.  
  
The [[GotCloud: Alignment Pipeline|alignment pipeline]] can be skipped if you already have Deduped and Recalibrated BAM files.
+
The [[GotCloud: Alignment Pipeline|alignment pipeline]] can be skipped if you already have Deduped and Recalibrated BAM files.  If you have BAMs, but they needed to be deduped and recalibrated, you can use our [[GotCloud:_Alignment_Sub-Pipelines#recabQC_2|recabQC pipeline]].
  
 
The [[GotCloud: Variant Calling Pipeline|variant calling pipeline]] processes the deduped and recalibrated BAM files produced by the alignment pipeline or that you provide it, generating an initial list of polymorphic sites and genotypes stored in a [http://www.1000genomes.org/wiki/Analysis/Variant%20Call%20Format/vcf-variant-call-format-version-41 VCF (Variant Call Format) file].  The [[GotCloud: Variant Calling Pipeline|variant calling pipeline]] then filters the  variants using both hard filters and a [[SVM Filtering|Support Vector Machine (SVM)]].  It then uses haplotype information to refine these genotypes in an updated VCF file.
 
The [[GotCloud: Variant Calling Pipeline|variant calling pipeline]] processes the deduped and recalibrated BAM files produced by the alignment pipeline or that you provide it, generating an initial list of polymorphic sites and genotypes stored in a [http://www.1000genomes.org/wiki/Analysis/Variant%20Call%20Format/vcf-variant-call-format-version-41 VCF (Variant Call Format) file].  The [[GotCloud: Variant Calling Pipeline|variant calling pipeline]] then filters the  variants using both hard filters and a [[SVM Filtering|Support Vector Machine (SVM)]].  It then uses haplotype information to refine these genotypes in an updated VCF file.
Line 51: Line 52:
 
[[File:GotCloudDiagram.jpg|500px]]
 
[[File:GotCloudDiagram.jpg|500px]]
  
= GotCloud Setup =
+
 
 +
== Publication ==
 +
If you use GotCloud, please cite our publication:
 +
[http://genome.cshlp.org/content/early/2015/04/14/gr.176552.114.abstract Jun, Goo, et al. "An efficient and scalable analysis framework for variant extraction and refinement from population scale DNA sequence data." Genome research (2015): gr-176552.]
 +
 
 +
== GotCloud Setup ==
  
 
You may run the GotCloud software in several modes:
 
You may run the GotCloud software in several modes:
Line 59: Line 65:
 
** You can run on an EC2 cluster instance created by StarCluster.  
 
** You can run on an EC2 cluster instance created by StarCluster.  
  
GotCloud has been developed and tested on Linux Ubuntu 12.10 and 12.04.2 LTS.  While it should work on other Linux systems, they have not yet been tested.  
+
GotCloud has been developed and tested on Linux Ubuntu 12.10 and 12.04.2 LTS and Red Hat 6.6.  While it should work on other Linux systems, they have not yet been tested.  
 +
 
 +
=== GotCloud on Amazon ===
 +
You can take advantage of GotCloud AMI's when running on Amazon.  The GotCloud already includes GotCloud and default reference files.
 +
 
 +
See [[GotCloud: Amazon]] for instructions on using GotCloud on Amazon.
 +
 
 +
=== GotCloud Setup on Any Linux Machine ===
  
== GotCloud Dependencies ==
+
==== GotCloud Dependencies ====
  
 
GotCloud requires certain things to be installed in order to run:
 
GotCloud requires certain things to be installed in order to run:
Line 76: Line 89:
 
  [gotcloud_path]/scripts/check_requirements.sh
 
  [gotcloud_path]/scripts/check_requirements.sh
  
== Install GotCloud Software ==
+
==== Install GotCloud Software ====
  
 
You can install gotCloud on your system as (follow the links for the appropriate instructions):
 
You can install gotCloud on your system as (follow the links for the appropriate instructions):
Line 92: Line 105:
 
For more information on Amazon Web Services, see: https://aws.amazon.com/
 
For more information on Amazon Web Services, see: https://aws.amazon.com/
  
== GotCloud Reference/Resource Files ==
+
==== GotCloud Reference/Resource Files ====
 
In order to run gotCloud, you need to provide Genetic Reference and Resource Files.
 
In order to run gotCloud, you need to provide Genetic Reference and Resource Files.
  
Line 100: Line 113:
 
* When running on Amazon, a default set of reference files are included in the GotCloud AMI.
 
* When running on Amazon, a default set of reference files are included in the GotCloud AMI.
  
== Configure GotCloud ==
+
==== Configure GotCloud ====
 
* [[Configure GotCloud|Configure Gotcloud]] for your installation
 
* [[Configure GotCloud|Configure Gotcloud]] for your installation
  
Line 106: Line 119:
  
 
* [[GotCloud: Alignment Pipeline|Alignment Pipeline]]  
 
* [[GotCloud: Alignment Pipeline|Alignment Pipeline]]  
 +
** [[GotCloud: Alignment Sub-Pipelines|Alignment Sub-Pipelines]] - for if you do not want to run the entire Alignment Pipeline
 
* [[GotCloud: Variant Calling Pipeline|Variant Calling Pipeline]]
 
* [[GotCloud: Variant Calling Pipeline|Variant Calling Pipeline]]
* [[GotCloud: Indel Calling Pipeline|Indel Calling Pipeline]]
+
* Indel Calling Pipeline
 +
* [[GotCloud: GenomeSTRiP Pipeline|GenomeSTRiP Pipeline]] (Structural Variation)
 +
* MEI Calling Pipeline - ''Ask if you're interested''
 +
 
 +
You can also create your own pipelines.  Instructions are here:
 +
* [[GotCloud: Creating a New Pipeline]]  
  
 
=== GotCloud Demos ===
 
=== GotCloud Demos ===
SeqShop GotCloud Demos:
+
GotCloud Demos (originally from our sequencing workshop):
 
* [[SeqShop: Sequence Mapping and Assembly Practical]]
 
* [[SeqShop: Sequence Mapping and Assembly Practical]]
 
* [[SeqShop: Variant Calling and Filtering for SNPs Practical]]
 
* [[SeqShop: Variant Calling and Filtering for SNPs Practical]]
Line 122: Line 141:
  
 
== UMich Development/Release How-To Notes ==
 
== UMich Development/Release How-To Notes ==
* [[Creating Packages]]
+
* [[Releasing GotCloud]]
 
* Amazon EC2
 
* Amazon EC2
 
** [[Creating an AMI on EC2]]
 
** [[Creating an AMI on EC2]]
Line 128: Line 147:
 
** [[Mount S3 Volume]]
 
** [[Mount S3 Volume]]
 
** Notes on sequence data preparation in [[Amazon Storage|Amazon Storage]].
 
** Notes on sequence data preparation in [[Amazon Storage|Amazon Storage]].
 +
 +
* [[Git_FAQs#Subtrees|Upgrade Git Subtree]]

Revision as of 18:09, 15 December 2015

Genomes on the Cloud (GotCloud) Introduction

To handle the increasing volume of next generation sequencing and genotyping data, we created and developed software pipelines called Genomes on the Cloud (GotCloud).

GotCloud contains Mapping & Variant Calling Pipelines.

Key Features:

  • Connects sequence analysis tools together in automated pipeline
    • Alignment, quality control, variant calling
  • Robust against unexpected system failure using GNU make
    • easy restart after failure
  • Massively parallel, can run hundreds of jobs
    • Splits large jobs into many pieces
    • Simplifies running on clusters
  • Scalable to tens of thousands of samples
  • Easy to use - Automates series of configurable steps
    • user doesn't have to understand/configure/know the many tools required to create high quality results
  • Available on Amazon Web Services (AWS) Elastic Compute Cloud (EC2)
  • Run on local machines/clusters

GotCloud incorporates the alignment and variant calling pipelines that we have been using at UM into one easy to use, publicly available tool. GotCloud can run on a user's computer, on an instance in a compute cloud, and/or can split the work up onto a cluster of machines or instances.

Gotcloud.puzzles.v2.png


Getting Help with GotCloud

Please join in the GotCloud Google Group to ask / discuss / comment about these pipelines.

Currently the "join" button appears to be missing. Click "NEW TOPIC", then select "Join this group". You can then cancel the message post (or post a message).

See GotCloud: FAQs if you have any questions. If your questions are not answered there, join the google group and ask, or email Mary Kate Wing (mktrost@umich.edu).


Sequence Analysis Background Information

There are many essential steps in the analysis of next generation sequence data.

Next generation sequence data analysis starts with FASTQ files, the typical format provided from your sequencing center containing the sequence & base quality information for your data.

The fastq files are processed using the alignment pipeline which finds the most likely genomic location for each read and stores that information in a BAM (Binary Sequence Alignment/Map format) file. In addition to the sequence and base quality information contained in FASTQ files, a BAM file also contains the genomic location and some additional information about the mapping. As part of the alignment pipeline, the base qualities are adjusted to more accurately reflect the likelihood that the base is correct.

The alignment pipeline can be skipped if you already have Deduped and Recalibrated BAM files. If you have BAMs, but they needed to be deduped and recalibrated, you can use our recabQC pipeline.

The variant calling pipeline processes the deduped and recalibrated BAM files produced by the alignment pipeline or that you provide it, generating an initial list of polymorphic sites and genotypes stored in a VCF (Variant Call Format) file. The variant calling pipeline then filters the variants using both hard filters and a Support Vector Machine (SVM). It then uses haplotype information to refine these genotypes in an updated VCF file.

After completing the GotCloud Variant Calling Pipeline, EPACTS (Efficient and Parallelizable Association Container Toolbox) can be used to perform statistical tests to identify genome-wide association from sequence data.

GotCloudDiagram.jpg


Publication

If you use GotCloud, please cite our publication: Jun, Goo, et al. "An efficient and scalable analysis framework for variant extraction and refinement from population scale DNA sequence data." Genome research (2015): gr-176552.

GotCloud Setup

You may run the GotCloud software in several modes:

  • On your own hardware running Ubuntu or Redhat/CentOS. See the instructions about installing the software below.
  • On an Amazon Elastic Compute Cloud using Ubuntu or Redhat/CentOS if you do not have your own set of machines.
    • See GotCloud: Amazon for more information.
    • You can run on an EC2 cluster instance created by StarCluster.

GotCloud has been developed and tested on Linux Ubuntu 12.10 and 12.04.2 LTS and Red Hat 6.6. While it should work on other Linux systems, they have not yet been tested.

GotCloud on Amazon

You can take advantage of GotCloud AMI's when running on Amazon. The GotCloud already includes GotCloud and default reference files.

See GotCloud: Amazon for instructions on using GotCloud on Amazon.

GotCloud Setup on Any Linux Machine

GotCloud Dependencies

GotCloud requires certain things to be installed in order to run:

  • perl - gotcloud is a perl script and it calls many other perl scripts
    • Zlib.pm - required for perl scripts to read compressed files.
  • make - GNU make is used to run the pipelines
  • java - required to run the beagle step of the ld-aware genotype refinement
  • curses/ncurses (required for samtools)
    • On Ubuntu: sudo apt-get install libncurses5 libncurses5-dev
  • cmake (required for premo)
    • On Ubuntu: sudo apt-get install cmake

You can check if your system has the proper software installed by invoking the command

[gotcloud_path]/scripts/check_requirements.sh

Install GotCloud Software

You can install gotCloud on your system as (follow the links for the appropriate instructions):

GotCloud: Versions describes the changes added to each version.


Alternatively if you are using Amazon EC2, you can use one of the following sets of instructions:

For more information on using GotCloud on Amazon, see: GotCloud: Amazon

For more information on Amazon Web Services, see: https://aws.amazon.com/

GotCloud Reference/Resource Files

In order to run gotCloud, you need to provide Genetic Reference and Resource Files.

These include information about the reference sequence and dbnsp positions.

See: GotCloud: Genetic Reference and Resource Files for information about the required files. It contains a description of the required files, information about generating your own versions, as well as a downloadable set of files.

  • When running on Amazon, a default set of reference files are included in the GotCloud AMI.

Configure GotCloud

Running GotCloud Software

You can also create your own pipelines. Instructions are here:

GotCloud Demos

GotCloud Demos (originally from our sequencing workshop):

GotCloud on Amazon Demo (snpcall & indel):

Deprecated: Tutorial: GotCloud

UMich Development/Release How-To Notes