下定决心要把PBS系统弄明白,今天又被师兄们点名警告,超级不应该。今天晚上,下定决心要学会使用PBS的作业调度系统。然后实操一下。加油!加油!而且我好像发现,每次写作业的笔记,总能够很好的督促我做事情,而没有“输出”的过程一般工作效率都很低效。终于理解了曹柠的那句,用“输出促进输入”。好了,闲话不讲,现在开始干活。其实,我是非常的迷茫的。我觉得交叉学科不好的地方正是在于,学啥都不精,说啥都不会。而且,觉得我们本科学的东西真少,我就应该修读一个计算机的双学位的,学啥教育学啊!哭泣。自我教育真是一辈子的问题,自学也很好!(还记得自己教育学的知识吗?你可以自己给自己当老师啊,自己按照这个学科的课程,安排教学大纲。自己教自己,自己敦促自己学习。)

参考链接:https://www.docin.com/p-1033189394.html

1。基本的格式

用户提前编写好脚本,然后使用qsub命令提交该脚本,pbs会按照脚本内容执行相应的任务。

qsub script_name #script_name是相应的脚本的名字

2。qsub脚本组成

qsub脚本的组成:

  • shell说明语句
  • pbs指示语句
  • 任务(程序或者指令)

下面将对此进行详细的介绍。
(1)shell说明语句
说明用户使用的是那种shell(怎么shell还有许多种吗)

#!/bin/bash/

(2)pbs指示语句
说明用户用来请求任务运行所需的资源或者设置任务的一些属性。以#PBS开头。pbs指示语句是可选的,用户可以不用关心它如何书写,系统会自动设置。

#PBS -I [选项=] 对应的值
#PBS -N mytask #任务名称
#PBS -l ncpus=5 #请求的cpu的数目
#PBS -l mem=90gb #任务的所有进程能够分配到的最大的物理内存数

(3)程序指令
就是我们要按顺序运行的指令,可以是python脚本也可以是Linux脚本。我决定尝试一下,好像并不是特别的难。

3。脚本实例

#!/bin/bash
#PBS -N mutation
#PBS -l select=2:ncpus=5:mem=4gb
ls
cat size1.txt large.txt >test.txt

4。提交指令

qsub job.pbs

最后的屏幕显示:

(base) [xxzhang@mu02 output]$ qsub job.pbs
11214.mu01
(base) [xxzhang@mu02 output]$ qstat
Job ID                    Name             User            Time Use S Queue
------------------------- ---------------- --------------- -------- - -----
10532.mu01                 jupyter          sytong          1271:02: R batch
10647.mu01                 rstudio          yqzhou          11:00:21 R batch
10833.mu01                 rstudio          hywang          07:03:18 R batch
11058.mu01                 jupyter          plli            00:00:03 R batch
11145.mu01                 STDIN            wzhou           00:01:14 R batch
11155.mu01                 jupyter.pbs      rqzhang         00:00:41 R batch
11187.mu01                 rstudio          yuezhu          00:18:08 R batch
11207.mu01                 STDIN            xxzhang         17:14:13 C batch
11208.mu01                 STDIN            plli            00:00:00 R fat
11209.mu01                 STDIN            plli            00:00:00 R fat
11211.mu01                 chrom3diteration yuezhu          01:46:39 R batch
11212.mu01                 STDIN            yqzhou          00:00:16 R batch
11214.mu01                 mutation         xxzhang                0 Q batch

从屏幕显示上(最后一行),我们发现我们这个指令是可以看到的。
但是!!
这个代码运行的结果在哪里看呢?我好像在我们的路径下,并没有找到生成的这个文件呀!!
又是哪里出了问题?
我觉得错误原因是我忘记指定输出文件的路径了,以及忘记指定指令开始执行时间(看到没有,我们的指令现在的状态是Q,也就是排队的状态)

-o #路径名,指定输出文件路径
-a #年月日时分秒,指定任务开始运行时间

还是不对,我这样提交的指令,每次都是显示为Q

11217.mu01 mutation_2 xxzhang 0 Q batch

怎样才能将其转换为R状态呢?

问题具体描述:提交任务之后,一直处于排队的状态,并不运行。

后来莫名其妙的解决了。

