You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

本地Snakemake作业分组及批量样本处理存储问题求助

Snakemake批量处理SRA样本的存储与管道问题

我正在构建一个Snakemake流程,用prefetch从SRA下载大量fastq文件并生成bam文件。少量样本能正常运行,但本地批量处理100个样本时遇到存储瓶颈——流程会先下载所有fastq文件,再执行后续步骤。

我的流程里,最终bam文件之前的所有步骤都标记为temporary(),分析完成后fastq文件会被自动删除,后续不会有存储问题。如果能每次处理10个样本,删除临时输出后再下载新的fastq文件,就能解决当前的存储问题。

我试过两种方法,但都没成功:

  • 对作业分组并分配10核,原本以为会先处理完10个样本的全流程再处理第11个,但分组功能在本地环境不生效
  • 尝试用pipe方法:把prefetch规则的output从temporary()改为pipe()。prefetch与fasterq-dump的管道操作在Snakemake外能正常运行,但在Snakemake中执行时出现「group错误」,看起来是fasterq-dump在文件下载完成前就尝试读取。

以下是我测试pipe方法的Snakemake代码片段:

rule prefetch:
    input: 
    output:
        pipe(os.path.join(config['all_path']['sra_down'], "{srasample}/{srasample}.sra"))
    wildcard_constraints: srasample="|".join(list(config['fastq_sra_HE'].values()))
    params: 
        sraID="{srasample}",
        srapath=expand(config["all_path"]["sra_down"])
    shell: "prefetch {params.sraID} -O {params.srapath}"

rule fasterqdump:
    input: os.path.join(config['all_path']['sra_down'], "{srasample}/{srasample}.sra")
    output: r1=temporary(os.path.join(config['all_path']['sra_down'], "{srasample}_1.fastq")),
        r2=temporary(os.path.join(config['all_path']['sra_down'], "{srasample}_2.fastq"))
    wildcard_constraints: srasample="|".join(list(config['fastq_sra_HE'].values())), r=["1","2"]
    params: 
        sraID=os.path.join(config['all_path']['sra_down'], "{srasample}"),
        srapath=expand(config["all_path"]["sra_down"])
    shell:
        "fasterq-dump {params.sraID} -O {params.srapath}"

报错信息如下:

2024-11-21T16:14:51 fasterq-dump.2.11.3 err: invalid accession '/disco2/tiago/worldpops/SRR204016'
fasterq-dump quit with error code 3
[Thu Nov 21 13:14:52 2024]
Error in group ffb6a5f4-6dee-447e-9a2e-2dea42295399:
    jobs:
        rule fasterqdump:
            jobid: 3
            output: /disco2/tiago/worldpops/SRR204016_1.fastq, /disco2/tiago/worldpops/SRR204016_2.fastq
        rule prefetch:
            jobid: 4
            output: /disco2/tiago/worldpops/SRR204016/SRR204016.sra (pipe)

Shutting down, this might take some time.

恳请各位提供解决该问题的方法。


内容的提问来源于stack exchange,提问作者TiagoRibeiro

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.06.16 01:34:50