一种参考基因组上基因序列片段的快速比对定位方法技术

技术编号:12699675 阅读:104 留言:0更新日期:2016-01-13 19:00
本发明专利技术公开了一种参考基因组上基因序列片段的快速比对定位方法,步骤包括:从参考基因组上提取基因序列片段;针对每一个基因序列片段,以基因序列片段作为key部分及其目标信息作为Value部分建立键值对,将基因序列片段采用哈希函数映射确定数据库中的目标存储位置,并将键值对写入目标存储位置,完成参考基因组的建库;当需要对待匹配基因序列片段进行快速比对定位时,首先将所述待匹配基因序列片段采用哈希函数映射确定数据库中的目标存储位置,然后从目标存储位置读取匹配基因序列片段对应键值对的基因序列片段的目标信息。本发明专利技术具有时间复杂度低、比对定位速度快、定位效率高、应用范围广、能够适用于跨物种的混合快速分析的优点。

【技术实现步骤摘要】

本专利技术涉及基因测序数据的生物信息学分析技术,具体涉及一种参考基因组上基 因序列片段的快速比对定位方法。
技术介绍
随着基因测序技术的发展,测序价格呈指数下降,速度甚至超过摩尔定律。伴随而 来的大量测序数据为快速准确的计算分析提出了巨大挑战。分析测序数据的第一步是序列 比对,即把序列片段比对定位到参考基因组上,往往需要消耗大量的计算资源与时间。比对 定位序列片段正成为一个加速数据分析流程的瓶颈。 为了解决序列片段在参考基因组上的比对定位问题,人们已经发展了很多算法并 开发了应用广泛的具体实现,其中比较知名的有BWA,Bowtie,SOAP等软件。现有的比对算 法和对软件都是针对在参考基因组上寻找和定位序列片段的最佳比对位置而设计的。因为 在比对时考虑了位点突变的容错情况,往往序列片段上的突变越多,在参考基因组上的可 能比对上的位置越多,需要的计算量也越大。人类基因组上有大量组成唯一的序列片段。以 36个碱基(36bp)的片段为例,30亿个碱基组成的基因组上至少有2/3的区域上的36bp的 片段是唯一的。目前的比对算法和软件并不是针对这些唯一片段区域而设计的,它们解决 的是一个更普遍的序列比对和定位问题,因此其算法和实现方法针对某类具体问题都存在 优化空间。而对于那些不关注突变分析,只关注唯一比对片段的测序流程来说,比对方法的 设计有很大的优化空间,通过重新设计,可以节省比对时间,进一步提高效率。
技术实现思路
本专利技术要解决的技术问题:针对现有技术的上述问题,提供一种时间复杂度低、比 对定位速度快、定位效率高、应用范围广、能够适用于跨物种的混合快速分析的参考基因组 上基因序列片段的快速比对定位方法。 为了解决上述技术问题,本专利技术采用的技术方案为: ,步骤包括: 1)从参考基因组上提取基因序列片段; 2)针对参考基因组上的每一个基因序列片段,以基因序列片段作为key部分、基 因序列片段的目标信息作为Value部分建立键值对,将基因序列片段采用哈希函数映射 确定数据库中的目标存储位置,并将键值对写入目标存储位置,最终完成参考基因组的建 库; 3)当需要对待匹配基因序列片段进行快速比对定位时,首先将所述待匹配基因 序列片段采用哈希函数映射查找数据库中的目标存储位置,如果查找成功,则从目标存储 位置读取匹配基因序列片段对应键值对的基因序列片段的目标信息;否则返回查找失败信 息。 优选地,所述步骤1)的详细步骤包括: 1. 1)设定基因序列片段的长度L; 1. 2)计算参考基因组上唯一的基因序列片段的位置和目标信息; 1. 3)根据基因序列片段的位置分别提取基因序列片段及其目标信息。 优选地,所述步骤1. 2)中唯一的基因序列片段具体是指任意两个基因序列片段 之间的编辑距离大于等于设定的阈值η。 优选地,所述目标信息包括染色体、染色体位置、GC含量、物种分类中的至少一种。 优选地,所述步骤2)的详细步骤包括: 2. 1)从提取得到的所有基因序列片段中取出一个基因序列片段作为当前基因序 列片段; 2. 2)以当前基因序列片段作为key部分、当前基因序列片段的目标信息作为 Value部分建立键值对(Key,Value)以描述当前基因序列片段及其目标信息之间的映射关 系; 2. 3)将当前基因序列片段的键值对(Key,Value)中的Key部分和Value部分进行 编码,选用指定的哈希函数将当前基因序列片段映射到d个数据库中的数据库i中; 2. 4)将当前基因序列片段采用哈希函数映射确定其在数据库i中的目标存储位 置,并将编码后的键值对(Key,Value)写入数据库i的目标存储位置; 2. 5)判断提取得到的所有基因序列片段是否已经处理完毕,如果已经处理完毕, 则跳转执行步骤2. 1);否则,判定已经完成参考基因组的建库。 优选地,所述步骤2. 3)中将当前基因序列片段映射到d个数据库中的数据库i中 的详细步骤包括: 2. 3. 1)设定数据库个数d; 2. 3. 2)取当前基因序列片段Key部分长度为m的前缀子串,选用指定的哈希函数 并采用如式(1)所示函数式计算当前基因序列片段在d个数据库中对应的数据库编号i,从 而将当前基因序列片段映射到d个数据库中的数据库i中; i=f(Key)%d(1) 式⑴中,i为当前基因序列片段在d个数据库中对应的数据库编号,Key为当 前基因序列片段Key部分长度为m的前缀子串,d为预先设定的数据库个数,f为指定的哈 希函数。 优选地,所述步骤3)的详细步骤包括: 3. 1)当需要对待匹配基因序列片段进行快速比对定位时,首先计算待匹配基因序 列片段的反向互补序列,将待匹配基因序列片段及其反向互补序列分别进行编码,然后将 编码后长度为m的前缀子串选用指定的哈希函数并采用式(1)所示函数式分别计算待匹配 基因序列片段及其反向互补序列在d个数据库中对应的数据库编号i; 3. 2)针对待匹配基因序列片段及其反向互补序列,分别在计算得到的数据库编号 i对应目标数据库中并行查找待匹配基因序列片段及其反向互补序列,如果待匹配基因序 列片段及其反向互补序列两者中的任意一个在目标数据库中找到匹配记录,则将匹配键值 对中的Value部分的目标信息作为比对定位的结果返回;否则待匹配基因序列片段及其反 向互补序列两者在目标数据库中均未找到匹配记录,则返回查找失败信息。 优选地,所述步骤3. 1)中计算待匹配基因序列片段的反向互补序列具体是指首 先将待匹配基因序列片段反转,然后分别将反转后的基因序列片段中碱基A和碱基T互换、 碱基C和碱基G互换,得到待匹配基因序列片段的反向互补序列。 优选地,所述步骤2. 3)将当前基因序列片段的键值对(Key,Value)中的Key部分 和Value部分进行编码具体是指:针对Key部分依次以00替换碱基A、以01替换碱基C、以 10替换碱基G、以11替换碱基T进行编码,针对Value部分采用可变长编码;所述步骤3. 1) 将所述待匹配基因序列片段进行编码具体是指:依次以〇〇替换碱基A、以01替换碱基C、以 10替换碱基G、以11替换碱基T进行编码。 优选地,所述指定的哈希函数为MurmurHash函数。 本专利技术参考基因组上基因序列片段的快速比对定位方法具有下述优点: 1、本专利技术针对参考基因组上的每一个基因序列片段,以基因序列片段作为key部 分、当前第1页1 2 3 4 本文档来自技高网...

【技术保护点】
一种参考基因组上基因序列片段的快速比对定位方法,其特征在于步骤包括:1)从参考基因组上提取基因序列片段;2)针对参考基因组上的每一个基因序列片段,以基因序列片段作为key部分、基因序列片段的目标信息作为Value部分建立键值对,将基因序列片段采用哈希函数映射确定数据库中的目标存储位置,并将键值对写入目标存储位置,最终完成参考基因组的建库;3)当需要对待匹配基因序列片段进行快速比对定位时,首先将所述待匹配基因序列片段采用哈希函数映射查找数据库中的目标存储位置,如果查找成功,则从目标存储位置读取匹配基因序列片段对应键值对的基因序列片段的目标信息;否则返回查找失败信息。

【技术特征摘要】

【专利技术属性】
技术研发人员:宋卓李根
申请(专利权)人:人和未来生物科技长沙有限公司
类型:发明
国别省市:湖南;43

网友询问留言 已有0条评论
  • 还没有人留言评论。发表了对其他浏览者有用的留言会获得科技券。

1