#!/bin/bash
#PBS -N mutation_2
#PBS -o /home/xxzhang/workplace/ #这个路径我觉得更多是我们的屏幕显示的内容的输出的路径
cd ${PBS_O_WORKDIR} #添加工作路径
echo "PBS_O_WORKDIR is"${PBS_O_WORKDIR}
cat size1.txt large.txt >test.txt

所以,通过此,就测试成功了。
而这个指令,可以和nohup &连用。也就是说只需要把命令提交到后台,就可以关掉计算机,让服务器自己在那边连轴转,与此同时,也不用担心我的电脑突然卡掉的情况。

基于此,我终于解决了我的批量处理的需求(虽然设定相对比较简单)。

4。可以优化的空间

基本上知道怎么使用了,剩下的就是继续学习更加复杂的pbs提交的脚本的书写。
如:

5。现在尝试解决更加复杂的问题

(1)首先分别解压两组测序文件的fastq,然后使用cat指令,对其进行合并。
(2)然后使用scSplitter按照一定的规则,对其进行拆解。
(3)拆解完成之后,得到result文件夹下的文件。

现在书写pbs任务文件如下:

#!/bin/bash
#PBS -N split_10X_seq
#PBS -o /home/xxzhang/workplace/QBRC/data/fastq  #这个路径我觉得更多是我们的屏幕显示的内容的输出的路径
cd ${PBS_O_WORKDIR} #添加工作路径
echo "PBS_O_WORKDIR is"${PBS_O_WORKDIR}
ls
gunzip R21010305-3-wenku-S1-3-wenku-S1_combined_R1.fastq.gz
gunzip R21010305-3-wenku-S1-3-wenku-S1_combined_R2.fastq.gz
cat ./GEXst/R21010305-3-wenku-S1-3-wenku-S1_combined_R1.fastq  ./GEXnd/R21010305-3-wenku-S1-3-wenku-S1_combined_R1.fastq  >./combine_all/R21010305-3-wenku-S1-3-wenku-S1_all_R1.fastq
cat ./GEXst/R21010305-3-wenku-S1-3-wenku-S1_combined_R2.fastq  ./GEXnd/R21010305-3-wenku-S1-3-wenku-S1_combined_R2.fastq  >./combine_all/R21010305-3-wenku-S1-3-wenku-S1_all_R2.fastq

先解决这个小问题,看看在系统上是否可以运行。
出现了错误:

qstat: Unknown queue destination combine.pbs

好家伙,终于明白原因了。
我提交命令的时候,把qsub改为qstat,怪不得会报错。

接着又报错,写这个文件的时候,要特别注意英文字符,然后还有开头的#!/bin/bash一个都不能多,一个都不能少。

qsub combine.pbs
qstat

拆解完成这个任务之后,接下来想要继续处理的是:
当这个数据处理完成之后,使用scSplitter工具,对数据进行拆解。指令本身并不是很难,难的地方在于,我需要设置pbs任务文件,等待上面的那个指令完成之后,再执行。这个是我之前没有尝试过的。

/home/xxzhang/workplace/software/scSplitter

#!/bin/bash
#PBS -N split_10X_seq_step2
#PBS -o /home/xxzhang/workplace/QBRC/data/fastq/
#PBS -q batch
#PBS -W depend=after:11226.mu01cd ${PBS_O_WORKDIR}
echo "PBS_O_WORKDIR is"${PBS_O_WORKDIR}
ls
python3 scSplitter.py --f inputNames.txt  --i /home/xxzhang/workplace/QBRC/data/fastq/combine_all  --r /home/xxzhang/workplace/QBRC/data/fastq/output_all --ind /home/xxzhang/workplace/QBRC/geneome/hg38/STAR  --chver 1  --cb 16 --ul 12 --tsol 0  --gz True 

屏幕显示:

