DNASeq管道
重要的
這個文檔已經退休了,可能不會被更新。產品、服務或技術中提到的這些內容不再支持。
磚基因組學的運行時已被棄用。開源的等價物,看到回購genomics-pipelines和發光。生物信息學庫是運行時的一部分被釋放集裝箱碼頭工人,可從ProjectGlow Dockerhub頁麵。
關於磚運行時棄用策略的更多信息和時間表,看看磚運行時版本和支持計劃的支持。
請注意
以下庫版本打包在磚7.0運行時的基因組學。磚庫包括在低版本的運行時對基因組學、看發布說明。
磚DNASeq管道GATK最佳實踐兼容管道短讀對齊,變異召喚,注釋和變體。它使用以下軟件包,並行使用火花。
BWA v0.7.17
亞當v0.32.0
GATK HaplotypeCaller v4.1.4.1
SnpEff v4.3
關於管道實現和預期運行時的更多信息和成本為各種選項的組合,看看在Scala建設最快的DNASeq管道。
設置
管道運行作為一個磚的工作。你可以設置一個集群政策保存配置:
{“num_workers”:{“類型”:“無限”,“defaultValue”:13},“node_type_id”:{“類型”:“無限”,“defaultValue”:“c5.9xlarge”},“spark_env_vars.refGenomeId”:{“類型”:“無限”,“defaultValue”:“grch38”},“spark_version”:{“類型”:“正則表達式”,“模式”:”。* hls。*”,“defaultValue”:“7.4.x-hls-scala2.12”},“aws_attributes.ebs_volume_count”:{“類型”:“無限”,“defaultValue”:3},“aws_attributes.ebs_volume_size”:{“類型”:“無限”,“defaultValue”:200年}}
基因組學的集群配置應該使用磚運行時。
這個任務應該是DNASeq筆記本發現這一頁的底部。
最佳性能,使用優化計算實例與至少60 gb的內存。我們建議c5.9xlarge。
如果你跑步基礎質量分數調整,使用通用(m5.4xlarge)實例,而不是因為這個操作需要更多的內存。
為了降低成本,使用所有現場工人的現貨跌回隨需應變選項選中。
附上3 200 gb的SSD EBS卷
參考基因組
你必須使用一個配置參考基因組環境變量。使用GRCh37,設置環境變量:
refGenomeId=grch37
使用GRCh38相反,替換grch37
與grch38
。
自定義參考基因組
使用參考構建除了GRCh37或GRCh38,遵循這些步驟:
準備與BWA GATK參考使用。
參考基因組目錄內容應該包括這些文件:
<引用名稱>。dict <引用名稱>。fa <引用名稱> .fa。amb <引用名稱> .fa。安<引用名稱> .fa。bwt <引用名稱> .fa。fai <引用名稱> .fa。pac <引用名稱> .fa.sa
參考基因組的文件上傳到雲存儲或DBFS目錄。如果你將文件上傳到雲存儲,你必須的掛載的目錄在DBFS位置。
在集群配置中,設置一個環境變量
REF_GENOME_PATH
指在DBFS fasta文件的路徑。例如,REF_GENOME_PATH=/ mnt /參考基因組/ reference.fa
路徑必須不包括
dbfs:
前綴。當你使用一個自定義的參考基因組,SnpEff注釋階段是跳過。
提示
在集群的初始化,數據磚DNASeq管道使用BWA提供索引文件生成一個索引圖像文件。如果您計劃使用相同的參考基因組很多次,你可以加速集群啟動提前通過構建索引圖像文件。這個過程將會減少集群啟動時間約30秒。
參考基因組目錄複製到磚的司機節點集群運行時對基因組學。
% sh cp - r / dbfs / < reference-dir-path > / local_disk0 /參考基因組
從BWA生成索引圖像文件索引文件。
進口org。broadinstitute。魯莽的人。跑龍套。bwa。_BwaMemIndex。createIndexImageFromIndexFiles(“/ local_disk0 /參考基因組/ <引用名稱> .fa”,“/ local_disk0 /參考基因組/ <引用名稱> .fa.img”)
到索引圖像文件複製到參考fasta文件相同的目錄中。
% sh cp / local_disk0 /參考基因組/ <引用名稱> .fa。img / dbfs / < reference-dir-path >
刪除不需要的文件(BWA指數
.amb
,.ann
,.bwt
,.pac
,.sa
從DBFS)。% fs rm <文件>
參數
管道接受參數,控製其行為。最重要和常見的改變參數記錄;其餘的可以找到DNASeq筆記本。導入筆記本之後,它作為一個工作任務,您可以設置這些參數所有運行orgydF4y2Ba每次運行。
參數 |
默認的 |
描述 |
---|---|---|
清單 |
n /一個 |
描述輸入清單。 |
輸出 |
n /一個 |
管道輸出應該寫的路徑。 |
replayMode |
跳過 |
之一:
|
exportVCF |
假 |
如果這是真的,管道導致VCF以及三角洲湖寫道。 |
referenceConfidenceMode |
沒有一個 |
之一:
|
perSampleTimeout |
12小時 |
一個超時每樣例應用。達到這個超時後,管道繼續到下一個樣品。該參數的值必須包括一個超時單元:“年代”秒,“m”分鍾,或“h”數小時。例如,60米的導致超時60分鍾。 |
提示
優化運行時,設置spark.sql.shuffle.partitions
火花配置三倍數量的集群的核心。
定製
你可以定製DNASeq管道通過禁用讀對齊,變體的召喚,注釋和變體。默認情況下,所有三個階段都是激活的。
瓦爾管道=新DNASeqPipeline(對齊=真正的,callVariants=真正的,注釋=真正的)
禁用變異注釋,管道設置如下:
瓦爾管道=新DNASeqPipeline(對齊=真正的,callVariants=真正的,注釋=假)
允許階段組合是:
讀一致性 |
變量調用 |
變異注釋 |
---|---|---|
真正的 |
真正的 |
真正的 |
真正的 |
真正的 |
假 |
真正的 |
假 |
假 |
假 |
真正的 |
真正的 |
假 |
真正的 |
假 |
清單格式
清單是一個CSV文件或blob描述在哪裏找到輸入FASTQ或BAM文件。例如:
file_path、sample_id paired_end, read_group_id * _R1_ * .fastq。bgz HG001 1, read_group * _R2_ * .fastq.bgz, HG001, 2, read_group
如果你的輸入包括對齊BAM文件,你應該省略了paired_end
字段:
file_path、sample_id paired_end, read_group_id *本,HG001、read_group
提示
如果提供的清單是一個文件,file_path
在每一行可以是一個絕對路徑或相對路徑清單文件。如果提供的清單是一個blob,file_path
字段必須是一個絕對路徑。可以包含著(*)
許多文件相匹配。
支持輸入格式
山姆
BAM
補習
拚花
FASTQ
bgzip
* .fastq.bgz
(推薦)bgzipped文件* .fastq.gz
擴展是公認的bgz
。未壓縮的
* .fastq
gzip
* .fastq.gz
重要的
gzip文件不是可剝離。選擇自動定量集群來最小化成本這些文件。
塊壓縮FASTQ,安裝htslib,包括bgzip
可執行文件。
在本地
gunzip - c <我的文件> . gz結尾|bgzip - c|aws s3 cp - s3: / / < my-s3-file-path > .bgz
從S3
aws s3 cp s3: / / < my-s3-file-path >。廣州- - - - - -|gunzip - c|bgzip - c|aws s3 cp - s3: / / < my-s3-file-path > .bgz
輸出
對齊的讀取,稱為變體,和注釋的變異都寫入三角洲表內所提供的輸出目錄是否啟用相應的階段。每個表由樣本分區ID。此外,如果你配置了管道出口BAMs或vcf,他們會出現在輸出目錄。
|——比對|——-sampleId = HG001 |——鑲花文件|——對齊。bam |——-HG001。bam |——注釋| | - - - -它文件注釋。vcf |——-HG001.vcf|---genotypes |---Delta files |---genotypes.vcf |---HG001.vcf
運行管道新樣本時,它會顯示為一個新的分區。如果你運行的管道樣本已經出現在輸出目錄,該分區將被覆蓋。
以來的所有信息可在三角洲湖,你可以很容易地分析它與火花在Python中,R, Scala或SQL。例如:
#加載數據df=火花。讀。格式(“δ”)。負載(“基因組學/ output_dir /基因型”)#顯示所有從12號染色體變異顯示(df。在哪裏(“contigName = = 12”)。orderBy(“sampleId”,“開始”))
——目錄中注冊表創建表基因型使用δ位置/基因組學/ output_dir /基因型的
通過編程的方式運行
除了使用用戶界麵,您可以開始運行的管道以編程方式使用磚CLI(遺留)。
在UI設置管道工作後,複製工作ID當你通過它工作現在
CLI命令。
這裏有一個例子bash腳本,您可以調整您的工作流:
#生成清單文件貓< <這裏> manifest.csvfile_path、sample_id paired_end read_group_iddbfs:基因組學/ my_new_sample / * _R1_ * .fastq.bgz my_new_sample, 1, read_groupdbfs:基因組學/ my_new_sample / * _R2_ * .fastq.bgz my_new_sample, 2, read_group在這裏# DBFS上傳文件DBFS_PATH=基因組學dbfs: / /表現/$ (日期+“% Y - % m - H % dT % - % - % S”)清單。csv數據磚fs cp manifest.csvDBFS_PATH美元#啟動一個新的運行磚工作現在,作業id <作業id >——notebook-params“{\“清單\”:\”DBFS_PATH美元\“}”
除了從命令行運行開始,您可以使用這個模式來調用管道從詹金斯等自動化係統。