CN107273204B - 用于基因分析的资源分配方法和装置 - Google Patents
用于基因分析的资源分配方法和装置 Download PDFInfo
- Publication number
- CN107273204B CN107273204B CN201610219164.2A CN201610219164A CN107273204B CN 107273204 B CN107273204 B CN 107273204B CN 201610219164 A CN201610219164 A CN 201610219164A CN 107273204 B CN107273204 B CN 107273204B
- Authority
- CN
- China
- Prior art keywords
- target
- chromosome region
- depth
- resource allocation
- segments
- 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
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
- G16B50/00—ICT programming tools or database systems specially adapted for bioinformatics
- G16B50/30—Data warehousing; Computing architectures
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F9/00—Arrangements for program control, e.g. control units
- G06F9/06—Arrangements for program control, e.g. control units using stored programs, i.e. using an internal store of processing equipment to receive or retain programs
- G06F9/46—Multiprogramming arrangements
- G06F9/50—Allocation of resources, e.g. of the central processing unit [CPU]
-
- 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
- G16B20/00—ICT specially adapted for functional genomics or proteomics, e.g. genotype-phenotype associations
-
- 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
- G16B20/00—ICT specially adapted for functional genomics or proteomics, e.g. genotype-phenotype associations
- G16B20/20—Allele or variant detection, e.g. single nucleotide polymorphism [SNP] detection
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F9/00—Arrangements for program control, e.g. control units
- G06F9/06—Arrangements for program control, e.g. control units using stored programs, i.e. using an internal store of processing equipment to receive or retain programs
- G06F9/46—Multiprogramming arrangements
- G06F9/52—Program synchronisation; Mutual exclusion, e.g. by means of semaphores
-
- 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
- G16B30/10—Sequence alignment; Homology search
Landscapes
- Engineering & Computer Science (AREA)
- Physics & Mathematics (AREA)
- Theoretical Computer Science (AREA)
- Health & Medical Sciences (AREA)
- Life Sciences & Earth Sciences (AREA)
- Bioinformatics & Cheminformatics (AREA)
- General Health & Medical Sciences (AREA)
- Spectroscopy & Molecular Physics (AREA)
- Biophysics (AREA)
- Bioinformatics & Computational Biology (AREA)
- Biotechnology (AREA)
- Evolutionary Biology (AREA)
- Medical Informatics (AREA)
- Software Systems (AREA)
- Chemical & Material Sciences (AREA)
- Analytical Chemistry (AREA)
- Genetics & Genomics (AREA)
- Molecular Biology (AREA)
- Proteomics, Peptides & Aminoacids (AREA)
- General Engineering & Computer Science (AREA)
- General Physics & Mathematics (AREA)
- Databases & Information Systems (AREA)
- Bioethics (AREA)
- Measuring Or Testing Involving Enzymes Or Micro-Organisms (AREA)
Abstract
本发明实施例提供了一种用于基因分析的资源分配方法和装置。该方法包括:根据目标染色体区域中的已定序读串,获得所述目标染色体区域的用于资源分配的参数值;根据所述目标染色体区域的用于资源分配的参数值,为基因分析中针对所述目标染色体区域中的已定序读串的整理与异变识别任务中的操作分配计算资源。本申请实施例可以高效利用计算资源提升基因分析作业的性能。
Description
技术领域
本申请实施例涉及计算机领域,并且更具体地,涉及一种用于基因分析的资源分配方法和装置。
背景技术
随着脱氧核糖核酸(Deoxyribonucleic Acid,DNA)测序技术的进步,基因分析已成为检测和针对性治疗遗传和突变类疾病的重要手段。
其中,基因是指携带有遗传信息的DNA序列。DNA是一种长链聚合物,组成单位包括四种脱氧核苷酸,DNA的载体可以称为染色体。
简单来说,基因分析包括以下三个阶段:DNA测序(Sequencing),DNA序列拼装(Assembly)与变异识别(Variant Calling),以及基因注释(Annotation)与分析。
在DNA测序中,DNA会被打断成多个片段,然后由测序仪同时对几十到几百万条片段进行同时测序。测序输出的碱基符号序列可以称为碱基序列读串。
DNA序列拼装与变异识别是利用计算机方法将测序仪输出的碱基序列读串(Read)拼装为DNA序列,并通过比对参考DNA发现变异碱基位点的过程。具体地,将测序仪输出的碱基序列读串进行回帖,确定各个读串的坐标,其中,经回贴处理后坐标已知的读串称为已定序读串;然后,可以以各个染色体区域为对象,对各个染色体区域的已定序读串进行整理和变异识别;并对各个染色体区域的变异识别结果进行合并。
染色体区域的整理和异变识别任务需要大量的计算资源,因此亟需一种合理的资源分配方法,来提升计算资源利用效率和基因分析的执行效率。
发明内容
本申请实施例提供了一种用于基因分析作业的资源分配方法和装置,可以有效的利用计算资源。
第一方面,提供了一种用于基因分析的资源分配方法,包括:根据目标染色体区域中的已定序读串,确定该目标染色体区域的用于资源分配的参数值;根据该目标染色体区域的用于资源分配的参数值,为基因分析中针对该目标染色体区域中的已定序读串的整理与异变识别任务中的操作分配计算资源。
在本申请实施例中,根据染色体区域中的已定序读串,来获取用于资源分配的参数值,并根据该参数值,为已定序读串的整理与异变识别任务中的操作分配计算资源,可以实现根据染色体区域中的已定序读串,动态调度计算资源,从而可以实现有效的资源利用。
结合第一方面,在第一方面的第一种可能的实现方式中,所述目标染色体区域的用于资源分配的参数包括:所述目标染色体区域中的已定序读串的数量和所述目标染色体区域中的位点的平均覆盖深度的至少一种。
其中,染色体区域中的已定序读串的数量是指覆盖该染色体区域的已定序读串的数量。染色体区域中位点的平均覆盖深度值可以通过以下方式计算:计算覆盖该染色体区域的所有已定序读串的长度值之和,将覆盖该染色体区域的所有已定序读串的长度值之和除以该染色体区域的长度值,以商值作为该染色体区域中的位点的平均覆盖深度值。
在本申请实施例中,碱基在DNA出现的位置称为位点。已定序读串是指经回贴处理后具有明确染色体坐标的读串。
结合第一方面或其上述任一种可能的实现方式,在第一方面的第二种可能的实现方式中,所述根据目标染色体区域中的已定序读串,获得所述目标染色体区域的用于资源分配的参数值,包括:根据覆盖在所述目标染色体区域中的位点上的已定序读串的数量值,获得所述目标染色体区域中位点的覆盖深度值;根据所述目标染色体区域中位点的覆盖深度值,确定所述目标染色体区域中的间隙,从而得到以所述间隙为间隔的所述目标染色体区域的至少两个片段,其中,所述间隙中位点的覆盖深度值低于第一阈值,所述间隙为所述目标染色体区域的片段或位点,所述至少两个片段不包括所述间隙;将所述目标染色体区域的所述至少两个片段中的全部或部分片段确定为目标片段;将所述目标片段的数量、所述目标片段的长度、所述目标片段中的已定序读串的数量和所述目标片段的覆盖深度中的至少一种,作为所述目标染色体区域的用于资源分配的参数,所述目标片段的覆盖深度为所述目标片段中位点的平均覆盖深度;获得所述目标染色体区域的用于资源分配的参数值。
其中,目标片段中的已定序读串的数量是指覆盖该目标片段的已定序读串的数量。目标片段的长度可以是指该目标片段所具有的位点的数量。目标片段中的位点的平均覆盖深度值可以通过以下方式计算:计算该目标片段内的已定序读串的长度值之和,将该目标片段内的已定序读串的长度值之和除以该目标片段的长度值,以商值作为该目标片段中的位点的平均覆盖深度值。
结合第一方面或其上述任一种可能的实现方式,在第一方面的第三种可能的实现方式中,所述根据目标染色体区域中的已定序读串,获得所述目标染色体区域的用于资源分配的参数值,包括:根据覆盖在所述目标染色体区域中的位点上的已定序读串的数量值,获得所述目标染色体区域中位点的覆盖深度值;根据所述目标染色体区域中位点的覆盖深度值,确定所述目标染色体区域中的间隙,从而获得以所述间隙为间隔的所述目标染色体区域的至少两个片段,其中,所述间隙中位点的覆盖深度值低于第一阈值,所述间隙为所述目标染色体区域的片段或位点,所述至少两个片段不包括所述间隙;将所述目标染色体区域的所述至少两个片段中的全部或部分片段确定为目标片段,所述目标片段的数量为至少两个;将所述目标片段的覆盖深度值的加权平均值,作为所述目标染色体区域的用于资源分配的参数,所述目标片段的覆盖深度为所述目标片段中位点的平均覆盖深度;获得所述目标染色体区域的用于资源分配的参数值。
结合第一方面的第三种可能的实现方式,在第一方面的第四种可能的实现方式中,所述获取所述目标染色体区域的用于资源分配的参数值,包括:将所述目标片段中一个目标片段的长度值与所述目标染色体区域的长度值的比值,作为所述一个目标片段的覆盖深度值的权值,计算所述目标片段的覆盖深度值的加权平均值。
应理解,此处中的一个目标片段可以是指目标染色体区域中的任一个目标片段,也即,对任一目标片段而言,均可以通过该目标片段的长度值与目标染色体区域的长度值的比值作为该目标片段的覆盖深度值的权值。
结合第一方面的第二种至第四种中任一种的实现方式,在第一方面的第五种可能的实现方式中,所述将所述目标染色体区域的所述至少两个片段中的全部或部分片段确定为所述目标片段,包括:将所述目标染色体区域的至少两个片段中已定序读串的数量满足预设的数量要求的片段,和所述目标染色体区域的至少两个片段中位点的平均覆盖深度满足预设的覆盖深度要求的片段中至少一种,作为所述目标片段。
例如,将该至少两个片段中位点的平均覆盖深度最大的k个片段的每个片段确定为该目标片段;或将该至少两个片段中位点的平均覆盖深度大于第二阈值的每个片段确定为该目标片段;或将该至少两个片段中已定序读串的数量最多的k个片段的每个片段确定为该目标片段;或将该多个片段中已定序读串的数量大于第三阈值的每个片段确定为该目标片段。
因此,在本申请实施例中,将位点的平均覆盖深度低于阈值的间隙作为间隔,将染色体区域划分为多个片段,并从该多个片段中选取目标片段,将目标片段的参数作为用于分配资源的参数,可以局部统计读串数量较多或覆盖深度较大的片段,可以更好的确定目标染色体区域的用于资源分配的参数的偏斜情况。并且,进一步地,将多个片段中的覆盖深度较高或者读串数量较多的片段选取为目标片段,使得资源分配时参考的参数更有意义。
结合第一方面或其上述任一种可能的实现方式,在第一方面的第六种可能的实现方式中,所述根据所述目标染色体区域的用于资源分配的参数值,为基因分析中针对所述目标染色体区域中的已定序读串的整理与变异识别任务中的操作分配计算资源,包括:获取至少两个染色体区域各自的用于资源分配的参数值的平均值;根据所述目标染色体区域的用于资源分配的参数值,以及所述至少两个染色体区域各自的用于资源分配的参数值的平均值,获得所述目标染色体区域的用于资源分配的参数值相对至少两个染色体区域各自的用于资源分配的参数值的平均值的偏斜;根据所述偏斜,为所述操作分配计算资源。
结合第一方面的第六种可能的实现方式,在第一方面的第七种可能的实现方式中,所述至少两个染色体区域包括所述目标染色体区域。
结合第一方面的第六种或第七种可能的实现方式,在第一方面的第八种可能的实现方式中,所述偏斜包括:所述目标片段的覆盖深度值的加权平均值与所述至少两个染色体区域各自的覆盖深度值的加权平均值的比值,所述染色体区域的覆盖深度包括所述染色体区域的至少两个片段各自的位点的覆盖深度值的加权平均值,或包括所述染色体区域的位点的平均覆盖深度。
结合第一方面的第六种或第七种可能的实现方式,在第一方面的第九种可能的实现方式中,所述偏斜包括:所述目标染色体区域的已定序读串的数量值与所述至少两个染色体区域各自的已定序读串的数量值的算术均值的比值。
应理解,在本申请实施例中,也可以根据目标染色体区域的用于资源分配的参数值与至少两个染色体区域的各自的用于资源分配的参数值的平均值之差或其他方式来确定偏斜,只要能反映出目标染色体区域的用于资源分配的参数值与至少两个染色体区域的各自的用于资源分配的参数值的平均值的偏离程度即可。
还应理解,不仅可以根据目标染色体区域的用于资源分配的参数值对至少两个染色体区域各自的用于资源分配的参数值的平均值的偏斜,来进行资源的分配,还可以通过其他方式进行计算资源的分配。例如,根据目标染色体区域的用于资源分配的参数值来进行资源的分配,而不考虑至少两个染色体区域各自的用于资源分配的参数值的平均值。
还应理解,本申请实施例可以同时考虑多个参数进行资源的分配。
结合第一方面的第六种至第九种任一种可能的实现方式,在第一方面的第十种可能的实现方式中,所述根据所述偏斜,为所述操作分配计算资源,包括:根据所述偏斜,对用于实现所述操作的初始计算资源进行调整,以得到所述计算资源。
在本申请实施例中,在进行资源分配时,如果确定某一任务所需的计算资源较多,可以将预分配给所需计算量较少的任务的一部分资源,重新分配给所需计算资源较多的任务。或者,可以不改变预分配给所需计算资源较少的任务的计算资源,而是将其他计算资源(还未被预分配的备用计算资源)分配给所需的计算资源较多的任务。
可选地,在本申请实施例中,在已存在预先配置的计算资源,可以按照以下计算方式更新资源分配计划:
R-update=R+[t×(x-region/x-average-1)×P]=
<r-cpu_cores+[t×(x-region/x-average-1)×p-cpu_cores],
r-mem+[t×(x-region/x-average-1)×p-mem],
r-gpu+[t×(x-region/x-average-1)×p-gpu],
r-fpga+[t×(x-region/x-average-1)×p-fpga]>,
其中,x-region为目标染色体区域的用于资源分配的参数值,x-average为至少两个染色体区域的用于资源分配的参数值的平均值;R<r-cpu_cores,r-mem,r-gpu,r-fpga>为已定序读串的整理与变异识别任务的某一个或多个操作的基础资源分配计划,用于分别描述预先分配的执行该一个或多个操作所需的CPU核、内存、GPU和FPGA资源;P<p-cpu_cores,p-mem,p-gpu,p-fpga>描述该一个或多个操作的资源分配调整单元;t为调节参数;[]为取整运算符。
因此,在本申请实施例中,通过根据染色体区域的已定序读串,判断各染色体区域分析任务的计算量差异,引导调度系统为复杂分析任务优先分配优势计算资源,提升基因分析作业的整体性能,提升分析系统计算资源利用效率,从整体上降低基因分析作业的时间开销。
结合第一方面或其上述任一种可能的实现方式,在第一方面的第十一种可能的实现方式中,所述至少一种操作包括去重操作、过滤操作、局部重排操作、碱基质量分数校正操作和变异识别操作中的至少一种。
可选地,由于去重操作、过滤操作、局部重排和碱基质量分数校正操作与目标染色体区域的已定序读串数量的相关性较大,则可以在该去重操作、过滤操作、局部重排和碱基质量分数校正操作中每个操作之前均根据染色体区域的经过前置处理的已定序读串的数量,进行资源分配,或者仅在去重操作之前根据染色体区域的已定序读串的数量进行资源分配。
可选地,由于变异识别操作与目标片段的覆盖深度值的加权平均值相关性较大,因此可以在变异识别操作之前根据染色体区域的经过前置处理的已定序读串的数量,确定目标片段以及确定目标片段的覆盖深度值的加权平均值,并进行资源分配。
结合第一方面或其上述任一种可能的实现方式,在第一方面的第十二种可能的实现方式中,所述计算资源,包括:中央处理单元资源,内存资源、图像处理单元资源和现场可编程门阵列资源中的至少一种。
第二方面,提供了一种用于基因分析的资源分配装置,该装置包括获取单元,用于根据目标染色体区域中的已定序读串,获得所述目标染色体区域的用于资源分配的参数值;分配单元,用于根据所述目标染色体区域的用于资源分配的参数值,为基因分析中针对所述目标染色体区域中的已定序读串的整理与异变识别任务中的操作分配计算资源。
结合第二方面,在第二方面的第一种可能的实现方式中,所述目标染色体区域的用于资源分配的参数包括:所述目标染色体区域中的已定序读串的数量和所述目标染色体区域中的位点的平均覆盖深度的至少一种。
结合第二方面,在第二方面的第二种可能的实现方式中,所述获取单元用于:根据覆盖在所述目标染色体区域中的位点上的已定序读串的数量值,获得所述目标染色体区域中位点的覆盖深度值;根据所述目标染色体区域中位点的覆盖深度值,确定所述目标染色体区域中的间隙,从而得到以所述间隙为间隔的所述目标染色体区域的至少两个片段,其中,所述间隙中位点的覆盖深度值低于第一阈值,所述间隙为所述目标染色体区域的片段或位点,所述至少两个片段不包括所述间隙;将所述目标染色体区域的所述至少两个片段中的全部或部分片段确定为目标片段;将所述目标片段的数量、所述目标片段的长度、所述目标片段中的已定序读串的数量和所述目标片段的覆盖深度中的至少一种,作为所述目标染色体区域的用于资源分配的参数,所述目标片段的覆盖深度为所述目标片段中位点的平均覆盖深度;获得所述目标染色体区域的用于资源分配的参数值。
结合第二方面,在第二方面的第三种可能的实现方式中,所述获取单元用于:根据覆盖在所述目标染色体区域中的位点上的已定序读串的数量值,获得所述目标染色体区域中位点的覆盖深度值;根据所述目标染色体区域中位点的覆盖深度值,确定所述目标染色体区域中的间隙,从而获得以所述间隙为间隔的所述目标染色体区域的至少两个片段,其中,所述间隙中位点的覆盖深度值低于第一阈值,所述间隙为所述目标染色体区域的片段或位点,所述至少两个片段不包括所述间隙;将所述目标染色体区域的所述至少两个片段中的全部或部分片段确定为目标片段,所述目标片段的数量为至少两个;将所述目标片段的覆盖深度值的加权平均值,作为所述目标染色体区域的用于资源分配的参数,所述目标片段的覆盖深度为所述目标片段中位点的平均覆盖深度;获得所述目标染色体区域的用于资源分配的参数值。
结合第二方面的第二种或第三种可能的实现方式,在第二方面的第四种可能的实现方式中,所述获取单元用于:将所述目标染色体区域的至少两个片段中已定序读串的数量满足预设的数量要求的片段,和所述目标染色体区域的至少两个片段中位点的平均覆盖深度满足预设的覆盖深度要求的片段中至少一种,作为所述目标片段。
结合第二方面的第三种可能的实现方式,在第二方面的第五种可能的实现方式中,所述获取单元用于:将所述目标片段中一个目标片段的长度值与所述目标染色体区域的长度值的比值,作为所述一个目标片段的覆盖深度值的权值,计算所述目标片段的覆盖深度值的加权平均值。
结合第二方面或其上述任一种可能的实现方式,在第二方面的第六种可能的实现方式中,所述获取单元还用于:获取至少两个染色体区域各自的用于资源分配的参数值的平均值;所述分配单元用于:根据所述获取单元获取的目标染色体区域的用于资源分配的参数值,以及所述获取单元获取的所述至少两个染色体区域各自的用于资源分配的参数值的平均值,获得所述目标染色体区域的用于资源分配的参数值相对至少两个染色体区域各自的用于资源分配的参数值的平均值的偏斜;根据所述偏斜,为所述操作分配计算资源。
结合第二方面的第六种可能的实现方式,在第二方面的第七种可能的实现方式中,所述至少两个染色体区域包括所述目标染色体区域。
结合第二方面的第六种或第七种可能的实现方式,在第二方面的第八种可能的实现方式中,所述偏斜包括:所述目标片段的覆盖深度值的加权平均值与所述至少两个染色体区域各自的覆盖深度值的加权平均值的比值,所述染色体区域的覆盖深度包括所述染色体区域的至少两个片段各自的位点的覆盖深度值的加权平均值,或包括所述染色体区域的位点的平均覆盖深度。
结合第二方面的第六种或第七种可能的实现方式,在第二方面的第九种可能的实现方式中,所述偏斜包括:所述目标染色体区域的已定序读串的数量值与所述至少两个染色体区域各自的已定序读串的数量值的算数平均值的比值。
结合第二方面的第六种至第九种中任一种可能的实现方式,在第二方面的第十种可能的实现方式中,,所述分配单元用于:根据所述偏斜,对用于实现所述操作的初始计算资源进行调整,以得到所述计算资源。
第三方面,提供了一种用于基因分析的资源分配装置,包括:存储器和处理器,该存储器用于存储指令,该处理器用于执行该存储器存储的指令,并且当该处理器执行该存储器存储的指令时,该执行使得该处理器执行第一方面或第一方面的任意可能的实现方式中的方法。
第四方面,提供了一种计算机存储介质,该计算机存储介质中存储有程序代码,该程序代码用于指示执行上述第一方面或第一方面的任意可能的实现方式中的方法。
附图说明
为了更清楚地说明本发明实施例的技术方案,下面将对实施例或现有技术描述中所需要使用的附图作简单地介绍,显而易见地,下面描述中的附图仅仅是本发明的一些实施例,对于本领域普通技术人员来讲,在不付出创造性劳动的前提下,还可以根据这些附图获得其他的附图。
图1是根据本申请实施例的应用场景示意性图。
图2是根据本申请实施例的资源分配方法的示意性流程图。
图3是根据本申请实施例的资源分配方法的示意性图。
图4是根据本申请实施例的资源分配方法的示意性图。
图5是根据本申请实施例的资源分配装置的示意性框图。
图6是根据本申请实施例的资源分配装置的示意性框图。
具体实施方式
下面将结合本发明实施例中的附图,对本发明实施例中的技术方案进行清楚、完整地描述,显然,所描述的实施例是本发明一部分实施例,而不是全部的实施例。基于本发明中的实施例,本领域普通技术人员在没有作出创造性劳动前提下所获得的所有其他实施例,都属于本发明保护的范围。
以下为了理解而非限定对本申请实施例涉及到的术语进行说明。
基因是指携带有遗传信息的DNA序列,是控制性状的基本遗传单位,亦即一段具有功能性的碱基序列。基因通过指导蛋白质的合成来表现所携带的遗传信息,从而控制生物个体的性状(差异)表现。
DNA是一种长链聚合物,组成单位称为四种脱氧核苷酸。脱氧核苷酸由脱氧核糖(五碳糖)、磷酸和碱基(Base)组成,其中脱氧核糖和磷酸由酯键相连,组成外侧的长链骨架,每个糖分子在内侧与四种碱基里的其中一种相接,这些碱基沿着DNA长链所排列而成的序列,可组成遗传密码,是蛋白质氨基酸序列合成的依据。组成脱氧核醣核酸的碱基,分别是腺嘌呤(Adenine,A)、胸腺嘧啶(Thymine,T)、胞嘧啶(Cytosine,C)与鸟嘌呤(Guanine,G),相应的四种脱氧核苷酸分别为腺嘌呤脱氧核苷酸(dAMP)、胸腺嘧啶脱氧核苷酸(dTMP)、胞嘧啶脱氧核苷酸(dCMP)、鸟嘌呤脱氧核苷酸(dGMP)。
DNA是双链结构,即一条链上的碱基会与另一条链对应位置的碱基配对出现,按照A与T结合、C与G结合的规则形成碱基对(Base Pair,BP),一般以BP作为DNA的长度单位,并将A、T、C、G在DNA中出现的位置称为位点。在计算机系统中,分别以字符A、T、C、G表示四种碱基,每个字符占用1个字节,因此也以字节作为碱基序列的长度单位。
染色体(Chromosome)是DNA的主要载体,人类的染色体成对出现,也称二倍体。正常人的体细胞共有22对常染色体(Chr 1~Chr 22)和一对性染色体(Chr X、Chr Y),染色体编号是划分基因区域的自然单位。
基因分析包括DNA测序,DNA序列拼装与变异识别,以及基因注释与分析三个步骤。
DNA测序是从DNA分子中测定核苷酸排列顺序的过程。DNA测序可以采用基于大规模并行测序的基因测序技术。
在该测序技术中,为了提升测序速度,DNA会被打断成数十到数百碱基长度的片段,然后由测序仪同时对几十到几百万条片段进行同时测序。测序输出的碱基符号序列可以称为读串。
为了提升测序的准确度和覆盖度(Coverage),通常会对目标区域进行重复测序以增加测序深度(Sequence Depth)。
其中,覆盖度是指测序观察到的碱基位点占待测目标染色体区域的比例。测序深度是指测序得到的总碱基数与待测基因组长度的比值。测序深度与覆盖度大致呈正相关,一般认为测序深度在18x以上,能够达到较好的准确度,常见的全基因测序深度为30x~80x,针对特定疾病相关区域的深度测序可达100x~10000x,其中,x表示倍数/深度,也即目标染色体区域内位点被读串覆盖到的次数。
测序过程中,DNA片段会出现“丢失”的情况,可以认为覆盖度主要用来评估“丢失”的比例。为了避免丢失,会复制DNA重复测多次,增加了“测序深度”,进而增加了输出结果的“覆盖深度”。
DNA序列拼装与变异识别是利用计算机方法将测序仪输出的零散碱基序列读串(Read)拼装为完整DNA序列,并通过比对参考DNA发现变异碱基位点的过程。
读串为长度几十到几百字节的字符串,需要回贴(Map)到参考序列才能确定其在DNA中的原始坐标。由于人类DNA本身有很多重复碱基序列,部分读串可能被回贴到多个位置,或者深度测序输出的多个读串可能被回贴到相同位置,或者其他原因造成的多个读串被回贴到相同位置。由此可以采用去重(Deduplication)操作,去重操作用于移除坐标、长度和内容相同的读串以精简数据。之后,可以采用局部重排操作,即识别插入和缺失(Indel)变异点,并在其周围做局部重排(Local Realignment)校正读串坐标。然后,可以采用变异识别操作,即通过分析读串的测序和回贴质量分数(Quality Score),并比对参考序列识别变异点(Call Variants)。
上述回贴操作、去重操作和变异识别操作之间也可以加入过滤(Filter)操作、碱基质量分数校正(Base Quality Score Recalibration)操作等环节优化分析质量。
基因注释与分析是指通过生物信息学方法,结合蛋白组学、转录组学,分析测序结果,识别基因及其功能,并挖掘变异点与相关疾病之间的关系。
在基因分析的三个必要阶段中,DNA序列拼装与变异识别是需要大量计算开销的环节。为了缩短基因分析的时间开销,可采用并行计算框架构建可扩展的基因分析流水线,例如可以采用Hadoop/Spark等并行计算框架。Hadoop/Spark等并行计算框架主要面向同构集群节点设计,并假定并行任务的执行开销具有均衡性,而DNA测序数据在经过若干处理步骤之后,各任务单元的数据量和计算时间会出现明显的统计偏斜,从而出现由少量复杂计算任务导致的“长尾”问题,也即部分子任务拖延计算时间导致整体分析任务无法及时结束。
为了更加清楚地理解该问题,以下将参考图1,结合Halvade框架100,对DNA的序列拼装和变异识别进行简要说明,其中,Halvade系统是在Mapreduce架构下,基于Hadoop计算框架开发的分布式基因分析流水线应用框架,它的方法抽象出来也可以在Spark计算框架上实现。
在图1中,在数据预处理(Data Preprocessing)阶段(110),用于保存读串(Reads)的FASTQ文件被切分为n个约60MB的块(Chunks)上传到分布式文件系统。各工作节点在映射(Map)阶段(120)从分布式文件系统读取数据,并针对各个块并发执行独立的读串回贴任务。回贴后的读串在混洗(Shuffle)阶段(130)排序并分发到m个化简(Reduce)任务单元,每个化简任务(140)仅处理指定染色体区域的读串,其中,m可以等于或不等于n。最后,各化简任务输出的变异识别结果合并(Merge)(150)到统一的VCF文件。
其中,每个化简任务对应一段指定的染色体区域。化简阶段的任务分为数据整理(Data Cleansing)和变异识别步骤,其中数据整理包括去重、局部重排、碱基质量校正等操作。在本申请实施例中,化简还可以称为规约。
回贴任务的数量可以由FASTQ数据的分块数量来决定,化简任务的数量可以由染色体区域的数量来决定,回贴或化简任务的并发数可以由集群资源确定。应理解,FASTQ是一种本申请实施例中读串的一种保存格式,但是本申请实施例并不仅限于此。
Halvade可以在回贴阶段使用BWA MEM或BWA ALN+BWA SAMPE执行读串回贴,并将输出SAM格式的定序读串数据。混洗后的读串数据在Reduce阶段可以由elPrep或Picard工具去重,并输出BAM格式数据,然后可以由GATK工具集执行插入/缺失点重排、碱基质量校正以及变异识别,其中HaplotypeCaller是比UnifiedGenotyper准确度更好但计算复杂度更高的变异识别工具。
测序仪输出的读串在不同染色体区域上的覆盖深度具有不均匀性,例如,平均测序深度为60x的碱基序列,在经过回贴操作之后,不同染色体区域的实际覆盖深度在零到数千(甚至更高)不等。
并行计算框架(如Hadoop、Spark等)要求在回贴任务启动前确定混洗数据在化简阶段的数据分发规则,Halvade以固定长度的染色体区域作为读串分发依据,从而导致不同化简任务处理的数据量和计算量存在严重的不均衡性。因此,Halvade的缺点在于为所有任务分配均衡的计算资源,无法解决由任务偏斜导致的分析时间“长尾”问题。少量复杂化简任务的时间开销可达平均任务时间的10倍以上,1%的计算任务可能拖延20%~50%的整体分析时间。
因此,本申请提出了一种资源分配方法,可以合理分配计算资源。
图2是根据本申请实施例的资源分配方法200的示意性流程图。如图2所示,该方法200包括210和220。
在210中,根据目标染色体区域中的已定序读串,获得该目标染色体区域的用于资源分配的参数值;
在220中,根据该目标染色体区域的用于资源分配的参数值,为基因分析中针对该目标染色体区域中的已定序读串的整理与异变识别任务中的操作分配计算资源。
可选地,在本申请实施例中,可以预划分染色体区域。其中,可以将一条染色体作为一个染色体区域,也可以将一条染色体的部分区域作为一个染色体区域,或者可以将多条染色体作为一个染色体区域,然后可以以一个染色体区域为整体为已定序读串的整理和变异识别任务中的操作分配计算资源。
可选地,本申请实施例可以应用于Mapreduce架构下,在该Mapreduce架构下,已定序读串的整理与变异识别任务可以称为化简任务或规约任务,英文称为reduce任务。当然,本申请实施例还可以应用于其他架构下。
可选地,已定序读串的整理与变异识别任务可以包括去重操作、局部重排操作、过滤操作、碱基质量分数校正操作和变异识别操作中的至少一种。
在本申请实施例中,已定序读串是指经回贴处理后具有明确染色体坐标的读串。
可选地,在本申请实施例中,目标染色体区域的用于资源分配的参数可以包括该目标染色体区域中的已定序读串的数量和该目标染色体区域中的位点的平均覆盖深度中的至少一种。
其中,染色体区域中的已定序读串的数量是指覆盖该染色体区域的已定序读串的数量,其中,如果某一已定序读串只有部分碱基属于该染色体区域,可以将该已定序读串的数量值确定为1,也可以按照该已定序读串在该染色体区域的比例,将该已定序读串的数量值确定为小于1,例如,0.6,也即该已定序读串中60%的碱基属于该染色体区域。
染色体区域中位点的平均覆盖深度值可以通过以下方式计算:计算覆盖该染色体区域的所有已定序读串长度值之和,除以该染色体区域的长度值,以商值作为该染色体区域中的位点的平均覆盖深度值。其中,已定序读串的长度和染色体区域的长度可以是以位点的数量为单位,例如,该染色体区域包括100个位点,则该染色体区域的长度值为100个位点长度。
在本申请实施例中,可以将染色体区域划分为多个片段,将多个片段中的全部或部分片段选定为目标片段。
可选地,目标染色体区域的用于资源分配的参数可以包括该目标染色体区域中目标片段的数量、目标片段的长度、目标片段的已定序读串的数量、目标片段中的位点的平均覆盖深度中的至少一种。
其中,目标片段中的已定序读串的数量是指覆盖该目标片段的已定序读串的数量。
目标片段的长度可以是指该目标片段所具有的位点的数量。
目标片段中的位点的平均覆盖深度值可以通过以下方式计算:计算该目标片段内的已定序读串的长度值之和,除以该目标片段的长度值,以商值作为该目标片段中的位点的平均覆盖深度值。
可选地,该目标染色体区域中目标片段的覆盖深度值的加权平均值,其中,目标片段的覆盖深度为该目标片段中位点的平均覆盖深度,此时,该目标染色体区域至少包括两个目标片段。
目标片段的覆盖深度值的加权平均值可以通过将所有目标片段中位点的平均覆盖深度值进行加权处理而得到。
例如,所述目标片段的覆盖深度值的加权平均值是以各个目标片段的长度值占目标染色体区域的目标片段的长度值之和的比值作为权值确定得到。
具体地,目标染色体区域包括k个目标片段,设k个目标片段的覆盖深度值分别为d1~dk,长度值分别为l1~lk,长度之和值为L=l1+l2+…+lk,则加权覆盖深度值d-region的一种计算方法可以为:d-region=d1×l1/L+d2×l2/L+…+dk×lk/L。
可选地,本申请实施例可以通过以下方式确定目标片段:根据覆盖在目标染色体区域中的位点上的已定序读串的数量值,获得该目标染色体区域中位点的覆盖深度值;根据该目标染色体区域中位点的覆盖深度值,确定该目标染色体区域中的间隙,从而得到以该间隙为间隔的该目标染色体区域的至少两个片段,其中,该间隙中位点的覆盖深度值低于第一阈值,该间隙为该目标染色体区域的片段或位点,该至少两个片段不包括该间隙;将该目标染色体区域的该至少两个片段中的全部或部分片段确定为目标片段。
具体地,可以将覆盖深度值低于第一阈值的任意位点均作为间隙中的位点,或者,可以以N(N大于等于2)个位点为单位,将位点的平均覆盖深度值低于第一阈值的任意N个位点为整体作为间隙,其中,在选取N个位点时,可以按照位点重叠或不重叠的方式选取。
例如,假设有100个位点,N为5,按照位点不重叠的方式选择,则可以确定位点1-5的平均覆盖深度值,然后确定位点6-10的平均覆盖深度值,依次类推,并将平均覆盖深度值低于第一阈值的任意5个位点作为划分片段的间隙。
再例如,假设有100个位点,N为5,按照位点重叠的方式选择,则可以确定位点1-5的平均覆盖深度值,确定位点2-6的平均覆盖深度值,确定位点3-7的平均覆盖深度值,将平均覆盖深度值低于第一阈值的任意5个位点均作为划分片度的间隙,例如,假设位点1-5和位点2-6的平均覆盖深度值均低于第一阈值,则可以将位点1-6作为间隙。
其中,位点的覆盖深度值可以通过确定覆盖在该位点上的读串数量来得到。可选地,该第一阈值可以根据实际情况而定,例如,根据计算系统所能承受的统计计算量的来设定,例如,计算系统所能承受的统计计算量越低,则该阈值可以设置的越高。
可选地,在从染色体区域划分的至少两个片段选择目标片段时,可以根据该至少两个片段中已定序读串的数量和位点的平均覆盖深度中的至少一种来选择目标片段。
具体地,将目标染色体区域的至少两个片段中已定序读串的数量满足预设的数量要求的片段,和目标染色体区域的至少两个片段中位点的平均覆盖深度满足预设的覆盖深度要求的片段中至少一种,作为目标片段。
例如,将该至少两个片段中位点的平均覆盖深度值最大的k个片段的每个片段确定为该目标片段;或将该至少两个片段中位点的平均覆盖深度值大于第二阈值的每个片段确定为该目标片段;或将该至少两个片段中已定序读串的数量值最多的k个片段的每个片段确定为该目标片段;或将该多个片段中已定序读串的数量值大于第三阈值的每个片段确定为该目标片段。
因此,在本申请实施例中,将位点的平均覆盖深度值低于阈值的间隙作为间隔,将染色体区域划分为多个片段,并从该多个片段中选取目标片段,将目标片段的参数作为用于分配资源的参数,可以局部统计读串数量较多或覆盖深度较大的片段,可以更好的确定目标染色体区域的用于资源分配的参数的偏斜情况。
并且,进一步地,将多个片段中的覆盖深度较高或者读串数量较多的片段选取为目标片段,使得资源分配时参考的参数更有意义。
在本申请实施例中,还可以其他方式来确定染色体区域中的目标片段,例如,选取特定位点作为选取目标片段的起始点和终止点,例如,选取染色体区域的第2个位点作为第一个目标片段的起始点,以及选取第50个位点作为目标片段的终止点,选取染色体区域的第102个位点作为第一个目标片段的起始点,以及选取第150个位点作为第二个目标片段的终止点,选取染色体区域的第202个位点作为第一个目标片段的起始点,以及选取第250个位点作为第三个目标片段的终止点,依此类推。此时,可以将目标片段的已定序读串的数量、目标片段中的位点的平均覆盖深度和该目标染色体区域中目标片段的覆盖深度值的加权平均值的至少一种作为用于资源分配的参数。
可选地,本申请实施例提到的计算资源可以包括中央处理单元(CenterProcessing Unit,CPU)资源,内存资源、图像处理单元(Graphics Processing Unit,GPU)资源和现场可编程门阵列(Field Programmable Gate Array,FPGA)资源中的至少一种。
可选地,在本申请实施例中,可以获取至少两个染色体区域各自的用于资源分配的参数值的平均值;根据该目标染色体区域的用于资源分配的参数值,以及该至少两个染色体区域各自的用于资源分配的参数值的平均值,获得该目标染色体区域的用于资源分配的参数值相对至少两个染色体区域各自的用于资源分配的参数值的平均值的偏斜;根据该偏斜,为该操作分配计算资源。
在本申请实施例中,上述偏斜可以通过目标染色体区域的用于资源分配的参数值与至少两个染色体区域各自的用于资源分配的参数值的平均值的比值来确定,并根据该偏斜进行计算资源的分配。
其中,目标染色体区域的用于资源分配的参数值与至少两个染色体区域各自的用于资源分配的参数值的平均值的比值,可以是指将目标染色体区域的用于资源分配的参数值除以至少两个染色体区域各自的用于资源分配的参数值的平均值得到的值。此时,为目标染色体区域分配的资源的数量值可以与该比值正相关。
或者,目标染色体区域的用于资源分配的参数值与至少两个染色体区域各自的用于资源分配的参数值的平均值的比值,可以是将至少两个染色体区域各自的用于资源分配的参数值的平均值除以目标染色体区域的用于资源分配的参数值得到的值。此时,为目标染色体区域分配的资源的数量值可以与该比值负相关。
可选地,上述平均值可以指算数平均值或加权平均值。
在一种实现方式中,该目标染色体区域的用于资源分配的参数包括该目标染色体区域中的已定序读串的数量;则可以根据该目标染色体区域中的已定序读串的数量值与至少两个染色体区域的各自的已定序读串的数量值的算数平均值的比值,分配计算资源。
在本申请实施例中,目标染色体区域的已定序读串的数量值对至少两个染色体区域的各自的已定序读串的数量值的算术平均值的偏斜,可以通过目标染色体区域的输入文件大小对多个染色体区域的平均输入文件大小的偏斜来确定。
在另一种实现方式中,该目标染色体区域的用于资源分配的参数包括该目标染色体区域中的位点的平均覆盖深度;则可以根据该目标染色体区域中的位点的平均覆盖深度值与至少两个染色体区域的各自的位点的平均覆盖深度值的算术平均值的比值,分配计算资源。
在另一种实现方式中,该目标染色体区域的用于资源分配的参数包括目标片段的数量;可以按照与目标染色体区域相同的目标片段划分原则,对至少两个染色体区域中的非目标染色体区域进行目标片段的划分,确定该至少两个染色体区域各自具有的目标片段的数量值的算术平均值;则可以根据目标染色体区域的目标片段的数量值与至少两个染色体区域的各自具有的目标片段的数量值的算术平均值的比值,分配计算资源。
在另一种实现方式中,该目标染色体区域的用于资源分配的参数包括目标片段的长度;可以按照与目标染色体区域相同的目标片段划分原则,对至少两个染色体区域中的非目标染色体区域进行目标片段的划分,确定每个染色体区域的目标片段的总长度值;则可以根据目标染色体区域的目标片段的总长度值与至少两个染色体区域的各自具有的目标片段的总长度值的算术平均值的比值,分配计算资源。
在另一种实现方式中,该目标染色体区域的用于资源分配的参数包括目标片段中已定序读串的数量;可以按照与目标染色体区域相同的目标片段划分原则,对至少两个染色体区域中的非目标染色体区域进行目标片段的划分,确定每个染色体区域的目标片段中所具有的读串的总量;则可以根据目标染色体区域的目标片段的已定序读串的总量与至少两个染色体区域的各自具有的目标片段的已定序读串的总量的算术平均值的比值,分配计算资源。
在另一种实现方式中,该目标染色体区域的用于资源分配的参数包括目标片段中的位点的平均覆盖深度,则可以计算该目标染色体区域的所有目标片段中的位点的平均覆盖深度值;以及,按照与目标染色体区域相同的目标片段划分原则,对至少两个染色体区域中的非目标染色体区域进行目标片段的划分,确定至少两个染色体区域中的非目标染色体区域的每个染色体区域所具有的所有目标片段的位点的平均覆盖深度值;则可以根据目标染色体区域的所有目标片段的位点的平均覆盖深度值与至少两个染色体区域的各自具有的目标片段的位点的平均覆盖深度的算术平均值的比值,分配计算资源。
在另一种实现方式中,目标染色体区域的用于资源分配的参数包括目标染色体区域的目标片段的覆盖深度值的加权平均值;则可以根据目标染色体区域的目标片段的覆盖深度值的加权平均值与至少两个染色体区域各自的覆盖深度值的加权平均值的比值,来分配计算资源,所述染色体区域的覆盖深度包括所述染色体区域的至少两个片段的各自的位点的覆盖深度值的加权平均值,或包括所述染色体区域的位点的平均覆盖深度。
可选地,所述至少两个染色体区域中的非目标染色体区域中的片段可以按照与目标染色体区域进行目标片段的划分相同的方式来划分片段。
可选地,非目标染色体区域的至少两个片段的加权覆盖深度值也可以以至少两个片段中每个片段的长度值对该至少两个片段的总长度值的比值,作为权值计算得到。
可选地,至少两个染色体区域各自的覆盖深度值的加权平均值可以以至少两个染色体区域中每个染色体区域的长度值与至少两个染色体区域的长度总值的比值,作为权值计算得到。
应理解,在本申请实施例中,也可以根据目标染色体区域的用于资源分配的参数值与至少两个染色体区域的各自的用于资源分配的参数值的平均值之差或其他方式来确定偏斜,只要能反映出目标染色体区域的用于资源分配的参数值与至少两个染色体区域的各自的用于资源分配的参数值的平均值的偏离程度即可。
还应理解,不仅可以根据目标染色体区域的用于资源分配的参数值对至少两个染色体区域各自的用于资源分配的参数值的平均值的偏斜,来进行资源的分配,还可以通过其他方式进行计算资源的分配。例如,根据标染色体区域的用于资源分配的参数值来进行资源的分配,而不考虑至少两个染色体区域各自的用于资源分配的参数值的平均值。例如,假设目标染色体区域具有100个已定序读串,则可以确定每个已定序读串所需的计算资源,并从而确定100个已定序读串所需的资源。例如,目标染色体区域中的位点的覆盖深度值和所需计算资源的数量值具有一定的函数关系,可以根据该函数关系,进行资源的分配,其中,在该函数关系中,覆盖深度值与计算资源的数量值呈正相关。
还应理解,虽然上述举例时,是根据一种参数来进行资源的分配的,本申请实施例可以同时考虑多个参数进行资源的分配,例如,同时考虑目标染色体区域中的位点的平均覆盖深度和目标染色体区域中的目标片段中的位点的平均覆盖深度等。
在本申请实施例中,对用于实现已定序读串的整理和变异识别任务中的至少一种操作的初始计算资源进行调整,以得到用于该操作的计算资源。
具体地,可以对已定序读串的整理和变异识别任务中的至少一种操作预先分配资源,然后根据目标染色体区域的用于资源分配的参数值,对该预先分配的资源进行调整。
或者在本申请实施例中,可以不对已定序读串的整理和变异识别任务中的操作预先分配资源,可以直接根据目标染色体区域的用于资源分配的参数值,进行资源的分配。
在本申请实施例中,在进行资源分配时,如果确定某一任务所需的计算资源较多,可以将预分配给所需计算量较少的任务的一部分资源,重新分配给所需计算资源较多的任务。或者,可以不改变预分配给所需计算资源较少的任务的计算资源,而是将其他计算资源(还未被预分配的备用计算资源)分配给所需的计算资源较多的任务。
在本申请实施例中,在进行已定序读串的整理和变异识别任务之前,可以根据一种或多种上述用于资源分配的参数值,进行资源的分配,然后进行已定序读串的整理和变异识别任务的所有操作。在此种情况下,可以简化实现资源分配。
例如,如图3所示,在经过回贴处理之后以及在数据整理之前,可以进行参数统计,也即,确定用于资源分配的参数值;将该参数值发送给偏斜调度器;偏斜调度器根据该参数值,确定资源分配计划,然后将该资源分配资源通知给任务调度器;该任务调度器通知相应的任务执行模块利用更新后的任务资源进行数据整理,以及通知相应的任务执行模块利用更新后的任务资源进行变异识别。
资源管理器负责可以跟踪系统计算资源使用情况,包括CPU核、内存、GPU和FPGA等,各个操作必须先获取资源配额才能启动执行,资源管理器可以优先按照资源分配装置的资源分配计划进行资源分配,必要时可超负载分配资源,在可用资源不足时及时启动偏斜步骤。
或者,可以在已定序读串的整理和变异识别任务的某一操作之前,均进行资源的分配,具体采用哪种参数,可以根据对应的操作,例如,去重操作、过滤操作、局部重排操作和碱基质量分数校正操作与染色体区域的已定序读串的数量相关性更大,以及变异识别操作与目标片段的覆盖深度值的加权平均值的相关性更大,则可以在进行相应操作之前,根据相关性较大的参数值,来对该操作进行资源的分配。在此种情况下,可以实现资源的精确分配。
例如,如图4所示,在经过回贴处理之后在进行每个操作之前,例如,去重操作,局部重排操作(未示出)、变异识别操作等,进行参数统计(也即,确定目标染色体区域的用于资源分配的参数值),然后偏斜调度器根据该目标染色体区域的用于资源分配的参数值,确定资源分配计划,然后将该资源分配计划通知给任务调度器,由该任务调度器对化简任务进行资源的分配。
应理解,虽然图3和图4示出的是对任务资源的更新,也即已经存在预配置的资源分配,但是本申请实施例并不限于此,本申请实施例可以不存在预配置的资源分配,直接目标染色体区域的用于资源分配的参数值进行资源的分配。
可选地,在本申请实施例中,在已存在预先配置的计算资源,可以按照以下计算方式更新资源分配计划:
R-update=R+[t×(x-region/x-average-1)×P]=
<r-cpu_cores+[t×(x-region/x-average-1)×p-cpu_cores],
r-mem+[t×(x-region/x-average-1)×p-mem],
r-gpu+[t×(x-region/x-average-1)×p-gpu],
r-fpga+[t×(x-region/x-average-1)×p-fpga]>,
其中,x-region为目标染色体区域的用于资源分配的参数值,x-average为至少两个染色体区域的用于资源分配的参数值的平均值;R<r-cpu_cores,r-mem,r-gpu,r-fpga>为已定序读串的整理与变异识别任务的某一个或多个操作的基础资源分配计划,用于分别描述预先分配的执行该一个或多个操作所需的CPU核、内存、GPU和FPGA资源;P<p-cpu_cores,p-mem,p-gpu,p-fpga>描述该一个或多个操作的资源分配调整单元;t为调节参数;[]为取整运算符。
为了更加清楚地理解本发明,以下将结合几种具体参数,描述如何结合目标染色体区域的用于资源分配的参数值进行资源的分配。
例如,目标染色体区域的用于资源分配的参数为目标染色体区域的已定序读串的数量;则可以获取至少两个染色体区域各自的已定序读串的数量值的平均值,可选地,该至少两个染色体区域包括该目标染色体区域;根据该目标染色体区域的已定序读串的数量值与该平均值的比值,为该目标染色体区域的已定序读串的整理与变异识别任务中的至少一种操作分配计算资源。
其中,更新资源分配计划的一种计算方法为:
R-update=R+[t×(c-region/c-average-1)×P]=
<r-cpu_cores+[t×(c-region/c-average-1)×p-cpu_cores],
r-mem+[t×(c-region/c-average-1)×p-mem],
r-gpu+[t×(c-region/c-average-1)×p-gpu],
r-fpga+[t×(c-region/c-average-1)×p-fpga]>,
其中,c-region为目标染色体区域的已定序读串的数量值,c-average为至少两个染色体区域各自的已定序读串的数量值的平均值;R<r-cpu_cores,r-mem,r-gpu,r-fpga>为化简任务的某一个或多个操作的基础资源分配计划,用于分别描述预先分配的执行该一个或多个操作所需的CPU核、内存、GPU和FPGA资源;P<p-cpu_cores,p-mem,p-gpu,p-fpga>描述该一个或多个操作的资源分配调整单元;t为调节参数;[]为取整运算符。
其中,由于去重操作、过滤操作、局部重排和碱基质量分数校正操作与染色体区域的读串数量的相关性较大,则可以在该去重操作、过滤操作、局部重排和碱基质量分数校正操作中每个操作之前,均根据染色体区域的经过前置处理的已定序读串的数量值,进行资源分配,或者仅在去重操作之前根据染色体区域的已定序读串的数量值进行资源分配。
再例如,用于目标染色体区域的资源分配的参数为包括该目标染色体区域的目标片段的覆盖深度值的加权平均值;则还需要获取至少两个染色体区域各自的覆盖深度值的加权平均值;根据该目标染色体区域的目标片段的覆盖深度值的加权平均值与至少两个染色体区域各自的覆盖深度值的加权平均值的比值,为该目标染色体区域的已定序读串的整理和变异识别任务的至少一种操作分配计算资源。其中,染色体区域的覆盖深度可以包括所述染色体区域的至少两个片段各自的位点的覆盖深度值的加权平均值,或包括所述染色体区域的位点的平均覆盖深度。
更新资源分配计划的一种计算方法为:
R-update=R+[t×(d-region/d-average-1)×P]=
<r-cpu_cores+[t×(d-region/d-average-1)×p-cpu_cores],
r-mem+[t×(d-region/d-average-1)×p-mem],
r-gpu+[t×(d-region/d-average-1)×p-gpu],
r-fpga+[t×(d-region/d-average-1)×p-fpga]>
其中,d-region为目标染色体区域的目标片段的覆盖深度值的加权平均值,d-average为至少两个染色体区域的各自的覆盖深度值的加权平均值;R<r-cpu_cores,r-mem,r-gpu,r-fpga>为已定序读串的整理与变异识别任务的某一个或多个操作的基础资源分配计划,用于分别描述预先分配的执行该一个或多个操作所需的CPU核、内存、GPU和FPGA资源;P<p-cpu_cores,p-mem,p-gpu,p-fpga>描述该一个或多个操作的资源分配调整单元;t为调节参数;[]为取整运算符。
由于变异识别操作与目标片段的覆盖深度值的加权平均值相关性较大,因此可以在变异识别操作之前,根据染色体区域的经过前置处理的已定序读串的数量值,确定目标片段以及确定目标片段的覆盖深度值的加权平均值,并进行资源分配。
应理解,上述c-average、d-average可通过各化简任务提交的染色体区域统计结果实时计算得出,也可在化简任务启动前,根据回贴输出的定序读串总数和划分的染色体区域信息提前计算得出。
因此,在本申请实施例中,通过根据染色体区域的已定序读串,判断各染色体区域分析任务的计算量差异,引导调度系统为复杂分析任务优先分配优势计算资源,提升基因分析作业的整体性能,提升分析系统计算资源利用效率,从整体上降低基因分析作业的时间开销。
图5是根据本申请实施例的用于基因分析的资源分配装置300的示意性框图。如图5所示,该装置包括获取单元310和分配单元320。其中,获取单元310,用于根据目标染色体区域中的已定序读串,获得该目标染色体区域的用于资源分配的参数值;分配单元320,用于根据该目标染色体区域的用于资源分配的参数值,为基因分析中针对该目标染色体区域中的已定序读串的整理与异变识别任务中的操作分配计算资源。
可选地,该目标染色体区域的用于资源分配的参数包括:该目标染色体区域中的已定序读串的数量和该目标染色体区域中的位点的平均覆盖深度的至少一种。
可选地,该获取单元用于:根据覆盖在该目标染色体区域中的位点上的已定序读串的数量值,获得该目标染色体区域中位点的覆盖深度值;根据该目标染色体区域中位点的覆盖深度值,确定该目标染色体区域中的间隙,从而得到以该间隙为间隔的该目标染色体区域的至少两个片段,其中,该间隙中位点的覆盖深度值低于第一阈值,该间隙为该目标染色体区域的片段或位点,该至少两个片段不包括该间隙;
将该目标染色体区域的该至少两个片段中的全部或部分片段确定为目标片段;将该目标片段的数量、该目标片段的长度、该目标片段中的已定序读串的数量和该目标片段的覆盖深度中的至少一种,作为该目标染色体区域的用于资源分配的参数;获得该目标染色体区域的用于资源分配的参数值。
可选地,该获取单元310用于:根据覆盖在该目标染色体区域中的位点上的已定序读串的数量值,获得该目标染色体区域中位点的覆盖深度值;根据该目标染色体区域中位点的覆盖深度值,确定该目标染色体区域中的间隙,从而获得以该间隙为间隔的该目标染色体区域的至少两个片段,其中,该间隙中位点的覆盖深度值低于第一阈值,该间隙为该目标染色体区域的片段或位点,该至少两个片段不包括该间隙;将该目标染色体区域的该至少两个片段中的全部或部分片段确定为目标片段,该目标片段的数量为至少两个;将该目标片段的覆盖深度值的加权平均值,作为该目标染色体区域的用于资源分配的参数,该目标片段的覆盖深度为该目标片段中位点的平均覆盖深度;获得该目标染色体区域的用于资源分配的参数值。
可选地,该获取单元310用于:将该目标染色体区域的至少两个片段中已定序读串的数量满足预设的数量要求的片段,和该目标染色体区域的至少两个片段中位点的平均覆盖深度满足预设的覆盖深度要求的片段中至少一种,作为该目标片段。
可选地,该获取单元310用于:将该目标片段的长度值与该目标染色体区域的长度值的比值,作为该目标片段的覆盖深度值的权值,计算该目标片段的覆盖深度值的加权平均值。
可选地,该获取单元310还用于:获取至少两个染色体区域各自的用于资源分配的参数值的平均值;该分配单元320用于:根据该获取单元310获取的目标染色体区域的用于资源分配的参数值,以及该获取单元310获取的至少两个染色体区域各自的用于资源分配的参数值的平均值,获得该目标染色体区域的用于资源分配的参数值相对至少两个染色体区域各自的用于资源分配的参数值的平均值的偏斜;根据该偏斜,为该操作分配计算资源。
可选地,该至少两个染色体区域包括该目标染色体区域。
可选地,该偏斜包括:该目标片段的覆盖深度值的加权平均值与该至少两个染色体区域各自的覆盖深度值的加权平均值的比值,该染色体区域的覆盖深度包括该染色体区域的至少两个片段各自的位点的覆盖深度值的加权平均值,或包括该染色体区域的位点的平均覆盖深度。
可选地,该偏斜包括:该目标染色体区域的已定序读串的数量值与该至少两个染色体区域各自的已定序读串的数量值的算数平均值的比值。
可选地,该分配单元320用于:根据该偏斜,对用于实现该操作的初始计算资源进行调整,以得到该计算资源。
应理解,根据本发明实施例的装置300可以实现图2所示的方法实施例或其他可选实施例(例如,如图3或图4所示)的相应流程,为了简洁,在此不再赘述。
图6是根据本申请实施例的用于基因分析作业的资源分配装置400的示意性框图。
如图6所示,该装置400包括处理器410和存储器420。存储器420,用于存放程序指令。处理器410可以调用存储器420中存放的程序指令,可以执行图2所示实施例中的一个或多个步骤,或方法实施例中的其他可选的实施方式。
具体地,处理器410可以调用存储器420中存放的程序指令,执行以下处理:根据目标染色体区域中的已定序读串,获得该目标染色体区域的用于资源分配的参数值;根据该目标染色体区域的用于资源分配的参数值,为基因分析中针对该目标染色体区域中的已定序读串的整理与异变识别任务中的操作分配计算资源。
可选地,该目标染色体区域的用于资源分配的参数包括:该目标染色体区域中的已定序读串的数量和该目标染色体区域中的位点的平均覆盖深度的至少一种。
可选地,处理器410可以调用存储器420中存放的程序指令,执行以下处理:根据覆盖在该目标染色体区域中的位点上的已定序读串的数量值,获得该目标染色体区域中位点的覆盖深度值;根据该目标染色体区域中位点的覆盖深度值,确定该目标染色体区域中的间隙,从而得到以该间隙为间隔的该目标染色体区域的至少两个片段,其中,该间隙中位点的覆盖深度值低于第一阈值,该间隙为该目标染色体区域的片段或位点,该至少两个片段不包括该间隙;将该目标染色体区域的该至少两个片段中的全部或部分片段确定为目标片段;将该目标片段的数量、该目标片段的长度、该目标片段中的已定序读串的数量和该目标片段的覆盖深度中的至少一种,作为该目标染色体区域的用于资源分配的参数;获得该目标染色体区域的用于资源分配的参数值。
可选地,具体地,处理器410可以调用存储器420中存放的程序指令,执行以下处理:根据覆盖在该目标染色体区域中的位点上的已定序读串的数量值,获得该目标染色体区域中位点的覆盖深度值;根据该目标染色体区域中位点的覆盖深度值,确定该目标染色体区域中的间隙,从而获得以该间隙为间隔的该目标染色体区域的至少两个片段,其中,该间隙中位点的覆盖深度值低于第一阈值,该间隙为该目标染色体区域的片段或位点,该至少两个片段不包括该间隙;将该目标染色体区域的该至少两个片段中的全部或部分片段确定为目标片段,该目标片段的数量为至少两个;将该目标片段的覆盖深度值的加权平均值,作为该目标染色体区域的用于资源分配的参数,该目标片段的覆盖深度为该目标片段中位点的平均覆盖深度;获得该目标染色体区域的用于资源分配的参数值。
可选地,处理器410可以调用存储器420中存放的程序指令,执行以下处理:将该目标染色体区域的至少两个片段中已定序读串的数量满足预设的数量要求的片段,和该目标染色体区域的至少两个片段中位点的平均覆盖深度满足预设的覆盖深度要求的片段中至少一种,作为该目标片段。
可选地,处理器410可以调用存储器420中存放的程序指令,执行以下处理:将该目标片段的长度值与该目标染色体区域的长度值的比值,作为该目标片段的覆盖深度值的权值,计算该目标片段的覆盖深度值的加权平均值。
可选地,处理器410可以调用存储器420中存放的程序指令,执行以下处理:获取至少两个染色体区域各自的用于资源分配的参数值的平均值;根据该目标染色体区域的用于资源分配的参数值,以及该至少两个染色体区域各自的用于资源分配的参数值的平均值,获得该目标染色体区域的用于资源分配的参数值相对至少两个染色体区域各自的用于资源分配的参数值的平均值的偏斜;根据该偏斜,为该操作分配计算资源。
可选地,该至少两个染色体区域包括该目标染色体区域。
可选地,该偏斜包括:该目标片段的覆盖深度值的加权平均值与该至少两个染色体区域各自的覆盖深度值的加权平均值的比值,该染色体区域的覆盖深度包括该染色体区域的至少两个片段各自的位点的覆盖深度值的加权平均值,或包括该染色体区域的位点的平均覆盖深度。
可选地,该偏斜包括:该目标染色体区域的已定序读串的数量值与该至少两个染色体区域各自的已定序读串的数量值的算数平均值的比值。
可选地,处理器410可以调用存储器420中存放的程序指令,执行以下处理:根据该偏斜,对用于实现该操作的初始计算资源进行调整,以得到该计算资源。
可选地,如图6所示,装置400还可以包括总线系统430,处理器410、和存储器420通过总线系统430相连。处理器410和存储器420也可以通过其他方式相连,例如:直接连接。
可选地,如图6所示,装置400还包括接收器440,用于与其他装置进行数据的收发,例如,接收其他装置发送的已定序读串,从而处理器可以基于该已定序读串,获取用于目标染色体区域的用于资源分配的参数值。
在本申请实施例中,处理器410可以是中央处理器(central processing unit,CPU),网络处理器(network processor,NP)或者CPU和NP的组合。处理器410还可以进一步包括硬件芯片。上述硬件芯片可以是专用集成电路(application-specific integratedcircuit,ASIC),可编程逻辑器件(programmable logic device,PLD)或其组合。上述PLD可以是复杂可编程逻辑器件(complex programmable logic device,CPLD),现场可编程逻辑门阵列(field-programmable gate array,FPGA),通用阵列逻辑(generic array logic,GAL)或其任意组合。
该总线系统430除包括数据总线之外,还可以包括电源总线、控制总线和状态信号总线等。为便于表示,图中仅用一条粗线表示总线系统430,但并不表示仅有一根总线或一种类型的总线。
应理解,根据本发明实施例的装置400可以实现图2所示的方法实施例或其他可选实施例的相应流程,为了简洁,在此不再赘述。
本领域普通技术人员可以意识到,结合本文中所公开的实施例描述的各示例的单元及算法步骤,能够以电子硬件、或者计算机软件和电子硬件的结合来实现。这些功能究竟以硬件还是软件方式来执行,取决于技术方案的特定应用和设计约束条件。专业技术人员可以对每个特定的应用来使用不同方法来实现所描述的功能,但是这种实现不应认为超出本发明的范围。
所属领域的技术人员可以清楚地了解到,为描述的方便和简洁,上述描述的系统、装置和单元的具体工作过程,可以参考前述方法实施例中的对应过程,在此不再赘述。
在本申请所提供的几个实施例中,应该理解到,所揭露的系统、装置和方法,可以通过其它的方式实现。例如,以上所描述的装置实施例仅仅是示意性的,例如,所述单元的划分,仅仅为一种逻辑功能划分,实际实现时可以有另外的划分方式,例如多个单元或组件可以结合或者可以集成到另一个系统,或一些特征可以忽略,或不执行。另一点,所显示或讨论的相互之间的耦合或直接耦合或通信连接可以是通过一些接口,装置或单元的间接耦合或通信连接,可以是电性,机械或其它的形式。
所述作为分离部件说明的单元可以是或者也可以不是物理上分开的,作为单元显示的部件可以是或者也可以不是物理单元,即可以位于一个地方,或者也可以分布到多个网络单元上。可以根据实际的需要选择其中的部分或者全部单元来实现本实施例方案的目的。
另外,在本发明各个实施例中的各功能单元可以集成在一个处理单元中,也可以是各个单元单独物理存在,也可以两个或两个以上单元集成在一个单元中。
所述功能如果以软件功能单元的形式实现并作为独立的产品销售或使用时,可以存储在一个计算机可读取存储介质中。基于这样的理解,本发明的技术方案本质上或者说对现有技术做出贡献的部分或者该技术方案的部分可以以软件产品的形式体现出来,该计算机软件产品存储在一个存储介质中,包括若干指令用以使得一台计算机设备(可以是个人计算机,服务器,或者网络设备等)执行本发明各个实施例所述方法的全部或部分步骤。而前述的存储介质包括:U盘、移动硬盘、只读存储器(ROM,Read-Only Memory)、随机存取存储器(RAM,Random Access Memory)、磁碟或者光盘等各种可以存储程序代码的介质。
以上所述,仅为本发明的具体实施方式,但本发明的保护范围并不局限于此,任何熟悉本技术领域的技术人员在本发明揭露的技术范围内,可轻易想到变化或替换,都应涵盖在本发明的保护范围之内。因此,本发明的保护范围应以所述权利要求的保护范围为准。
Claims (22)
1.一种用于基因分析的资源分配方法,其特征在于,包括:
根据覆盖在目标染色体区域中的位点上的已定序读串的数量值,获得所述目标染色体区域中位点的覆盖深度值;
根据所述目标染色体区域中位点的覆盖深度值,确定所述目标染色体区域中的间隙,从而得到以所述间隙为间隔的所述目标染色体区域的至少两个片段,其中,所述间隙中位点的覆盖深度值低于第一阈值,所述间隙为所述目标染色体区域的片段或位点,所述目标染色体区域的至少两个片段不包括所述间隙;
将所述目标染色体区域的至少两个片段中的全部或部分片段确定为目标片段;
根据所述目标片段获得所述目标染色体区域的用于资源分配的参数值;
根据所述目标染色体区域的用于资源分配的参数值,为基因分析中针对所述目标染色体区域中的已定序读串的整理与异变识别任务中的操作分配计算资源。
2.根据权利要求1所述的方法,其特征在于,所述目标染色体区域的用于资源分配的参数包括:
所述目标染色体区域中的已定序读串的数量和所述目标染色体区域中的位点的平均覆盖深度的至少一种。
3.根据权利要求1所述的方法,其特征在于,所述根据所述目标片段获得所述目标染色体区域的用于资源分配的参数值,包括:将所述目标片段的数量、所述目标片段的长度、所述目标片段中的已定序读串的数量和所述目标片段的覆盖深度中的至少一种,作为所述目标染色体区域的用于资源分配的参数值,所述目标片段的覆盖深度为所述目标片段中位点的平均覆盖深度。
4.根据权利要求1所述的方法,其特征在于,所述根据所述目标片段获得所述目标染色体区域的用于资源分配的参数值,包括:
所述目标片段的数量为至少两个,将所述目标片段的覆盖深度值的加权平均值,作为所述目标染色体区域的用于资源分配的参数值,所述目标片段的覆盖深度为所述目标片段中位点的平均覆盖深度。
5.根据权利要求1所述的方法,其特征在于,所述将所述目标染色体区域的至少两个片段中的全部或部分片段确定为所述目标片段,包括:
将所述目标染色体区域的至少两个片段中已定序读串的数量满足预设的数量要求的片段,和所述目标染色体区域的至少两个片段中位点的平均覆盖深度满足预设的覆盖深度要求的片段中至少一种,作为所述目标片段。
6.根据权利要求1所述的方法,其特征在于,所述根据所述目标片段获取所述目标染色体区域的用于资源分配的参数值,包括:
将所述目标片段中一个目标片段的长度值与所述目标染色体区域的长度值的比值,作为所述一个目标片段的覆盖深度值的权值,计算所述目标片段的覆盖深度值的加权平均值。
7.根据权利要求1至6中任一项所述的方法,其特征在于,所述根据所述目标染色体区域的用于资源分配的参数值,为基因分析中针对所述目标染色体区域中的已定序读串的整理与变异识别任务中的操作分配计算资源,包括:
获取至少两个染色体区域各自的用于资源分配的参数值的平均值;
根据所述目标染色体区域的用于资源分配的参数值,以及所述至少两个染色体区域各自的用于资源分配的参数值的平均值,获得所述目标染色体区域的用于资源分配的参数值相对至少两个染色体区域各自的用于资源分配的参数值的平均值的偏斜;
根据所述偏斜,为所述操作分配计算资源。
8.根据权利要求7所述的方法,其特征在于,所述至少两个染色体区域包括所述目标染色体区域。
9.根据权利要求7所述的方法,其特征在于,所述偏斜包括:
所述目标片段的覆盖深度值的加权平均值与所述至少两个染色体区域各自的覆盖深度值的加权平均值的比值,所述染色体区域的覆盖深度包括所述染色体区域的至少两个片段各自的位点的覆盖深度值的加权平均值,或包括所述染色体区域的位点的平均覆盖深度。
10.根据权利要求7所述的方法,其特征在于,所述偏斜包括:
所述目标染色体区域的已定序读串的数量值与所述至少两个染色体区域各自的已定序读串的数量值的算术平均值的比值。
11.根据权利要求7所述的方法,其特征在于,所述根据所述偏斜,为所述操作分配计算资源,包括:
根据所述偏斜,对用于实现所述操作的初始计算资源进行调整,以得到所述计算资源。
12.一种用于基因分析的资源分配装置,其特征在于,包括:
获取单元,用于根据覆盖在所述目标染色体区域中的位点上的已定序读串的数量值,获得所述目标染色体区域中位点的覆盖深度值;
所述获取单元还用于,根据所述目标染色体区域中位点的覆盖深度值,确定所述目标染色体区域中的间隙,从而得到以所述间隙为间隔的所述目标染色体区域的至少两个片段,其中,所述间隙中位点的覆盖深度值低于第一阈值,所述间隙为所述目标染色体区域的片段或位点,所述目标染色体区域的至少两个片段不包括所述间隙;
所述获取单元还用于,将所述目标染色体区域的至少两个片段中的全部或部分片段确定为目标片段;
所述获取单元还用于,根据所述目标片段获得所述目标染色体区域的用于资源分配的参数值;
分配单元,用于根据所述获取单元获得的所述目标染色体区域的用于资源分配的参数值,为基因分析中针对所述目标染色体区域中的已定序读串的整理与异变识别任务中的操作分配计算资源。
13.根据权利要求12所述的装置,其特征在于,所述目标染色体区域的用于资源分配的参数包括:
所述目标染色体区域中的已定序读串的数量和所述目标染色体区域中的位点的平均覆盖深度的至少一种。
14.根据权利要求12所述的装置,其特征在于,所述获取单元用于根据所述目标片段获得所述目标染色体区域的用于资源分配的参数值,包括:
所述获取单元用于将所述目标片段的数量、所述目标片段的长度、所述目标片段中的已定序读串的数量和所述目标片段的覆盖深度中的至少一种,作为所述目标染色体区域的用于资源分配的参数值,所述目标片段的覆盖深度为所述目标片段中位点的平均覆盖深度。
15.根据权利要求12所述的装置,其特征在于,所述获取单元用于根据所述目标片段获得所述目标染色体区域的用于资源分配的参数值,包括:
所述目标片段的数量为至少两个,所述获取单元用于将所述目标片段的覆盖深度值的加权平均值,作为所述目标染色体区域的用于资源分配的参数值,所述目标片段的覆盖深度为所述目标片段中位点的平均覆盖深度。
16.根据权利要求12所述的装置,其特征在于,所述获取单元用于:
将所述目标染色体区域的至少两个片段中已定序读串的数量满足预设的数量要求的片段,和所述目标染色体区域的至少两个片段中位点的平均覆盖深度满足预设的覆盖深度要求的片段中至少一种,作为所述目标片段。
17.根据权利要求12所述的装置,其特征在于,所述获取单元用于:
将所述目标片段中一个目标片段的长度值与所述目标染色体区域的长度值的比值,作为所述一个目标片段的覆盖深度值的权值,计算所述目标片段的覆盖深度值的加权平均值。
18.根据权利要求12至17中任一项所述的装置,其特征在于,
所述获取单元还用于:获取至少两个染色体区域各自的用于资源分配的参数值的平均值;
所述分配单元用于:根据所述获取单元获得的所述目标染色体区域的用于资源分配的参数值,以及所述获取单元获得的所述至少两个染色体区域各自的用于资源分配的参数值的平均值,获得所述目标染色体区域的用于资源分配的参数值相对至少两个染色体区域各自的用于资源分配的参数值的平均值的偏斜;
根据所述偏斜,为所述操作分配计算资源。
19.根据权利要求18所述的装置,其特征在于,所述至少两个染色体区域包括所述目标染色体区域。
20.根据权利要求18所述的装置,其特征在于,所述偏斜包括:
所述目标片段的覆盖深度值的加权平均值与所述至少两个染色体区域各自的覆盖深度值的加权平均值的比值,所述染色体区域的覆盖深度包括所述染色体区域的至少两个片段各自的位点的覆盖深度值的加权平均值,或包括所述染色体区域的位点的平均覆盖深度。
21.根据权利要求18所述的装置,其特征在于,所述偏斜包括:
所述目标染色体区域的已定序读串的数量值与所述至少两个染色体区域各自的已定序读串的数量值的算数平均值的比值。
22.根据权利要求18所述的装置,其特征在于,所述分配单元用于:
根据所述偏斜,对用于实现所述操作的初始计算资源进行调整,以得到所述计算资源。
Priority Applications (4)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201610219164.2A CN107273204B (zh) | 2016-04-08 | 2016-04-08 | 用于基因分析的资源分配方法和装置 |
EP17778632.4A EP3428798B1 (en) | 2016-04-08 | 2017-04-01 | Resource allocation method and device for genetic analysis |
PCT/CN2017/079306 WO2017173968A1 (zh) | 2016-04-08 | 2017-04-01 | 用于基因分析的资源分配方法和装置 |
US16/153,099 US10853135B2 (en) | 2016-04-08 | 2018-10-05 | Resource allocation method and apparatus for gene analysis |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201610219164.2A CN107273204B (zh) | 2016-04-08 | 2016-04-08 | 用于基因分析的资源分配方法和装置 |
Publications (2)
Publication Number | Publication Date |
---|---|
CN107273204A CN107273204A (zh) | 2017-10-20 |
CN107273204B true CN107273204B (zh) | 2020-10-09 |
Family
ID=60000865
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN201610219164.2A Active CN107273204B (zh) | 2016-04-08 | 2016-04-08 | 用于基因分析的资源分配方法和装置 |
Country Status (4)
Country | Link |
---|---|
US (1) | US10853135B2 (zh) |
EP (1) | EP3428798B1 (zh) |
CN (1) | CN107273204B (zh) |
WO (1) | WO2017173968A1 (zh) |
Families Citing this family (7)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN108229103B (zh) * | 2018-01-15 | 2020-12-25 | 无锡臻和生物科技有限公司 | 循环肿瘤dna重复序列的处理方法及装置 |
CN109616154A (zh) * | 2018-12-27 | 2019-04-12 | 北京优迅医学检验实验室有限公司 | 测序深度的矫正方法及装置 |
CN111584011B (zh) * | 2020-04-10 | 2023-08-29 | 中国科学院计算技术研究所 | 面向基因比对的细粒度并行负载特征抽取分析方法及系统 |
CN112259168B (zh) * | 2020-10-22 | 2023-03-28 | 深圳华大基因科技服务有限公司 | 基因测序数据处理方法和基因测序数据处理装置 |
CN112233727B (zh) * | 2020-10-29 | 2024-01-26 | 北京诺禾致源科技股份有限公司 | 数据分区存储方法及装置 |
CN112486961A (zh) * | 2020-11-18 | 2021-03-12 | 广西电网有限责任公司电力科学研究院 | 一种大数据实时处理的方法及处理装置 |
WO2023250149A1 (en) * | 2022-06-24 | 2023-12-28 | Illumina, Inc. | Variant calling of high coverage samples with a restricted memory |
Citations (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN101608233A (zh) * | 2009-07-21 | 2009-12-23 | 西安交通大学 | 一种x染色体str基因位点分型的荧光检测方法 |
CN101865843A (zh) * | 2010-05-04 | 2010-10-20 | 中国科学院深圳先进技术研究院 | 多组分生物标识物的检测设备和方法 |
CN104244426A (zh) * | 2013-06-09 | 2014-12-24 | 华为技术有限公司 | 一种数据无线承载drb的资源分配方法及装置 |
Family Cites Families (12)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
AU2002350131A1 (en) * | 2001-11-09 | 2003-05-26 | Gene Logic Inc. | System and method for storage and analysis of gene expression data |
CN101118611A (zh) * | 2007-09-07 | 2008-02-06 | 北京航空航天大学 | 基于遗传算法的业务过程模型资源配置优化方法 |
CN101930502B (zh) * | 2010-09-03 | 2011-12-21 | 深圳华大基因科技有限公司 | 表型基因的检测及生物信息分析的方法及系统 |
WO2012034030A1 (en) * | 2010-09-09 | 2012-03-15 | Omicia, Inc. | Variant annotation, analysis and selection tool |
US11031097B2 (en) * | 2013-01-28 | 2021-06-08 | Hasso-Plattner Institut fuer Softwaresystemtechnik GmbH | System for genomic data processing with an in-memory database system and real-time analysis |
US20160048633A1 (en) * | 2013-03-15 | 2016-02-18 | Cypher Genomics, Inc. | Systems and methods for genomic variant annotation |
WO2015171660A1 (en) * | 2014-05-05 | 2015-11-12 | Board Of Regents, The University Of Texas System | Variant annotation, analysis and selection tool |
US20160125130A1 (en) * | 2014-11-05 | 2016-05-05 | Agilent Technologies, Inc. | Method for assigning target-enriched sequence reads to a genomic location |
EP3057007B1 (en) * | 2015-02-13 | 2021-08-11 | Hasso-Plattner-Institut für Softwaresystemtechnik GmbH | Cloud-based hardware architecture |
CN105046109B (zh) | 2015-06-26 | 2018-06-29 | 四川云合创智科技有限公司 | 一种用于生物信息序列分析的加速平台 |
CN105117619A (zh) * | 2015-08-10 | 2015-12-02 | 杨福辉 | 一种全基因组测序数据分析方法 |
WO2018053761A1 (zh) * | 2016-09-22 | 2018-03-29 | 华为技术有限公司 | 一种数据处理方法、装置及计算节点 |
-
2016
- 2016-04-08 CN CN201610219164.2A patent/CN107273204B/zh active Active
-
2017
- 2017-04-01 EP EP17778632.4A patent/EP3428798B1/en active Active
- 2017-04-01 WO PCT/CN2017/079306 patent/WO2017173968A1/zh active Application Filing
-
2018
- 2018-10-05 US US16/153,099 patent/US10853135B2/en active Active
Patent Citations (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN101608233A (zh) * | 2009-07-21 | 2009-12-23 | 西安交通大学 | 一种x染色体str基因位点分型的荧光检测方法 |
CN101865843A (zh) * | 2010-05-04 | 2010-10-20 | 中国科学院深圳先进技术研究院 | 多组分生物标识物的检测设备和方法 |
CN104244426A (zh) * | 2013-06-09 | 2014-12-24 | 华为技术有限公司 | 一种数据无线承载drb的资源分配方法及装置 |
Non-Patent Citations (1)
Title |
---|
Cluster-Based Apache Spark Implementation of the GATK DNA Analysis Pipeline;Hamid mushtaq 等;《2015 IEEE INTERNATIONAL CONFERENCE ON BIOINFORMATICS AND BIOMEDICINE》;20151112;正文第1节 * |
Also Published As
Publication number | Publication date |
---|---|
US20190042311A1 (en) | 2019-02-07 |
EP3428798A1 (en) | 2019-01-16 |
EP3428798B1 (en) | 2020-09-02 |
CN107273204A (zh) | 2017-10-20 |
EP3428798A4 (en) | 2019-04-03 |
WO2017173968A1 (zh) | 2017-10-12 |
US10853135B2 (en) | 2020-12-01 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN107273204B (zh) | 用于基因分析的资源分配方法和装置 | |
US10102038B2 (en) | Data mining method and node | |
EP3540652B1 (en) | Method, device, chip and system for training neural network model | |
Novák et al. | Graph-based clustering and characterization of repetitive sequences in next-generation sequencing data | |
CN108985008B (zh) | 一种快速比对基因数据的方法和比对系统 | |
US8898422B2 (en) | Workload-aware distributed data processing apparatus and method for processing large data based on hardware acceleration | |
CN107102999B (zh) | 关联分析方法和装置 | |
US11403151B2 (en) | Auto-scale performance assurance system and auto-scale performance assurance method | |
CN106407743B (zh) | 一种基于集群的高通量数据分析方法 | |
CN109033439B (zh) | 流式数据的处理方法和装置 | |
US20210089358A1 (en) | Techniques for improving processing of bioinformatics information to decrease processing time | |
CN111176792A (zh) | 一种资源调度方法、装置及相关设备 | |
US20190156916A1 (en) | Data Processing Method and Apparatus, and Computing Node | |
CN110609924A (zh) | 基于图数据的全量关系计算方法、装置、设备及存储介质 | |
CN114911604A (zh) | 资源调度方法、装置和管理设备 | |
CN113222099A (zh) | 卷积运算方法及芯片 | |
WO2018019138A1 (zh) | 一种数据处理的方法和装置 | |
CN110209656A (zh) | 数据处理方法及装置 | |
US20220157414A1 (en) | Method and system for facilitating optimization of a cluster computing network for sequencing data analysis using adaptive data parallelization, and non-transitory storage medium | |
Gomez-Sanchez et al. | Using AWS EC2 as Test-Bed infrastructure in theI/O system configuration for HPC applications | |
Das et al. | Large-scale parallel genome assembler over cloud computing environment | |
CN109801676B (zh) | 一种用于评价化合物对基因通路活化作用的方法及装置 | |
KR101906970B1 (ko) | 분산 처리를 이용한 핵산 서열의 분석 방법 및 장치, 핵산 서열 분석을 위한 분산 처리 시스템 | |
US20210233640A1 (en) | Methods and apparatus for identifying alternative splicing events | |
CN116088663A (zh) | 平衡ssd的功耗与性能的方法、装置、计算机设备及存储介质 |
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 |