Job ID                    Name             User            Time Use S Queue
------------------------- ---------------- --------------- -------- - -----
10532.mu01                 jupyter          sytong          1271:02: R batch
10647.mu01                 rstudio          yqzhou          11:00:25 R batch
10833.mu01                 rstudio          hywang          07:03:40 R batch
11058.mu01                 jupyter          plli            00:00:03 R batch
11145.mu01                 STDIN            wzhou           00:01:14 R batch
11155.mu01                 jupyter.pbs      rqzhang         00:00:42 R batch
11187.mu01                 rstudio          yuezhu          00:18:13 R batch
11208.mu01                 STDIN            plli            00:00:00 R fat
11209.mu01                 STDIN            plli            00:00:00 R fat
11211.mu01                 chrom3diteration yuezhu          04:02:51 R batch
11212.mu01                 STDIN            yqzhou          00:00:21 R batch
11226.mu01                 split_10X_seq    xxzhang         00:21:33 R batch
11230.mu01                 jupyter          whe             00:00:19 R batch
11232.mu01                 STDIN            rqzhang         00:00:00 R batch
11233.mu01                 ...10X_seq_step2 xxzhang                0 H batch

可以看到我新提交的指令,现在处于Hold的状态。

6。删除指令

qdel 11227.mu01

今天的任务,到现在基本上就结束了。
我觉得和学姐交流下来真好。给我了两个启发:

(1)将第一次测和第二次测得数据整合在一起,或许就能够解决测序的深度不够的问题。
(2)R1不好解释,为什么不直接使用R2来做呢?直接将其看成是单端的数据。
(3)顺便吐槽一下,这个课题的艰难。反正是一定要坚持下来的,我不能重蹈本科期间的覆辙。

  • somatic mutation的累积主要是通过突变,对于神经组织本身就很少。
  • 10X的数据的不全长的测序,且覆盖深度比较低
  • RNA的表达情况在细胞间不均衡
  • 正常细胞,非肿瘤细胞
  • 对的,它是测核的,而非线粒体,所以结果可能依然有问题

==>其实到这里,也比较一目了然了,我们需要对*“筛选”*,在实验设计方面下一些功夫


接下来还有半个小时的时间,我打算,使用nohup提交一些测序深度,本身就很高的细胞,看看这部分的细胞是不是会更有希望一些。
使用今天学到的,qsub结合nohup的方法,向后台提交指令。

