Skip to content

原始文件归档

NCBI中原始文件的最小单位为run,所以IData系统以run为单位对原始文件进行归档

针对硬盘

1、一致性校验(可选)

检查当前本地存储信息和线上记录是否一致,如果本地存储为刚更新过则无需此步骤(归档结束脚本会自动进行执行这一步)。这里建议每次归档前执行是检测之前的操作是否出现了问题(理论上不会有问题,一旦有问题就要思考问题出现在什么地方了,不仅仅是修复问题)

#具体参数见--help
python3 ./storage/check_base_storage.py -l local_001

Note

默认情况下仅会校验,添加-u之后才会矫正,建议先仅校验,在根据实际情况是否加-u。

2、待归档数据分类(可选)

一般情况在建议单块硬盘仅存储一个物种的一类数据,如果本地待归档数据成分比较复杂,可以使用 /Disk/classify_base对数据分类后再归档

{
  "src_path": "",
  "dst_path": "",
  "mode": "mv",
  "worker": "storage_mu01_main",
  "classify_type": "omics"
}

src_path:需要分类的目录 dst_path:分类后的文件目录 mode:目前仅支持mv模式 worker:执行归档操作的worker名称 classify_type:目前支持omics(会包含物种信息)和file_type两种模式

3、数据归档

目前仅提供了在线文档,直接调用在线接口 /Task/base_mv即可

{
  "run_list": [
    "*"
  ],
  "src_path": "",
  "dst_path": "/public/idata/storage/base",
  "mode": "mv",
  "worker": "storage_mu01_main",
  "ignore_layout": false
}

run_list:默认归档指定目录中的所有run("*"),也可以利用run id归档指定数据 src_path:需要归档的目录。要注意的是如果该目录可以设置为BASE_ROOT_PATH,会兼容其特定的目录结构移走数据 dst_path:归档的目标目录,通常为BASE_ROOT_PATH。如果为非BASE_ROOT_PATH,这里仅仅执行移动操作,不会归档 mode:目前仅支持mv模式,所以尽量不要跨硬盘归档数据(数据量大的时候会很慢) worker:执行归档操作的worker名称 ignore_layout:部分数据的layout和数据库提供的不一致,如果开启则关闭该校验

4、归档结果校验

和 1一样,这里除了校验,也会调用 /Disk/storage_info接口更新相关磁盘信息

#具体参数见--help
python ./storage/check_base_storage.py -l local_001

针对热存储 (storage_cu01-cu06)

1、热存储样本分类

因为热存储主要放的是others的组学数据,所以需要我们将特定物种组学的数据移出来,然后归档在硬盘上,释放一部分热存储的空间。

#具体参数见--help
python3 ./storage/summary_storage.py -d storage_cu05 -o ./output/

Note

-o 接的是分类run list信息存储地址。会按照/species/omics的结构储存run信息

2、提取特定物种组学样本

之后我们根据自己的需求,从storage/base中将我们想要整理的run移出来,到自己建的新目录中。

#具体参数见--help
python3 ./storage/base_mv.py -i ./output/Mus_musculus/ATAC-Seq_run.txt -s /data05/idata/storage/base -d /data05/idata/Mus_musculus/ATAC-Seq -w storage_mu01_main

-i:接的是之前分类的run list(根据自己的需求选择不同的物种和组学) -s:storage归档的目录。 -d:自己建立的目标目录。 worker:执行归档操作的worker名称

3、移动run到硬盘,执行数据归档

之后我们根据磁盘编号信息表,将run移到对应硬盘,执行归档操作。

本文阅读量  次
本站总访问量  次
Authors: Wind (66.67%), hliu (33.33%)