[发明专利]一种DNA读序数据FASTQ文件并行压缩和解压缩方法有效

专利信息
申请号: 201310551802.7 申请日: 2013-11-07
公开(公告)号: CN103559020A 公开(公告)日: 2014-02-05
发明(设计)人: 郑晶晶;王婷;张常有;詹科 申请(专利权)人: 中国科学院软件研究所;广州中国科学院软件应用技术研究所
主分类号: G06F9/38 分类号: G06F9/38;G06F17/30;H03M7/30
代理公司: 北京科迪生专利代理有限责任公司 11251 代理人: 成金玉;孟卜娟
地址: 100190 *** 国省代码: 北京;11
权利要求书: 查看更多 说明书: 查看更多
摘要:
搜索关键词: 一种 dna 序数 fastq 文件 并行 压缩 和解 方法
【说明书】:

技术领域

本发明涉及生物信息、数据压缩和高性能计算领域,特别涉及一种DNA读序数据FASTQ文件的并行压缩和并行解压缩方法。

背景技术

生物信息学的主要任务之一是采集和分析大量的基因数据。这些数据对于基因研究来说至关重要,有助于确定防止或导致疾病产生的基因组件,并研究出具有针对性的疗法。高通量的测序方法和设备产生海量的短的读序数据。存储、管理和传输DNA读序数据的常用方法是采用FASTQ文件格式,这种格式主要包含DNA读序数据以及每个DNA碱基所对应的注释信息,例如表示测序标记过程的不确定性的Quality Scores信息。读序标记和其它诸如设备名称的描述也包含在FASTQ文件中。相比其它DNA数据的存储格式(例如FASTA),FASTQ格式能存储更多的信息,但这同时也使得文件大小和存储空间急剧增长。目前针对碱基读序数据和其注释描述信息进行有效的无损压缩和解压缩的算法研究,是一个研究热点。

针对FASTQ文件数据的压缩,目前取得重要进展的是美国转译遗传研究所(TGen)所研究的G_SQZ算法(Tembe,W.et al.G-SQZ:compact encoding of genomic sequence and quality data.Bioinformatics2010;26,2192–2194.),以及Deorowicz Sebastian等人所研究的DSRC算法(Deorowicz S,Grabowski S.Compression of DNA sequence reads in FASTQ format.Bioinformatics2011;27:860-862.)。这两种算法均使用了索引系统允许从规律的间隔处(简称分块)进行访问,所需信息不需要从头开始解码。G_SQZ算法主要使用Huffman编码<碱基,Quality score>对,而DSRC算法对碱基数据行和Quality Score行单独利用Huffman编码并辅以其它精细的压缩处理(例如游程处理等)。这类方法的优点是保留数据相对顺序信息的同时能够随机解码部分数据进行访问,无损压缩效率高。这代表了一类FASTQ文件压缩方法,为方便叙述,以下简称为分块索引串行算法。

目前需要进行基因组序列分析的数据已达到TB数量级。大型测序中心正计划或已安装PB级规模的存储设备。对于这些海量数据,为减少存储空间和传输时间,便于对大量基因组序列数据实时分析,必须对其进行实时数据压缩和解压缩,这需要借助高性能计算平台的强大的计算能力。随着高性能计算平台的快速发展,充分利用各个计算节点上的多核CPU的强大的计算能力,来实时压缩与解压缩海量的大的FASTQ文件,能够解决串行压缩解压缩程序所受到的处理器处理能力、内存等资源的限制。

上述G-SQZ算法和DSRC算法均是串行算法,目前尚未见到与这类算法相关的基于多节点的多核CPU的并行算法的研究文章和专利

发明内容

鉴于目前尚未见到与上述G-SQZ和DSRC等这一类分块索引串行算法相关的并行算法的研究与专利,本发明的目的在于提供一种这一类FASTQ文件分块索引串行压缩解压缩算法对应的并行压缩解压缩方法,利用多计算节点和多核CPU,可以基于MPI+OpenMP实现,也可以基于MPI+Pthread实现;能够充分利用高性能计算平台的强大的计算能力,大幅度提升对海量基因组序列实时分析处理的速度,对基因数据的更广泛应用提供重要的技术基础。

本发明的技术方案如下所述。

一种DNA读序数据的FASTQ文件的并行压缩方法,包括以下步骤:

一、并行压缩进程任务分割

根据FASTQ文件大小、并行压缩进程数目、FASTQ文件中每个读序片段(包含碱基信息以及对应的其它注释信息,以下为叙述方便,标记为一条记录)数据的特点确定每个进程待处理数据的起始和结束位置。每个进程均运行进程任务分割模块,将待压缩的原始数据近似均匀地分配到各个进程上,以实现数据并行。这样每个进程在处理时相互之间没有通信时间的消耗,提升了数据并行的处理效率。每个进程得到单独的压缩文件,压缩数据的顺序与进程号一致。

二、并行压缩进程内多线程流水并行压缩

进程处理模块中包含一个原始数据读取线程、一个压缩数据写入线程和多个压缩工作线程,工作线程的具体数目可以根据硬件CPU的核数以及进程设置来设定。

每个进程所处理的数据被原始数据读取线程分成多个块,每个块包含特定的固定数目的记录数据(最末端块可能少于这个固定数目)。

下载完整专利技术内容需要扣除积分,VIP会员可以免费下载。

该专利技术资料仅供研究查看技术是否侵权等信息,商用须获得专利权人授权。该专利全部权利属于中国科学院软件研究所;广州中国科学院软件应用技术研究所,未经中国科学院软件研究所;广州中国科学院软件应用技术研究所许可,擅自商用是侵权行为。如果您想购买此专利、获得商业授权和技术合作,请联系【客服

本文链接:http://www.vipzhuanli.com/pat/books/201310551802.7/2.html,转载请声明来源钻瓜专利网。

×

专利文献下载

说明:

1、专利原文基于中国国家知识产权局专利说明书;

2、支持发明专利 、实用新型专利、外观设计专利(升级中);

3、专利数据每周两次同步更新,支持Adobe PDF格式;

4、内容包括专利技术的结构示意图流程工艺图技术构造图

5、已全新升级为极速版,下载速度显著提升!欢迎使用!

请您登陆后,进行下载,点击【登陆】 【注册】

关于我们 寻求报道 投稿须知 广告合作 版权声明 网站地图 友情链接 企业标识 联系我们

钻瓜专利网在线咨询

周一至周五 9:00-18:00

咨询在线客服咨询在线客服
tel code back_top