#!/bin/bash
#PBS -N somatic
#PBS -o /home/xxzhang/workplace/QBRC/
#PBS -q batchcd ${PBS_O_WORKDIR}
echo "PBS_O_WORKDIR is"${PBS_O_WORKDIR}
lsperl /home/xxzhang/workplace/QBRC//somatic.pl NA  NA RNA:/home/xxzhang/workplace/QBRC/data/fastq/output_st/results/cell_CGATTTGCACCAAAGG_R2.fastq.gz NA 32 hg38 /home/xxzhang/workplace/QBRC/geneome/hg38/hg38.fasta /home/xxzhang/miniconda3/bin/java /home/xxzhang/workplace/QBRC/output/CGATTTGCACCAAAGG/  human  1  ./disambiguate_pipelineperl /home/xxzhang/workplace/QBRC//somatic.pl NA  NA RNA:/home/xxzhang/workplace/QBRC/data/fastq/output_st/results/cell_CAAGTTATCAAAGGCA_R2.fastq.gz NA 32 hg38 /home/xxzhang/workplace/QBRC/geneome/hg38/hg38.fasta /home/xxzhang/miniconda3/bin/java /home/xxzhang/workplace/QBRC/output/CAAGTTATCAAAGGCA/  human  1  ./disambiguate_pipelineperl /home/xxzhang/workplace/QBRC//somatic.pl NA  NA RNA:/home/xxzhang/workplace/QBRC/data/fastq/output_st/results/cell_CATGCAAGTAATAACC_R2.fastq.gz NA 32 hg38 /home/xxzhang/workplace/QBRC/geneome/hg38/hg38.fasta /home/xxzhang/miniconda3/bin/java /home/xxzhang/workplace/QBRC/output/CATGCAAGTAATAACC/  human  1  ./disambiguate_pipelineperl /home/xxzhang/workplace/QBRC//somatic.pl NA  NA RNA:/home/xxzhang/workplace/QBRC/data/fastq/output_st/results/cell_TACGCACCAATTATGC_R2.fastq.gz NA 32 hg38 /home/xxzhang/workplace/QBRC/geneome/hg38/hg38.fasta /home/xxzhang/miniconda3/bin/java /home/xxzhang/workplace/QBRC/output/TACGCACCAATTATGC/  human  1  ./disambiguate_pipelineperl /home/xxzhang/workplace/QBRC//somatic.pl NA  NA RNA:/home/xxzhang/workplace/QBRC/data/fastq/output_st/results/cell_AGCATCCCATCACTTC_R2.fastq.gz NA 32 hg38 /home/xxzhang/workplace/QBRC/geneome/hg38/hg38.fasta /home/xxzhang/miniconda3/bin/java /home/xxzhang/workplace/QBRC/output/AGCATCCCATCACTTC/  human  1  ./disambiguate_pipelineperl /home/xxzhang/workplace/QBRC//somatic.pl NA  NA RNA:/home/xxzhang/workplace/QBRC/data/fastq/output_st/results/cell_GTACCTTGTGCTAGAC_R2.fastq.gz NA 32 hg38 /home/xxzhang/workplace/QBRC/geneome/hg38/hg38.fasta /home/xxzhang/miniconda3/bin/java /home/xxzhang/workplace/QBRC/output/GTACCTTGTGCTAGAC/  human  1  ./disambiguate_pipelineperl /home/xxzhang/workplace/QBRC//somatic.pl NA  NA RNA:/home/xxzhang/workplace/QBRC/data/fastq/output_st/results/cell_TTTGTCCCATTTAAGC_R2.fastq.gz NA 32 hg38 /home/xxzhang/workplace/QBRC/geneome/hg38/hg38.fasta /home/xxzhang/miniconda3/bin/java /home/xxzhang/workplace/QBRC/output/TTTGTCCCATTTAAGC/  human  1  ./disambiguate_pipelineperl /home/xxzhang/workplace/QBRC//somatic.pl NA  NA RNA:/home/xxzhang/workplace/QBRC/data/fastq/output_st/results/cell_TTCACTGTCGATATTG_R2.fastq.gz NA 32 hg38 /home/xxzhang/workplace/QBRC/geneome/hg38/hg38.fasta /home/xxzhang/miniconda3/bin/java /home/xxzhang/workplace/QBRC/output/TTCACTGTCGATATTG/  human  1  ./disambiguate_pipelineperl /home/xxzhang/workplace/QBRC//somatic.pl NA  NA RNA:/home/xxzhang/workplace/QBRC/data/fastq/output_st/results/cell_TTTGTGGCATTGTCCT_R2.fastq.gz NA 32 hg38 /home/xxzhang/workplace/QBRC/geneome/hg38/hg38.fasta /home/xxzhang/miniconda3/bin/java /home/xxzhang/workplace/QBRC/output/TTTGTGGCATTGTCCT/  human  1  ./disambiguate_pipelineperl /home/xxzhang/workplace/QBRC//somatic.pl NA  NA RNA:/home/xxzhang/workplace/QBRC/data/fastq/output_st/results/cell_CATGCGCAGCGAAGTA_R2.fastq.gz NA 32 hg38 /home/xxzhang/workplace/QBRC/geneome/hg38/hg38.fasta /home/xxzhang/miniconda3/bin/java /home/xxzhang/workplace/QBRC/output/CATGCGCAGCGAAGTA/  human  1  ./disambiguate_pipeline

结束。只能寄托希望于我的电脑运行一晚上依旧健康吧。

