CN110797085B - 一种基因数据的查询方法、系统、设备及存储介质 - Google Patents
一种基因数据的查询方法、系统、设备及存储介质 Download PDFInfo
- Publication number
- CN110797085B CN110797085B CN201911025189.9A CN201911025189A CN110797085B CN 110797085 B CN110797085 B CN 110797085B CN 201911025189 A CN201911025189 A CN 201911025189A CN 110797085 B CN110797085 B CN 110797085B
- Authority
- CN
- China
- Prior art keywords
- sequence
- extension
- segment
- matching position
- matching
- Prior art date
- Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
- Active
Links
- 238000000034 method Methods 0.000 title claims abstract description 46
- 108090000623 proteins and genes Proteins 0.000 title claims abstract description 42
- 238000001914 filtration Methods 0.000 claims abstract description 11
- 239000012634 fragment Substances 0.000 claims description 60
- 238000004364 calculation method Methods 0.000 claims description 9
- 238000004590 computer program Methods 0.000 claims description 9
- 230000002068 genetic effect Effects 0.000 claims description 5
- 230000009286 beneficial effect Effects 0.000 abstract description 5
- 230000000875 corresponding effect Effects 0.000 abstract 2
- 241000272201 Columbiformes Species 0.000 description 5
- 230000006835 compression Effects 0.000 description 2
- 238000007906 compression Methods 0.000 description 2
- 230000006837 decompression Effects 0.000 description 2
- 238000010586 diagram Methods 0.000 description 2
- 230000002349 favourable effect Effects 0.000 description 2
- 238000012986 modification Methods 0.000 description 2
- 230000004048 modification Effects 0.000 description 2
- 238000005457 optimization Methods 0.000 description 2
- 238000012163 sequencing technique Methods 0.000 description 2
- 230000007480 spreading Effects 0.000 description 2
- 230000002159 abnormal effect Effects 0.000 description 1
- 238000004422 calculation algorithm Methods 0.000 description 1
- 230000008859 change Effects 0.000 description 1
- 239000012297 crystallization seed Substances 0.000 description 1
- 238000013461 design Methods 0.000 description 1
- 238000011161 development Methods 0.000 description 1
- 238000005516 engineering process Methods 0.000 description 1
- 230000008569 process Effects 0.000 description 1
- 238000012360 testing method Methods 0.000 description 1
Images
Classifications
-
- G—PHYSICS
- G16—INFORMATION AND COMMUNICATION TECHNOLOGY [ICT] SPECIALLY ADAPTED FOR SPECIFIC APPLICATION FIELDS
- G16B—BIOINFORMATICS, i.e. INFORMATION AND COMMUNICATION TECHNOLOGY [ICT] SPECIALLY ADAPTED FOR GENETIC OR PROTEIN-RELATED DATA PROCESSING IN COMPUTATIONAL MOLECULAR BIOLOGY
- G16B30/00—ICT specially adapted for sequence analysis involving nucleotides or amino acids
-
- G—PHYSICS
- G16—INFORMATION AND COMMUNICATION TECHNOLOGY [ICT] SPECIALLY ADAPTED FOR SPECIFIC APPLICATION FIELDS
- G16B—BIOINFORMATICS, i.e. INFORMATION AND COMMUNICATION TECHNOLOGY [ICT] SPECIALLY ADAPTED FOR GENETIC OR PROTEIN-RELATED DATA PROCESSING IN COMPUTATIONAL MOLECULAR BIOLOGY
- G16B50/00—ICT programming tools or database systems specially adapted for bioinformatics
Landscapes
- Physics & Mathematics (AREA)
- Life Sciences & Earth Sciences (AREA)
- Health & Medical Sciences (AREA)
- Engineering & Computer Science (AREA)
- Medical Informatics (AREA)
- General Health & Medical Sciences (AREA)
- Theoretical Computer Science (AREA)
- Bioinformatics & Cheminformatics (AREA)
- Bioinformatics & Computational Biology (AREA)
- Biotechnology (AREA)
- Evolutionary Biology (AREA)
- Biophysics (AREA)
- Spectroscopy & Molecular Physics (AREA)
- Bioethics (AREA)
- Databases & Information Systems (AREA)
- Chemical & Material Sciences (AREA)
- Analytical Chemistry (AREA)
- Proteomics, Peptides & Aminoacids (AREA)
- Information Retrieval, Db Structures And Fs Structures Therefor (AREA)
Abstract
本申请公开了一种基因数据的查询方法,包括:将待测序列均分为x+t条seed,并将基准序列均分为x+t条子序列;确定出每个seed的每个匹配位置;对确定出的每个匹配位置进行左扩展及右扩展,并在进行任意方向的扩展时,当编辑距离达到x时或者扩展至待测序列的末尾时则结束该方向的扩展;根据每个匹配位置的扩展长度及编辑距离确定出该匹配位置对应的扩展质量评分;将扩展质量评分低于预设质量评分阈值的匹配位置进行过滤,并基于过滤后的各个匹配位置确定出待测序列在基准序列中的定位。应用本申请的方案,有利于提高基因数据的查询效率且保证了精度。本申请还提供了一种基因数据的查询系统、设备及存储介质,具有相应效果。
Description
技术领域
本发明涉及基因数据比对技术领域,特别是涉及一种基因数据的查询方法、系统、设备及存储介质。
背景技术
随着第二代、第三代基因测序技术的快速发展,基因序列数据量快速增长,如何高效地存储、访问、查询这些海量数据,是目前业界面临的一大挑战。
基因测序应用的关键要求是需要迅速并准确的将DNA子序列映射到参考基因组上,并且,基因数据通常都是压缩后的数据,可以方便保存和传输,但是,当需要精确查询时,传统的查询方式便需要进行在线解压缩,使得这样的方式运行性能非常低,查询耗时非常长。
目前,还有的一类方案是基于整体的压缩方法对数据进行索引,这样的方法需要对所有基因序列进行连接之后,进行整体的压缩索引,从而支持快速查询。但是,这样的方案构建基因序列索引的开销非常大。另一类方案是基于基准序列来构建签名索引,常见的是通过q-gram倒排索引法来索引基准序列,将query序列分成长度为q的子序列作为签名索引,这种方法构建索引的开销非常小。但是,要求query长度至少大于q,而且q的取值会影响查询精度和效率。
综上所述,如何提高基因数据的查询效率,且实现高精度查询,是目前本领域技术人员急需解决的技术问题。
发明内容
本发明的目的是提供一种基因数据的查询方法、系统、设备及存储介质,以提高基因数据的查询效率,且实现高精度查询。
为解决上述技术问题,本发明提供如下技术方案:
一种基因数据的查询方法,包括:
将待测序列均分为x+t条seed,并将基准序列均分为x+t条子序列;x为预设的编辑距离阈值,t为长度调整参数;
将每一个seed均与所述基准序列进行匹配,确定出每一个匹配位置;
对确定出的每一个匹配位置进行左扩展以及右扩展,并在进行任意方向的扩展时,当编辑距离达到x时或者扩展至所述待测序列的末尾时则结束该方向的扩展;
根据每一个匹配位置的扩展长度以及编辑距离确定出该匹配位置对应的扩展质量评分;
将扩展质量评分低于预设质量评分阈值的匹配位置进行过滤,并基于过滤后的各个匹配位置确定出所述待测序列在所述基准序列中的定位。
优选的,所述将每一个seed均与所述基准序列进行匹配,确定出每一个匹配位置,包括:
将每一个seed均与所述基准序列进行匹配,通过哈希查表的方式确定出每一个匹配位置。
优选的,还包括:
当确定出的匹配位置的数量大于预设的数量阈值y时,则降低t的取值,并返回执行所述将待测序列均分为x+t条seed,并将基准序列均分为x+t条子序列的操作。
优选的,所述根据每一个匹配位置的扩展长度以及编辑距离确定出该匹配位置对应的扩展质量评分,包括:
将扩展长度作为第一优先级,编辑距离作为第二优先级,确定出每一个匹配位置对应的扩展质量评分。
优选的,还包括:预设包括n个序列片段的片段库,每个序列片段包括第一片段信息以及第二片段信息;
相应的,所述对确定出的每一个匹配位置进行左扩展以及右扩展,包括:
对确定出的每一个匹配位置进行左扩展以及右扩展,并在进行任意方向的扩展时,当扩展时出现的序列片段符合所述片段库中的任意一个序列片段时,计算并保存该序列片段所对应的编辑距离,以使得后续扩展时再次出现该序列片段时,通过保存下的编辑距离代替编辑距离的计算;
其中,扩展时出现的序列片段符合所述片段库中的任意一个序列片段,表示:扩展时seed的片段信息符合所述片段库中的任意一个序列片段的第一片段信息,且对应的所述基准序列的子序列的片段信息符合所述片段库中的该序列片段的第二片段信息。
一种基因数据的查询系统,包括:
序列划分模块,用于将待测序列均分为x+t条seed,并将基准序列均分为x+t条子序列;x为预设的编辑距离阈值,t为长度调整参数;
精准匹配模块,用于将每一个seed均与所述基准序列进行匹配,确定出每一个匹配位置;
扩展模块,用于对确定出的每一个匹配位置进行左扩展以及右扩展,并在进行任意方向的扩展时,当编辑距离达到x时或者扩展至所述待测序列的末尾时则结束该方向的扩展;
扩展质量评分模块,用于根据每一个匹配位置的扩展长度以及编辑距离确定出该匹配位置对应的扩展质量评分;
过滤定位模块,用于将扩展质量评分低于预设质量评分阈值的匹配位置进行过滤,并基于过滤后的各个匹配位置确定出所述待测序列在所述基准序列中的定位。
优选的,所述精准匹配模块,具体用于:
将每一个seed均与所述基准序列进行匹配,通过哈希查表的方式确定出每一个匹配位置。
优选的,还包括:片段库预设模块,用于预设包括n个序列片段的片段库,每个序列片段包括第一片段信息以及第二片段信息;
相应的,所述扩展模块,具体用于:
对确定出的每一个匹配位置进行左扩展以及右扩展,并在进行任意方向的扩展时,当编辑距离达到x时或者扩展至所述待测序列的末尾时则结束该方向的扩展;并在进行任意方向的扩展时,当扩展时出现的序列片段符合所述片段库中的任意一个序列片段时,计算并保存该序列片段所对应的编辑距离,以使得后续扩展时再次出现该序列片段时,通过保存下的编辑距离代替编辑距离的计算;
其中,扩展时出现的序列片段符合所述片段库中的任意一个序列片段,表示:扩展时seed的片段信息符合所述片段库中的任意一个序列片段的第一片段信息,且对应的所述基准序列的子序列的片段信息符合所述片段库中的该序列片段的第二片段信息。
一种基因数据的查询设备,包括:
存储器,用于存储计算机程序;
处理器,用于执行所述计算机程序以实现上述任一项所述的基因数据的查询方法的步骤。
一种计算机可读存储介质,所述计算机可读存储介质上存储有计算机程序,所述计算机程序被处理器执行时实现上述任一项所述的基因数据的查询方法的步骤。
应用本发明实施例所提供的技术方案,无需对基因数据进行解压缩来进行精确查询,也就不会出现由于解压缩而导致的查询耗时较长的情况。本申请的方案中,在q-gram倒排索引法的基础上进行了优化,基于鸽笼原理实现精准查询。具体的,根据鸽笼原理,当待测序列与基准序列之间的编辑距离不超过x时,即query序列与reference序列的编辑距离不超过x时,将reference和query均分割成x+1个子序列,那么至少有1个query的子序列可以跟reference子序列完全匹配。
因此,本申请将待测序列均分为x+t条seed,并将基准序列均分为x+t条子序列,将每一个seed均与基准序列进行匹配,至少可以确定出一个匹配位置,当然,t大于等于1,并且t的取值越大,可确定的匹配位置越多。并且,本申请中确定出的每一个匹配位置均是精确匹配,保障了本申请的方案的查询精度,并且该操作耗时也较短。相较于传统方案中的整体压缩索引的方式,本申请的方案是对每一个seed进行匹配,即基于待测序列的子序列进行索引,使得本申请的方案构建索引的开销非常小,而相对于传统的q-gram倒排索引法,本申请对query的长度也不作要求,即支持不同长度的待测序列。在确定出至少一个匹配位置之后,根据每一个匹配位置的扩展长度以及编辑距离确定出该匹配位置对应的扩展质量评分,进而可以将扩展质量评分低于预设质量评分阈值的匹配位置进行过滤,并基于过滤后的各个匹配位置确定出待测序列在基准序列中的定位。由于对匹配位置进行了过滤,并且是过滤了低于预设质量评分阈值的匹配位置,使得本申请的方案在保证了查询精度的前提下,有利于节约后续确定出待测序列在基准序列中的定位的耗时。综上所述,本申请的方案有利于提高基因数据的查询效率,适用于不同长度的待测序列,均可以实现高精度查询。
附图说明
为了更清楚地说明本发明实施例或现有技术中的技术方案,下面将对实施例或现有技术描述中所需要使用的附图作简单地介绍,显而易见地,下面描述中的附图仅仅是本发明的一些实施例,对于本领域普通技术人员来讲,在不付出创造性劳动的前提下,还可以根据这些附图获得其他的附图。
图1为本发明中一种基因数据的查询方法的实施流程图;
图2为本发明中一种基因数据的查询系统的结构示意图。
具体实施方式
本发明的核心是提供一种基因数据的查询方法的实施流程图,有利于提高基因数据的查询效率,适用于不同长度的待测序列,均可以实现高精度查询。
为了使本技术领域的人员更好地理解本发明方案,下面结合附图和具体实施方式对本发明作进一步的详细说明。显然,所描述的实施例仅仅是本发明一部分实施例,而不是全部的实施例。基于本发明中的实施例,本领域普通技术人员在没有做出创造性劳动前提下所获得的所有其他实施例,都属于本发明保护的范围。
请参考图1,图1为本发明中一种基因数据的查询方法的实施流程图,该基因数据的查询方法可以包括以下步骤:
步骤S101:将待测序列均分为x+t条seed,并将基准序列均分为x+t条子序列;x为预设的编辑距离阈值,t为长度调整参数。
本申请中,将待测序列称为query,基准序列称为reference。将query均分为x+t条非重叠的子序列,每条子序列为一个seed,相应的,也将reference均分为x+t条非重叠的子序列。
x和t均为正整数,通常,x可以设置为20左右的数值,当然,可以实际根据需要进行设定和调整。
步骤S102:将每一个seed均与基准序列进行匹配,确定出每一个匹配位置。
需要说明的是,将每一个seed均与基准序列进行匹配,是进行精准匹配,即对于任意一个seed而言,需要找到在reference中与该seed完全相同的各个片段,每一个片段即为一个匹配位置。确定出的每一个匹配位置均为完全匹配位置。可以理解的是,一个seed可能同时匹配到多个reference的位置。
由于确定出的每一个匹配位置均是精确匹配,并且也找出了每一个seed的每一个匹配位置,使得最合适的定位位置会处于这些确定出的匹配位置中,不会受到x和t的取值的影响,因此保障了本申请的查询精度。即无论x和t如何取值,通过精确查找每一个seed的每一个匹配位置,保障了本申请方案的查询精度。
当然,x和t的取值越大,划分出的seed以及reference的子序列越多,确定匹配位置的耗时以及后续步骤中进行每一个seed的扩展耗时都会较长,因此,在本发明的一种具体实施方式中,在步骤S102之后,还可以包括:
当确定出的匹配位置的数量大于预设的数量阈值y时,则降低t的取值,并返回执行将待测序列均分为x+t条seed,并将基准序列均分为x+t条子序列的操作,即返回步骤S101,以重新根据新的t的取值进行query和reference的子序列的划分。
该种实施方式中,通过降低t的取值,使得seed的变长,使得划分出的seed的数量更加合适,可以避免seed数量过多而导致的方案耗时较长的情况。y的取值可以根据实际情况进行设定和调整。
此外还需要说明的是,根据鸽笼原理,当待测序列与基准序列之间的编辑距离不超过x时,即query序列与reference序列的编辑距离不超过x时,将reference和query均分割成x+1个子序列,那么至少有1个query的子序列可以跟reference子序列完全匹配。因此,x的取值不能设置的太小,如果x的取值过小,导致seed较长,可能会出现执行步骤S102时找不到任意一个匹配位置的情况。当然,在实际应用中,设置为20左右的x通常不会出现该异常情况,如果出现了,则适当地提高x的取值使得seed长度变短即可,即x的取值,应当使得t为任意正整数时,都能够找到至少一个seed的一个完全匹配的匹配位置。
此外,在执行步骤S102时,通常可以采用hash查表的方式进行完全匹配,且这样的方式耗时也较短。即步骤S102可以具体为:将每一个seed均与基准序列进行匹配,通过哈希查表的方式确定出每一个匹配位置。
步骤S103:对确定出的每一个匹配位置进行左扩展以及右扩展,并在进行任意方向的扩展时,当编辑距离达到x时或者扩展至待测序列的末尾时则结束该方向的扩展。
在对每一个匹配位置进行左扩展以及右扩展时,可以先进行左扩展,也可以先进行右扩展,均不影响本发明的实施。
例如先进行右扩展,在进行右扩展时,需要进行编辑距离的计算。编辑距离指的是:两个字串之间,由一个转成另一个所需的最少的编辑操作次数。可以理解的是,当它们的编辑距离越大,说明它们越是不同的。而所允许的编辑操作包括三种,一种是将一个字符替换成另一个字符,一种是插入一个字符,还有一种是删除一个字符。例如,对于某一个seed,该seed往右的数据为12356,而该seed对应的reference子序列中的匹配位置往右的数据为1256,则只需要进行一次编辑操作,即插入一个字符3即可。当然,该种例子中便于描述用数字进行编辑操作的说明,在实际应用中,seed以及reference子序列均为二进制数据。
随着不断地进行右扩展,编辑距离自然会逐渐增加,当编辑距离达到预设的编辑距离阈值x时便结束右扩展,当然,如果达到了待测序列的末尾,即达到了query最右端,也需要结束右扩展。进行完右扩展之后便可以进行左扩展,与右扩展同理,此处便不再重复说明。
在本发明的一种具体实施方式中,还可以包括:预设包括n个序列片段的片段库,每个序列片段包括第一片段信息以及第二片段信息;
相应的,步骤S103中描述的对确定出的每一个匹配位置进行左扩展以及右扩展,可以具体包括:
对确定出的每一个匹配位置进行左扩展以及右扩展,并在进行任意方向的扩展时,当扩展时出现的序列片段符合片段库中的任意一个序列片段时,计算并保存该序列片段所对应的编辑距离,以使得后续扩展时再次出现该序列片段时,通过保存下的编辑距离代替编辑距离的计算;
其中,扩展时出现的序列片段符合片段库中的任意一个序列片段,表示:扩展时seed的片段信息符合片段库中的任意一个序列片段的第一片段信息,且对应的基准序列的子序列的片段信息符合片段库中的该序列片段的第二片段信息。
该种实施方式中,考虑到seed可能完全匹配到多个reference子序列,并且针对任意一个匹配位置进行扩展时,也可能会遇到多个相同的序列片段,对于这些相同的序列片段,在扩展时如果如常规方式进行编辑距离的计算,会造成大量的重复计算。因此,该种实施方式中,预设了包括n个序列片段的片段库,每个序列片段包括第一片段信息以及第二片段信息。
例如一个序列片段为0010-0000,0010即为第一片段信息,0000为第二片段信息。在进行任意方向的扩展时,例如进行右扩展,如果seed的某一个匹配位置进行右扩展时,出现了0010,且reference子序列此时符合0000,则可以确定,扩展时出现了一个序列片段符合片段库中的一个序列片段。此处描述的扩展时出现的序列片段,是由query和reference共同构成的序列片段。该例子中,可以计算出该序列片段对应的编辑距离为1。在后续进行扩展时,如果query又出现了0010,且此时reference的对应位置为0000,则无需再进行编辑距离的计算,而是可以直接确定出该序列片段的编辑距离为1。
在实际应用中,保存下的编辑距离可以相应地命名为一个前缀,后续只需要根据前缀进行合并同类项即可,当然,其他实施方式中可以有其他保存方式,并不影响本发明的实施。
可以看出,该种实施方式中对扩展时的编辑距离的计算进行了优化,有利于进一步地降低本申请方案的耗时。
步骤S104:根据每一个匹配位置的扩展长度以及编辑距离确定出该匹配位置对应的扩展质量评分。
此处描述的扩展长度指的是进行左扩展以及右扩展之后的总的长度,最大长度便等于query的长度,编辑距离指的是左扩展的编辑距离与右扩展的编辑距离的和,最大为2x。可以理解的是,扩展长度越长,匹配质量越高,编辑距离越小,匹配质量越高。
在一种具体实施方式中,可以将扩展长度作为第一优先级,编辑距离作为第二优先级,确定出每一个匹配位置对应的扩展质量评分。例如一共有5个匹配位置,从扩展质量最高到扩展质量最低的,将会依次打分为100分,75分,50分,25分,0分。并且假设1号匹配位置和2号匹配位置的扩展长度均等于query长度,但1号的编辑距离更低,而3号,4号以及5号匹配位置均相同,且低于query,编辑距离是3号>4号>5号,则可以为1至5号匹配位置依次打分为:100分,75分,0分,25分,50分。
当然,在实际应用中,扩展质量评分的分值也可以有其他取值,可以根据实际情况进行设定和调整,并不影响本发明的实施。
步骤S105:将扩展质量评分低于预设质量评分阈值的匹配位置进行过滤,并基于过滤后的各个匹配位置确定出待测序列在基准序列中的定位。
预设质量评分阈值也可以根据需要进行设定和调整,并且需要说明的是,由于是将扩展质量评分低于预设质量评分阈值的匹配位置进行过滤,使得待测序列在基准序列中的定位位置还会保留在未被过滤掉的匹配位置中,即本申请进行的过滤操作并不会降低精度。并且由于进行了过滤,使得进行待测序列在基准序列中的定位时,耗时降低。
在基于过滤后的各个匹配位置确定出待测序列在基准序列中的定位时,通常可以采用SW方法,对过滤后的各个匹配位置进行同一性打分,最终确定出一个匹配位置,即待测序列在基准序列中的定位。
应用本发明实施例所提供的技术方案,无需对基因数据进行解压缩来进行精确查询,也就不会出现由于解压缩而导致的查询耗时较长的情况。本申请的方案中,在q-gram倒排索引法的基础上进行了优化,基于鸽笼原理实现精准查询。具体的,根据鸽笼原理,当待测序列与基准序列之间的编辑距离不超过x时,即query序列与reference序列的编辑距离不超过x时,将reference和query均分割成x+1个子序列,那么至少有1个query的子序列可以跟reference子序列完全匹配。
因此,本申请将待测序列均分为x+t条seed,并将基准序列均分为x+t条子序列,将每一个seed均与基准序列进行匹配,至少可以确定出一个匹配位置,当然,t大于等于1,并且t的取值越大,可确定的匹配位置越多。并且,本申请中确定出的每一个匹配位置均是精确匹配,保障了本申请的方案的查询精度,并且该操作耗时也较短。相较于传统方案中的整体压缩索引的方式,本申请的方案是对每一个seed进行匹配,即基于待测序列的子序列进行索引,使得本申请的方案构建索引的开销非常小,而相对于传统的q-gram倒排索引法,本申请对query的长度也不作要求,即支持不同长度的待测序列。在确定出至少一个匹配位置之后,根据每一个匹配位置的扩展长度以及编辑距离确定出该匹配位置对应的扩展质量评分,进而可以将扩展质量评分低于预设质量评分阈值的匹配位置进行过滤,并基于过滤后的各个匹配位置确定出待测序列在基准序列中的定位。由于对匹配位置进行了过滤,并且是过滤了低于预设质量评分阈值的匹配位置,使得本申请的方案在保证了查询精度的前提下,有利于节约后续确定出待测序列在基准序列中的定位的耗时。综上所述,本申请的方案有利于提高基因数据的查询效率,适用于不同长度的待测序列,均可以实现高精度查询。
相应于上面的方法实施例,本发明实施例还提供了一种基因数据的查询系统,可与上文相互对应参照。
参见图2所示,为本发明中一种基因数据的查询系统的结构示意图,包括:
序列划分模块201,用于将待测序列均分为x+t条seed,并将基准序列均分为x+t条子序列;x为预设的编辑距离阈值,t为长度调整参数;
精准匹配模块202,用于将每一个seed均与基准序列进行匹配,确定出每一个匹配位置;
扩展模块203,用于对确定出的每一个匹配位置进行左扩展以及右扩展,并在进行任意方向的扩展时,当编辑距离达到x时或者扩展至待测序列的末尾时则结束该方向的扩展;
扩展质量评分模块204,用于根据每一个匹配位置的扩展长度以及编辑距离确定出该匹配位置对应的扩展质量评分;
过滤定位模块205,用于将扩展质量评分低于预设质量评分阈值的匹配位置进行过滤,并基于过滤后的各个匹配位置确定出待测序列在基准序列中的定位。
在本发明的一种具体实施方式中,精准匹配模块202,具体用于:
将每一个seed均与基准序列进行匹配,通过哈希查表的方式确定出每一个匹配位置。
在本发明的一种具体实施方式中,还包括:
匹配位置数量调整模块,用于当确定出的匹配位置的数量大于预设的数量阈值y时,则降低t的取值,并返回触发序列划分模块201。
在本发明的一种具体实施方式中,扩展质量评分模块204,具体用于:
将扩展长度作为第一优先级,编辑距离作为第二优先级,确定出每一个匹配位置对应的扩展质量评分。
在本发明的一种具体实施方式中,还包括:片段库预设模块,用于预设包括n个序列片段的片段库,每个序列片段包括第一片段信息以及第二片段信息;
相应的,扩展模块203,具体用于:
对确定出的每一个匹配位置进行左扩展以及右扩展,并在进行任意方向的扩展时,当编辑距离达到x时或者扩展至待测序列的末尾时则结束该方向的扩展;并在进行任意方向的扩展时,当扩展时出现的序列片段符合片段库中的任意一个序列片段时,计算并保存该序列片段所对应的编辑距离,以使得后续扩展时再次出现该序列片段时,通过保存下的编辑距离代替编辑距离的计算;
其中,扩展时出现的序列片段符合片段库中的任意一个序列片段,表示:扩展时seed的片段信息符合片段库中的任意一个序列片段的第一片段信息,且对应的基准序列的子序列的片段信息符合片段库中的该序列片段的第二片段信息。
相应于上面的方法和系统实施例,本发明实施例还提供了一种基因数据的查询设备和一种计算机可读存储介质,可与上文相互对应参照。
该计算机可读存储介质上存储有计算机程序,计算机程序被处理器执行时实现上述任一实施例中的基因数据的查询方法的步骤。这里所说的计算机可读存储介质包括随机存储器(RAM)、内存、只读存储器(ROM)、电可编程ROM、电可擦除可编程ROM、寄存器、硬盘、可移动磁盘、CD-ROM、或技术领域内所公知的任意其它形式的存储介质。
该基因数据的查询设备可以包括:
存储器,用于存储计算机程序;
处理器,用于执行计算机程序以实现上述任一实施例中的基因数据的查询方法的步骤。
专业人员还可以进一步意识到,结合本文中所公开的实施例描述的各示例的单元及算法步骤,能够以电子硬件、计算机软件或者二者的结合来实现,为了清楚地说明硬件和软件的可互换性,在上述说明中已经按照功能一般性地描述了各示例的组成及步骤。这些功能究竟以硬件还是软件方式来执行,取决于技术方案的特定应用和设计约束条件。专业技术人员可以对每个特定的应用来使用不同方法来实现所描述的功能,但是这种实现不应认为超出本发明的范围。
本文中应用了具体个例对本发明的原理及实施方式进行了阐述,以上实施例的说明只是用于帮助理解本发明的技术方案及其核心思想。应当指出,对于本技术领域的普通技术人员来说,在不脱离本发明原理的前提下,还可以对本发明进行若干改进和修饰,这些改进和修饰也落入本发明权利要求的保护范围内。
Claims (9)
1.一种基因数据的查询方法,其特征在于,包括:
将待测序列均分为x+t条seed,并将基准序列均分为x+t条子序列;x为预设的编辑距离阈值,t为长度调整参数;
将每一个seed均与所述基准序列进行匹配,确定出每一个匹配位置;
对确定出的每一个匹配位置进行左扩展以及右扩展,并在进行任意方向的扩展时,当编辑距离达到x时或者扩展至所述待测序列的末尾时则结束该方向的扩展;
根据每一个匹配位置的扩展长度以及编辑距离确定出该匹配位置对应的扩展质量评分;
将扩展质量评分低于预设质量评分阈值的匹配位置进行过滤,并基于过滤后的各个匹配位置确定出所述待测序列在所述基准序列中的定位;
所述根据每一个匹配位置的扩展长度以及编辑距离确定出该匹配位置对应的扩展质量评分,包括:
将扩展长度作为第一优先级,编辑距离作为第二优先级,确定出每一个匹配位置对应的扩展质量评分;
其中,所述扩展长度指的是进行左扩展以及右扩展之后的总的长度,所述编辑距离指的是左扩展的编辑距离与右扩展的编辑距离的和。
2.根据权利要求1所述的基因数据的查询方法,其特征在于,所述将每一个seed均与所述基准序列进行匹配,确定出每一个匹配位置,包括:
将每一个seed均与所述基准序列进行匹配,通过哈希查表的方式确定出每一个匹配位置。
3.根据权利要求1所述的基因数据的查询方法,其特征在于,还包括:
当确定出的匹配位置的数量大于预设的数量阈值y时,则降低t的取值,并返回执行所述将待测序列均分为x+t条seed,并将基准序列均分为x+t条子序列的操作。
4.根据权利要求1至3任一项所述的基因数据的查询方法,其特征在于,还包括:预设包括n个序列片段的片段库,每个序列片段包括第一片段信息以及第二片段信息;
相应的,所述对确定出的每一个匹配位置进行左扩展以及右扩展,包括:
对确定出的每一个匹配位置进行左扩展以及右扩展,并在进行任意方向的扩展时,当扩展时出现的序列片段符合所述片段库中的任意一个序列片段时,计算并保存该序列片段所对应的编辑距离,以使得后续扩展时再次出现该序列片段时,通过保存下的编辑距离代替编辑距离的计算;
其中,扩展时出现的序列片段符合所述片段库中的任意一个序列片段,表示:扩展时seed的片段信息符合所述片段库中的任意一个序列片段的第一片段信息,且对应的所述基准序列的子序列的片段信息符合所述片段库中的该序列片段的第二片段信息。
5.一种基因数据的查询系统,其特征在于,包括:
序列划分模块,用于将待测序列均分为x+t条seed,并将基准序列均分为x+t条子序列;x为预设的编辑距离阈值,t为长度调整参数;
精准匹配模块,用于将每一个seed均与所述基准序列进行匹配,确定出每一个匹配位置;
扩展模块,用于对确定出的每一个匹配位置进行左扩展以及右扩展,并在进行任意方向的扩展时,当编辑距离达到x时或者扩展至所述待测序列的末尾时则结束该方向的扩展;
扩展质量评分模块,用于根据每一个匹配位置的扩展长度以及编辑距离确定出该匹配位置对应的扩展质量评分;
过滤定位模块,用于将扩展质量评分低于预设质量评分阈值的匹配位置进行过滤,并基于过滤后的各个匹配位置确定出所述待测序列在所述基准序列中的定位;
所述扩展质量评分模块,具体用于:
将扩展长度作为第一优先级,编辑距离作为第二优先级,确定出每一个匹配位置对应的扩展质量评分;
其中,所述扩展长度指的是进行左扩展以及右扩展之后的总的长度,所述编辑距离指的是左扩展的编辑距离与右扩展的编辑距离的和。
6.根据权利要求5所述的基因数据的查询系统,其特征在于,所述精准匹配模块,具体用于:
将每一个seed均与所述基准序列进行匹配,通过哈希查表的方式确定出每一个匹配位置。
7.根据权利要求5或6所述的基因数据的查询系统,其特征在于,还包括:片段库预设模块,用于预设包括n个序列片段的片段库,每个序列片段包括第一片段信息以及第二片段信息;
相应的,所述扩展模块,具体用于:
对确定出的每一个匹配位置进行左扩展以及右扩展,并在进行任意方向的扩展时,当编辑距离达到x时或者扩展至所述待测序列的末尾时则结束该方向的扩展;并在进行任意方向的扩展时,当扩展时出现的序列片段符合所述片段库中的任意一个序列片段时,计算并保存该序列片段所对应的编辑距离,以使得后续扩展时再次出现该序列片段时,通过保存下的编辑距离代替编辑距离的计算;
其中,扩展时出现的序列片段符合所述片段库中的任意一个序列片段,表示:扩展时seed的片段信息符合所述片段库中的任意一个序列片段的第一片段信息,且对应的所述基准序列的子序列的片段信息符合所述片段库中的该序列片段的第二片段信息。
8.一种基因数据的查询设备,其特征在于,包括:
存储器,用于存储计算机程序;
处理器,用于执行所述计算机程序以实现如权利要求1至4任一项所述的基因数据的查询方法的步骤。
9.一种计算机可读存储介质,其特征在于,所述计算机可读存储介质上存储有计算机程序,所述计算机程序被处理器执行时实现如权利要求1至4任一项所述的基因数据的查询方法的步骤。
Priority Applications (2)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201911025189.9A CN110797085B (zh) | 2019-10-25 | 2019-10-25 | 一种基因数据的查询方法、系统、设备及存储介质 |
PCT/CN2020/092824 WO2021077741A1 (zh) | 2019-10-25 | 2020-05-28 | 一种基因数据的查询方法、系统、设备及存储介质 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201911025189.9A CN110797085B (zh) | 2019-10-25 | 2019-10-25 | 一种基因数据的查询方法、系统、设备及存储介质 |
Publications (2)
Publication Number | Publication Date |
---|---|
CN110797085A CN110797085A (zh) | 2020-02-14 |
CN110797085B true CN110797085B (zh) | 2022-07-08 |
Family
ID=69441375
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN201911025189.9A Active CN110797085B (zh) | 2019-10-25 | 2019-10-25 | 一种基因数据的查询方法、系统、设备及存储介质 |
Country Status (2)
Country | Link |
---|---|
CN (1) | CN110797085B (zh) |
WO (1) | WO2021077741A1 (zh) |
Families Citing this family (4)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN110797085B (zh) * | 2019-10-25 | 2022-07-08 | 浪潮(北京)电子信息产业有限公司 | 一种基因数据的查询方法、系统、设备及存储介质 |
CN111402956A (zh) * | 2020-02-28 | 2020-07-10 | 苏州浪潮智能科技有限公司 | 一种序列比对方法、装置、设备、介质 |
CN112712850A (zh) * | 2020-12-29 | 2021-04-27 | 中南大学 | 一种可应用于传染病病原体测序读段映射的种子序列定位方法 |
CN116665772B (zh) * | 2023-05-30 | 2024-02-13 | 之江实验室 | 一种基于内存计算的基因组图分析方法、装置和介质 |
Citations (4)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN103793627A (zh) * | 2012-10-29 | 2014-05-14 | 三星Sds株式会社 | 碱基序列比对系统及方法 |
CN106909806A (zh) * | 2015-12-22 | 2017-06-30 | 广州华大基因医学检验所有限公司 | 定点检测变异的方法和装置 |
CN108280325A (zh) * | 2017-12-08 | 2018-07-13 | 北京雅康博生物科技有限公司 | 高通量测序数据的处理方法、处理装置、存储介质及处理器 |
CN109326325A (zh) * | 2018-07-25 | 2019-02-12 | 郑州云海信息技术有限公司 | 一种基因序列比对的方法、系统及相关组件 |
Family Cites Families (4)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US20160364523A1 (en) * | 2015-06-11 | 2016-12-15 | Seven Bridges Genomics Inc. | Systems and methods for identifying microorganisms |
US20170145486A1 (en) * | 2015-11-25 | 2017-05-25 | Integrated Dna Technologies, Inc. | Methods for variant detection |
CN108520002A (zh) * | 2018-03-12 | 2018-09-11 | 平安科技(深圳)有限公司 | 数据处理方法、服务器及计算机存储介质 |
CN110797085B (zh) * | 2019-10-25 | 2022-07-08 | 浪潮(北京)电子信息产业有限公司 | 一种基因数据的查询方法、系统、设备及存储介质 |
-
2019
- 2019-10-25 CN CN201911025189.9A patent/CN110797085B/zh active Active
-
2020
- 2020-05-28 WO PCT/CN2020/092824 patent/WO2021077741A1/zh active Application Filing
Patent Citations (4)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN103793627A (zh) * | 2012-10-29 | 2014-05-14 | 三星Sds株式会社 | 碱基序列比对系统及方法 |
CN106909806A (zh) * | 2015-12-22 | 2017-06-30 | 广州华大基因医学检验所有限公司 | 定点检测变异的方法和装置 |
CN108280325A (zh) * | 2017-12-08 | 2018-07-13 | 北京雅康博生物科技有限公司 | 高通量测序数据的处理方法、处理装置、存储介质及处理器 |
CN109326325A (zh) * | 2018-07-25 | 2019-02-12 | 郑州云海信息技术有限公司 | 一种基因序列比对的方法、系统及相关组件 |
Non-Patent Citations (2)
Title |
---|
"Indexing Similar DNA Sequences";Songbo Huang et al.;《International Conference on Algorithmic Applications in Management》;20101231;第180-190页 * |
"面向压缩生物基因数据的高效的查询方法";王佳英 等;《软件学报》;20160322;第27卷(第7期);第1715-1728页 * |
Also Published As
Publication number | Publication date |
---|---|
WO2021077741A1 (zh) | 2021-04-29 |
CN110797085A (zh) | 2020-02-14 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN110797085B (zh) | 一种基因数据的查询方法、系统、设备及存储介质 | |
US20170277599A1 (en) | Data boundary identification for identifying variable size data chunks | |
US20180205393A1 (en) | Encoding method and apparatus | |
CN103150260B (zh) | 重复数据删除方法和装置 | |
EP3072076B1 (en) | A method of generating a reference index data structure and method for finding a position of a data pattern in a reference data structure | |
US20130151562A1 (en) | Method of calculating feature-amount of digital sequence, and apparatus for calculating feature-amount of digital sequence | |
WO2012033498A1 (en) | Systems and methods for data compression | |
CN110557124B (zh) | 一种数据压缩方法及装置 | |
US20200210531A9 (en) | Data indexing method, data querying method and electronic device | |
CN111859033B (zh) | Ip库查询方法、装置及ip库压缩方法、装置 | |
WO2017000859A1 (zh) | 字符序列相似子串的跨越式查找算法及其在生物序列数据库上的查找应用 | |
CN102789553B (zh) | 利用长转录组测序结果装配基因组的方法及装置 | |
US20140121983A1 (en) | System and method for aligning genome sequence | |
CN106933934B (zh) | 数据表的连接方法和装置 | |
KR102219745B1 (ko) | 생물학적 서열 데이터 처리 방법 및 장치 | |
WO2016122318A1 (en) | A computer implemented method for generating a variant call file | |
CN104866535A (zh) | 一种号段记录压缩方法及装置 | |
CN110990640B (zh) | 一种数据判定方法、装置、设备及计算机可读存储介质 | |
CN112825268B (zh) | 测序结果比对方法及其应用 | |
CN108763871B (zh) | 基于第三代测序序列的补洞方法及装置 | |
CN113743078A (zh) | 一种数据核对的方法、装置及存储介质 | |
CN118132553A (zh) | 预聚合存储表创建方法、装置、电子设备及存储介质 | |
CN110955515A (zh) | 一种文件的处理方法、装置、电子设备及存储介质 | |
CN111326216B (zh) | 一种针对大数据基因测序文件的快速划分方法 | |
CN110557277A (zh) | 区块链系统中查找两个区块最近公共祖先的方法和系统 |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
PB01 | Publication | ||
PB01 | Publication | ||
SE01 | Entry into force of request for substantive examination | ||
SE01 | Entry into force of request for substantive examination | ||
GR01 | Patent grant | ||
GR01 | Patent grant |