文件系统

HPC+AI 平台集群(除思源一号外)采用 Lustre 作为后端存储系统。Lustre是一种分布式的、可扩展的、高性能的并行文件系统,能够支持数万客户端、PB级存储容量、数百GB的聚合I/O吞吐,非常适合众多客户端并发进行大文件读写的场合。 Lustre最常用于高性能计算HPC,世界超级计算机TOP 10中的70%、TOP 30中的50%、TOP 100中的40%均部署了Lustre。

HPC+AI 平台集群(除思源一号外)已上线多套 Lustre 文件系统,挂载在计算节点的不同目录:/lustre、/scratch。

数据传输节点(data.hpc.sjtu.edu.cn)还多挂载了一个 /archive。

思源一号为独立集群,使用Gpfs文件系统,共10P。系统包含4 台 DSS-G Server 节点,每台配置 2 块 300G HDD, 用于安装操作系统,安装配置 GPFS 集群及创建文件系统。文件系统 metadata 采用 3 副本冗余,文件系统 data 采用 8+2p 冗余。

主文件系统

/lustre 目录挂载的为 HPC+AI平台集群(除思源一号外)中的主文件系统,共 13.1P,用户的个人目录即位于该目录。

主文件系统特性

主文件系统主要使用 HDD 盘搭建,旨在提供大容量、高可用、较高性能的存储供用户使用。搭建过程中,使用 RAID 保障硬盘级别的数据安全,使用 HA(High Availability) 保障服务器级别的高可用。

用户的主要工作、重要数据都应该发生和存储在主文件系统。

如何使用主文件系统

用户通过个人账户登录计算节点(包括登录节点)之后,默认进入主文件系统,即 HOME 目录。可以在以下路径找到 /lustre 提供给用户的空间:

/lustre/home/acct-xxxx/yyyy

其中acct-xxxx代表计费帐号(课题组帐号),yyyy代表个人帐号。

通过cdcd$HOMEcd~等方式都可进入主目录。

全闪存文件系统

/scratch 目录挂载的为 HPC+AI平台集群(除思源一号外)的全闪存并行文件系统,共 108T 容量,可用作用户的临时工作目录。

全闪存文件系统特性

全闪存文件系统使用全套的 SSD(NVMe协议) 硬盘搭建,旨在提供高性能的存储供用户使用,可更好地支持 IO 密集型作业。对系统来说,单客户端最大读带宽达 5.7GB/s,最大写带宽达 10GB/s;4k 小文件读 IOPS 达 170k,写 IOPS 达 126k。但同时,由于成本问题,系统提供的容量较小;在搭建时也未设置高可用和数据备份,存在数据存储安全性不高等问题。

基于该套系统的特性,推荐用户将其作为临时工作目录,可用于

  1. 存储计算过程中产生的临时文件

  2. 保存读写频率高的文件副本

注意:为了保持全闪存文件系统的稳定可用,/scratch 目录每 3 个月会进行一次清理。因此,请务必及时将重要数据保存回 /lustre 目录。

如何使用全闪存文件系统

用户可以在以下路径找到 /scratch 提供的暂存空间:/scratch/home/acct-xxxx/yyyy

其中acct-xxxx代表计费帐号(课题组帐号),yyyy代表个人帐号。

为了快捷访问,我们已经为用户设置好环境变量,cd$SCRATCH即可进入该临时工作目录。

作业使用示例

我们使用生信 WES 分析流程为例,该流程从测序文件开始,经 bwa 比对、samtools处理,然后用 GATK 检测变异(部分步骤)。 原代码如下:

#!/bin/bash#SBATCH --job-name=WES#SBATCH --partition=cpu#SBATCH --output=%j.out#SBATCH --error=%j.err#SBATCH -N 1#SBATCH --ntasks-per-node=40#SBATCH --exclusiveecho"##### 加载相关软件 #####"module load bwa samtools module load miniconda3&&sourceactivate 10_24# gatk-4.1.9.0echo"##### 设置变量 #####"REFDIR=$HOME/med/annotation/gatk/hg19# 参考基因组和注释文件目录SAMPLEDIR=$HOME/med/testnor# 样本目录WORKDIR=$HOME/WES_TEST# 工作目录TMPDIR=$WORKDIR/tmpdir# 临时缓存目录mkdir -p$WORKDIRmkdir -p$TMPDIRSampleID=test# 样本名cd$WORKDIRecho"##### bwa 比对 #####"bwa mem -M -t40\${REFDIR}/ucsc.hg19.fasta\${SAMPLEDIR}/${SampleID}_1.fastq.gz\${SAMPLEDIR}/${SampleID}_2.fastq.gz\|gzip -3 >${SampleID}_mem.samecho"##### samtools 生成bam #####"samtools view -@40-bS${SampleID}_mem.sam\|samtools sort -@40>${SampleID}_mem.sorted.bam samtools index${SampleID}_mem.sorted.bamecho"##### gatk 检测变异 #####"gatk ReorderSam\-I${SampleID}_mem.sorted.bam\-O${SampleID}_mem.sorted.reorder.bam\-R${REFDIR}/ucsc.hg19.fasta\--TMP_DIR${TMPDIR}\--VALIDATION_STRINGENCY LENIENT\--SEQUENCE_DICTIONARY${REFDIR}/ucsc.hg19.dict\--CREATE_INDEXtruegatk MarkDuplicates\-I${SampleID}_mem.sorted.reorder.bam\-O${SampleID}_mem.sorted.reorder.rmdup.bam\--TMP_DIR${TMPDIR}\--REMOVE_DUPLICATESfalse\--ASSUME_SORTEDtrue\--METRICS_FILE${SampleID}_mem.sorted.reorder.markduplicates_metrics.txt\--OPTICAL_DUPLICATE_PIXEL_DISTANCE2500\--VALIDATION_STRINGENCY LENIENT\--CREATE_INDEXtrue

过程中,会产生许多中间文件和临时文件。因此,可利用 $SCRATCH 作为临时目录,加快分析过程。只需要把脚本中的WORKDIR=$HOME/WES_TEST修改为WORKDIR=$SCRATCH/WES_TEST即可。

归档文件系统

data (data.hpc.sjtu.edu.cn)节点的目录/archive下挂载了挂挡存储,共 3P 容量,用来存储用户的不常用数据。

归档文件系统特性

归档文件系统主要使用机械硬盘搭建,可提供大容量、高可用的存储供用户使用。搭建过程中,使用 RAID 保障硬盘级别的数据安全,使用 HA(High Availability) 保障服务器级别的高可用。归档文件系统作为主文件系统的一个补充,主要提供给用户存储不常用的数据(冷数据),从而释放主文件系统的存储空间、缓解主文件系统的存储压力。

** 注意:和主文件系统以及全闪存文件系统不同,归档文件系统只能在data节点访问,无法在计算节点和登录节点访问,也就是说保存在该文件系统的数据不能在计算节点读取并参与计算,因此只推荐保存不常使用的数据。**

如何使用归档文件系统

  1. 登录data节点

# ssh $USER@data.hpc.sjtu.edu.cn
  1. 进入归档文件系统

用户可以在以下路径找到 /archive 提供的个人存储空间:/archive/home/acct-xxxx/yyyy

其中 acct-xxxx 代表计费帐号(课题组帐号),yyyy 代表个人帐号。

为了快捷访问,我们已经为用户设置好环境变量,cd$ARCHIVE即可进入。

  1. 将不常用文件移动到$ARCHIVE

# rsync -avh -P --append-verify $DATA $ARCHIVE

推荐使用 rsync 移动数据,详细参数含义可使用manrsync命令查看。