经验总结 | PBS系统的使用相关推荐

  1. 适合w ndows系统的游戏,【游戏经验】Wndows系统游戏“红心大战”实战技巧图解版.doc...

    [游戏经验]Wndows系统游戏"红心大战"实战技巧图解版 [游戏经验]Windows系统游戏"红心大战"实战技巧图解版 Windows系统自带的"红 ...

  2. oa项目经验描述_OA系统为企业带来多少实用价值?移动OA又为企业解决哪些问题?...

    OA办公近年来得到了快速的发展,尤其是在信息互联不断加剧的今天,为更好的提升企业组织管理能力,改善协同办公关系,增进企业办公效率,加速信息化建设变得愈加重要. OA办公的出现,无疑满足了人们对办公高效 ...

  3. 工作经验:Java 系统记录调用日志,并且记录错误堆栈

    前言:现在有一个系统,主要是为了给其他系统提供数据查询接口的,这个系统上线不会轻易更新,更不会跟随业务系统的更新而更新(这也是有一个数据查询接口系统的原因,解耦).这时,这个系统就需要有一定的方便的线 ...

  4. 【转载】企业级服务器设计与实现经验之插件系统基础篇

    最初之所以要采用插件的形式进行开发,主要是为了解决功能服务的"热插拔"问题,在决定采用"框架+插件"的方式进行设计后,我们就更进一步,打算将一个个可以分割开来的 ...

  5. 装机经验-某些服务器安装系统困难,需要BIOS设置

    一些服务器主板和CPU无法正常安装winserver系统,可能需要BIOS设置,方法一般主板和CPU官网有.

  6. 直播系统app源码经验分享——直播系统PK功能介绍

    直播平台发展至今,PK功能成为必不可少的功能.相较于传统的互动送礼打赏,PK功能是如何一步步引领全新直播潮流的呢? 首先我们要知道PK功能存在的现实意义--由传统的单人内容产出到双人甚至多人互动内容产 ...

  7. 经验总结[系统方面]

    把钱花在内存上是值得的  建立良好的profile工具,并利用之  memcache并不廉价,仔细控件cache的对象大小和访问方式  避免数据库的join操作?  在产品上做出限制以避免过慢的查询. ...

  8. 怎样设置win10电脑的默认浏览器?技巧经验!win10系统的默认浏览器如何设定?

    相信在我们大家的生活,都会使用到浏览器,我们大家使用的浏览器可能会各不相同,因为大家使用哪个方便就用哪个,如果大家的电脑上有许多的浏览器,那么如何将浏览器设置为默认的浏览器呢?这样就不用频繁去更换网页 ...

  9. LMT NEW PBS作业调度系统应对金融行业作业批处理

     LMT NEW PBS作业调度管理系统应对金融行业作业批处理 大集中之后,要改变批处理作业管理的现状,各公司急需引进成熟统一的解决方案,以提高作业效率,节约管理成本,规避作业失败的风险. 经过近几年 ...

  10. 大促场景系统稳定性保障实践经验分享

    简介:11月11日0点刚过26秒,天猫双11的订单创建峰值就达到58.3万笔/秒,阿里云又一次扛住全球最大规模流量洪峰!58.3万笔/秒,这一数字是2009年第一次天猫双11的1457倍. 每到双11 ...

最新文章

  1. 编程感悟-建立好代码sop
  2. android 中间按钮突出,Android 实现 按钮从两边移到中间动画效果
  3. 未排序正整数组中累加和为指定值的最长子数组长度
  4. 哨兵机制服务器环境准备
  5. [Andriod官方训练教程]保存数据之保存键-值对的集合
  6. 程序员的进阶课-架构师之路(2)-数组
  7. 有人说JavaScript是未来的编程语言?这是为什么?
  8. 使用select和show命令查看mysql数据库系统信息
  9. PHP读取PDF内容方法
  10. 高中计算机评课,高中信息技术优质课评课范文
  11. ORA-00932: 数据类型不一致: 应为 DATE, 但却获得 NUMBER
  12. 计算机图形学【GAMES-101】12、相机(视场、曝光、光圈(F-Stop)、薄棱镜近似、CoC、景深)
  13. HashMap常见面试题
  14. D语言(dlang)编写单片机(cortex-m系列)应用需要用到的技巧
  15. unity制作火焰效果
  16. Failed to introspect Class [com.mchange.v2.c3p0.ComboPooledDataSource] from ClassLoader [ParallelWeb
  17. 大数据之直播平台数据统计
  18. JAVA心理测评系统毕业设计,JAVA心理健康评测系统设计与实现,毕设作品参考
  19. 服务器系统 cad,CAD协同设计管理平台教程之服务器安装
  20. 认认真真推荐10个顶级技术公众号

热门文章

  1. 【实用】网页内容监控并实时推送百度解决方案
  2. python实现文本编辑器_Python实现的文本编辑器功能示例
  3. oracle 打包导出表,数据库导出表数据库
  4. c语言判断100的倍数,显示100以内所有9的倍数及其和。急要,请大家帮帮忙~~还有一些题。...
  5. 研究生论文阅读方法论—怎样查找综述型文章
  6. php合并播放mp4文件_视频音频的分离教程(支持多种格式视频音频合并为MP4) 可导入字幕...
  7. 无线网络 看不到其他计算机,无线局域网内两台电脑网上邻居看不到
  8. iOS系统与Windows电脑如何做到无线传输文件?
  9. ubuntu16.04 将火狐浏览器语言设置成中文
  10. buuctf——(HDCTF2019)Maze