【技术实现步骤摘要】
序列查找方法、装置、设备及介质
[0001]本申请涉及计算
,尤其涉及一种序列查找方法、装置、设备以及计算机可读存储介质。
技术介绍
[0002]序列是指具有顺序关系的多个字符形成的字符串。基于组成序列的字符的类型差异,序列可以分为数字序列、字母序列、汉字序列以及由多种类型字符组成的混合序列。在一些示例中,数字序列可以包括电话号码、银行卡号等等,字母序列可以包括基因序列(通常包括字母A、C、G、T,用于表征不同类型碱基)等等。
[0003]在许多场景中,需要在一个给定的参考序列中查找是否存在目标序列。以基因测序为例,通常需要在参考基因组(为了便于描述,可以称之为reference)中查找对若干样本进行检测得到的目标序列(为了便于描述,可以称之为read),得到该目标序列或者目标序列的最大精确匹配在参考基因组中的位置。
[0004]目前,业界主要采用BW变换以及全文索引(burrows wheeler transform-full text index in minute space,BWT-FM)算法进 ...
【技术保护点】
【技术特征摘要】
1.一种序列查找方法,其特征在于,所述方法包括:从目标序列中确定至少一个子序列,所述子序列以所述目标序列中的一个字符为起点;在加速库中查找所述子序列,得到所述子序列或者所述子序列以所述一个字符为起点的最大精确匹配在参考序列中的位置,所述加速库用于加速查找设定长度值的序列,所述子序列的长度为所述设定长度值。2.根据权利要求1所述的方法,其特征在于,所述加速库包括至少一个信息结构体,所述信息结构体用于指示样本序列或者所述样本序列以第一个字符为起点的最大精确匹配的范围。3.根据权利要求2所述的方法,其特征在于,所述信息结构体包括存在字段和长度字段中的至少一个字段以及范围字段,所述存在字段用于表征一个样本序列是否存在于所述参考序列中,所述范围字段用于表征所述样本序列或者所述样本序列以第一个字符为起点的最大精确匹配的范围,所述长度字段用于表征所述样本序列或者所述样本序列的最大精确匹配的长度。4.根据权利要求1至3任一项所述的方法,其特征在于,所述在加速库中查找所述子序列,得到所述子序列或者所述子序列以所述一个字符为起点的最大精确匹配在参考序列中的位置,包括:根据序列与存储地址的映射关系确定所述子序列对应的存储地址;根据所述存储地址访问所述加速库,得到所述子序列或者所述子序列以所述一个字符为起点的最大精确匹配在参考序列中的位置。5.根据权利要求1至4任一项所述的方法,其特征在于,所述加速库包括位于内存的第一加速库,所述设定长度值为第一长度值。6.根据权利要求5所述的方法,其特征在于,所述第一长度值根据所述内存的大小确定。7.根据权利要求1至4任一项所述的方法,其特征在于,所述加速库包括位于外存的第二加速库,所述设定长度值为第二长度值。8.根据权利要求7所述的方法,其特征在于,所述第二长度值根据所述外存的大小确定。9.根据权利要求7或8所述的方法,其特征在于,所述第二信息结构体还包括比较字段,所述比较字段用于表征最大精确匹配的长度值是否大于预设长度阈值,所述预设长度阈值根据内存的大小以及外存内存访问耗时比确定。10.根据权利要求1至4任一项所述的方法,其特征在于,所述从目标序列中确定至少一个子序列,包括:从目标序列中确定至少一个第一子序列和至少一个第二子序列,所述至少一个第一子序列和所述至少一个第二子序列以所述目标序列中的一个字符为起点,所述第二子序列长于所述第一子序列;所述加速库包括位于内存的第一加速库和位于外存的第二加速库;所述在加速库中查找所述子序列,包括:在所述第一加速库中查找所述第一子序列,以及在所述第二加速库中查找所述第二子
序列。11.根据权利要求10所述的方法,其特征在于,当在所述第二加速库中查找到所述第二子序列以所述一个字符为起点的最大精确匹配时,停止在所述第一加速库中查找所述第一子序列,当在所述第一加速库中查找到所述第一子序列以所述一个字符为起点的最大精确匹配时,停止在所述第二加速库中查找所述第二子序列。12.根据权利要求10或11所述的方法,其特征在于,所述第一长度值根据所述内存的大小确定,或者根据外存内存访问耗时比确定。13.根据权利要求1至12任一项所述的方法,其特征在于,所述方法还包括:在所述参考序列中查找样本序列,获得查找结果,所述查找结果用于表征所述样本序列或所述样本序列以第一个字符为起点的最大精确匹配在所述参考序列中的位置;根据所述查找结果构建所述加速库。14.根据权利要求13所述的方法,其特征在于,所述在所述参考序列中查找样本序列,获得查找结果,包括:根据所述参考序列的索引BWT、后缀数组SA和二维数组OCC,通过BWT算法在所述参考序列中查找样本序列,获得查找结果,所述查找结果用于表征所述样本序列是否存在于所述参考序列中,以及所述样本序列或所述样本序列以第一个字符为起点的最大精确匹配在所述二维数组的范围,以及所述样本序列或者所述样本序列以第一个字符为起点的最大精确匹配的长度值。15.根据权利要求1至14任一项所述的方法,其特征在于,所述序列为基因序列。16.一种序列查找装置,其特征在于,所述装置包括:确定模块,用于从目标序列中确定至少一个子序列,所述子序列以所述目标序列中的一个...
【专利技术属性】
技术研发人员:王正,杨德志,陈亮宇,王龙,
申请(专利权)人:华为技术有限公司,
类型:发明
国别省市:
还没有人留言评论。发表了对其他浏览者有用的留言会获得科技券。