CN110168651A - 用于选择性访问存储的或传输的生物信息数据的方法和系统 - Google Patents

用于选择性访问存储的或传输的生物信息数据的方法和系统 Download PDF

Info

Publication number
CN110168651A
CN110168651A CN201780062919.5A CN201780062919A CN110168651A CN 110168651 A CN110168651 A CN 110168651A CN 201780062919 A CN201780062919 A CN 201780062919A CN 110168651 A CN110168651 A CN 110168651A
Authority
CN
China
Prior art keywords
data
class
sequence
mismatch
type
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.)
Pending
Application number
CN201780062919.5A
Other languages
English (en)
Inventor
M·K·巴卢奇
G·佐亚
D·伦齐
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Genome Systems Inc
Genomsys SA
Original Assignee
Genome Systems Inc
Priority date (The priority date 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 date listed.)
Filing date
Publication date
Priority claimed from PCT/EP2016/074301 external-priority patent/WO2018068828A1/en
Priority claimed from PCT/EP2016/074307 external-priority patent/WO2018068829A1/en
Priority claimed from PCT/EP2016/074311 external-priority patent/WO2018068830A1/en
Priority claimed from PCT/EP2016/074297 external-priority patent/WO2018068827A1/en
Application filed by Genome Systems Inc filed Critical Genome Systems Inc
Publication of CN110168651A publication Critical patent/CN110168651A/zh
Pending legal-status Critical Current

Links

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F16/00Information retrieval; Database structures therefor; File system structures therefor
    • G06F16/20Information retrieval; Database structures therefor; File system structures therefor of structured data, e.g. relational data
    • G06F16/22Indexing; Data structures therefor; Storage structures
    • G06F16/2282Tablespace storage structures; Management thereof
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F16/00Information retrieval; Database structures therefor; File system structures therefor
    • G06F16/20Information retrieval; Database structures therefor; File system structures therefor of structured data, e.g. relational data
    • G06F16/23Updating
    • G06F16/2365Ensuring data consistency and integrity
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F16/00Information retrieval; Database structures therefor; File system structures therefor
    • G06F16/20Information retrieval; Database structures therefor; File system structures therefor of structured data, e.g. relational data
    • G06F16/28Databases characterised by their database models, e.g. relational or object models
    • G06F16/284Relational databases
    • G06F16/285Clustering or classification
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F21/00Security arrangements for protecting computers, components thereof, programs or data against unauthorised activity
    • G06F21/60Protecting data
    • G06F21/602Providing cryptographic facilities or services
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F21/00Security arrangements for protecting computers, components thereof, programs or data against unauthorised activity
    • G06F21/60Protecting data
    • G06F21/62Protecting access to data via a platform, e.g. using keys or access control rules
    • G06F21/6218Protecting access to data via a platform, e.g. using keys or access control rules to a system of files or objects, e.g. local or distributed file system or database
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F21/00Security arrangements for protecting computers, components thereof, programs or data against unauthorised activity
    • G06F21/60Protecting data
    • G06F21/62Protecting access to data via a platform, e.g. using keys or access control rules
    • G06F21/6218Protecting access to data via a platform, e.g. using keys or access control rules to a system of files or objects, e.g. local or distributed file system or database
    • G06F21/6245Protecting personal data, e.g. for financial or medical purposes
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F3/00Input arrangements for transferring data to be processed into a form capable of being handled by the computer; Output arrangements for transferring data from processing unit to output unit, e.g. interface arrangements
    • G06F3/01Input arrangements or combined input and output arrangements for interaction between user and computer
    • G06F3/048Interaction techniques based on graphical user interfaces [GUI]
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F7/00Methods or arrangements for processing data by operating upon the order or content of the data handled
    • GPHYSICS
    • G16INFORMATION AND COMMUNICATION TECHNOLOGY [ICT] SPECIALLY ADAPTED FOR SPECIFIC APPLICATION FIELDS
    • G16BBIOINFORMATICS, i.e. INFORMATION AND COMMUNICATION TECHNOLOGY [ICT] SPECIALLY ADAPTED FOR GENETIC OR PROTEIN-RELATED DATA PROCESSING IN COMPUTATIONAL MOLECULAR BIOLOGY
    • G16B20/00ICT specially adapted for functional genomics or proteomics, e.g. genotype-phenotype associations
    • G16B20/10Ploidy or copy number detection
    • GPHYSICS
    • G16INFORMATION AND COMMUNICATION TECHNOLOGY [ICT] SPECIALLY ADAPTED FOR SPECIFIC APPLICATION FIELDS
    • G16BBIOINFORMATICS, i.e. INFORMATION AND COMMUNICATION TECHNOLOGY [ICT] SPECIALLY ADAPTED FOR GENETIC OR PROTEIN-RELATED DATA PROCESSING IN COMPUTATIONAL MOLECULAR BIOLOGY
    • G16B20/00ICT specially adapted for functional genomics or proteomics, e.g. genotype-phenotype associations
    • G16B20/20Allele or variant detection, e.g. single nucleotide polymorphism [SNP] detection
    • GPHYSICS
    • G16INFORMATION AND COMMUNICATION TECHNOLOGY [ICT] SPECIALLY ADAPTED FOR SPECIFIC APPLICATION FIELDS
    • G16BBIOINFORMATICS, i.e. INFORMATION AND COMMUNICATION TECHNOLOGY [ICT] SPECIALLY ADAPTED FOR GENETIC OR PROTEIN-RELATED DATA PROCESSING IN COMPUTATIONAL MOLECULAR BIOLOGY
    • G16B30/00ICT specially adapted for sequence analysis involving nucleotides or amino acids
    • GPHYSICS
    • G16INFORMATION AND COMMUNICATION TECHNOLOGY [ICT] SPECIALLY ADAPTED FOR SPECIFIC APPLICATION FIELDS
    • G16BBIOINFORMATICS, i.e. INFORMATION AND COMMUNICATION TECHNOLOGY [ICT] SPECIALLY ADAPTED FOR GENETIC OR PROTEIN-RELATED DATA PROCESSING IN COMPUTATIONAL MOLECULAR BIOLOGY
    • G16B30/00ICT specially adapted for sequence analysis involving nucleotides or amino acids
    • G16B30/10Sequence alignment; Homology search
    • GPHYSICS
    • G16INFORMATION AND COMMUNICATION TECHNOLOGY [ICT] SPECIALLY ADAPTED FOR SPECIFIC APPLICATION FIELDS
    • G16BBIOINFORMATICS, i.e. INFORMATION AND COMMUNICATION TECHNOLOGY [ICT] SPECIALLY ADAPTED FOR GENETIC OR PROTEIN-RELATED DATA PROCESSING IN COMPUTATIONAL MOLECULAR BIOLOGY
    • G16B30/00ICT specially adapted for sequence analysis involving nucleotides or amino acids
    • G16B30/20Sequence assembly
    • GPHYSICS
    • G16INFORMATION AND COMMUNICATION TECHNOLOGY [ICT] SPECIALLY ADAPTED FOR SPECIFIC APPLICATION FIELDS
    • G16BBIOINFORMATICS, i.e. INFORMATION AND COMMUNICATION TECHNOLOGY [ICT] SPECIALLY ADAPTED FOR GENETIC OR PROTEIN-RELATED DATA PROCESSING IN COMPUTATIONAL MOLECULAR BIOLOGY
    • G16B40/00ICT specially adapted for biostatistics; ICT specially adapted for bioinformatics-related machine learning or data mining, e.g. knowledge discovery or pattern finding
    • GPHYSICS
    • G16INFORMATION AND COMMUNICATION TECHNOLOGY [ICT] SPECIALLY ADAPTED FOR SPECIFIC APPLICATION FIELDS
    • G16BBIOINFORMATICS, i.e. INFORMATION AND COMMUNICATION TECHNOLOGY [ICT] SPECIALLY ADAPTED FOR GENETIC OR PROTEIN-RELATED DATA PROCESSING IN COMPUTATIONAL MOLECULAR BIOLOGY
    • G16B40/00ICT specially adapted for biostatistics; ICT specially adapted for bioinformatics-related machine learning or data mining, e.g. knowledge discovery or pattern finding
    • G16B40/10Signal processing, e.g. from mass spectrometry [MS] or from PCR
    • GPHYSICS
    • G16INFORMATION AND COMMUNICATION TECHNOLOGY [ICT] SPECIALLY ADAPTED FOR SPECIFIC APPLICATION FIELDS
    • G16BBIOINFORMATICS, i.e. INFORMATION AND COMMUNICATION TECHNOLOGY [ICT] SPECIALLY ADAPTED FOR GENETIC OR PROTEIN-RELATED DATA PROCESSING IN COMPUTATIONAL MOLECULAR BIOLOGY
    • G16B45/00ICT specially adapted for bioinformatics-related data visualisation, e.g. displaying of maps or networks
    • GPHYSICS
    • G16INFORMATION AND COMMUNICATION TECHNOLOGY [ICT] SPECIALLY ADAPTED FOR SPECIFIC APPLICATION FIELDS
    • G16BBIOINFORMATICS, i.e. INFORMATION AND COMMUNICATION TECHNOLOGY [ICT] SPECIALLY ADAPTED FOR GENETIC OR PROTEIN-RELATED DATA PROCESSING IN COMPUTATIONAL MOLECULAR BIOLOGY
    • G16B50/00ICT programming tools or database systems specially adapted for bioinformatics
    • GPHYSICS
    • G16INFORMATION AND COMMUNICATION TECHNOLOGY [ICT] SPECIALLY ADAPTED FOR SPECIFIC APPLICATION FIELDS
    • G16BBIOINFORMATICS, i.e. INFORMATION AND COMMUNICATION TECHNOLOGY [ICT] SPECIALLY ADAPTED FOR GENETIC OR PROTEIN-RELATED DATA PROCESSING IN COMPUTATIONAL MOLECULAR BIOLOGY
    • G16B50/00ICT programming tools or database systems specially adapted for bioinformatics
    • G16B50/10Ontologies; Annotations
    • GPHYSICS
    • G16INFORMATION AND COMMUNICATION TECHNOLOGY [ICT] SPECIALLY ADAPTED FOR SPECIFIC APPLICATION FIELDS
    • G16BBIOINFORMATICS, i.e. INFORMATION AND COMMUNICATION TECHNOLOGY [ICT] SPECIALLY ADAPTED FOR GENETIC OR PROTEIN-RELATED DATA PROCESSING IN COMPUTATIONAL MOLECULAR BIOLOGY
    • G16B50/00ICT programming tools or database systems specially adapted for bioinformatics
    • G16B50/30Data warehousing; Computing architectures
    • GPHYSICS
    • G16INFORMATION AND COMMUNICATION TECHNOLOGY [ICT] SPECIALLY ADAPTED FOR SPECIFIC APPLICATION FIELDS
    • G16BBIOINFORMATICS, i.e. INFORMATION AND COMMUNICATION TECHNOLOGY [ICT] SPECIALLY ADAPTED FOR GENETIC OR PROTEIN-RELATED DATA PROCESSING IN COMPUTATIONAL MOLECULAR BIOLOGY
    • G16B50/00ICT programming tools or database systems specially adapted for bioinformatics
    • G16B50/40Encryption of genetic data
    • GPHYSICS
    • G16INFORMATION AND COMMUNICATION TECHNOLOGY [ICT] SPECIALLY ADAPTED FOR SPECIFIC APPLICATION FIELDS
    • G16BBIOINFORMATICS, i.e. INFORMATION AND COMMUNICATION TECHNOLOGY [ICT] SPECIALLY ADAPTED FOR GENETIC OR PROTEIN-RELATED DATA PROCESSING IN COMPUTATIONAL MOLECULAR BIOLOGY
    • G16B50/00ICT programming tools or database systems specially adapted for bioinformatics
    • G16B50/50Compression of genetic data
    • GPHYSICS
    • G16INFORMATION AND COMMUNICATION TECHNOLOGY [ICT] SPECIALLY ADAPTED FOR SPECIFIC APPLICATION FIELDS
    • G16BBIOINFORMATICS, i.e. INFORMATION AND COMMUNICATION TECHNOLOGY [ICT] SPECIALLY ADAPTED FOR GENETIC OR PROTEIN-RELATED DATA PROCESSING IN COMPUTATIONAL MOLECULAR BIOLOGY
    • G16B99/00Subject matter not provided for in other groups of this subclass
    • HELECTRICITY
    • H03ELECTRONIC CIRCUITRY
    • H03MCODING; DECODING; CODE CONVERSION IN GENERAL
    • H03M7/00Conversion of a code where information is represented by a given sequence or number of digits to a code where the same, similar or subset of information is represented by a different sequence or number of digits
    • H03M7/30Compression; Expansion; Suppression of unnecessary data, e.g. redundancy reduction
    • H03M7/3084Compression; Expansion; Suppression of unnecessary data, e.g. redundancy reduction using adaptive string matching, e.g. the Lempel-Ziv method
    • H03M7/3086Compression; Expansion; Suppression of unnecessary data, e.g. redundancy reduction using adaptive string matching, e.g. the Lempel-Ziv method employing a sliding window, e.g. LZ77
    • HELECTRICITY
    • H03ELECTRONIC CIRCUITRY
    • H03MCODING; DECODING; CODE CONVERSION IN GENERAL
    • H03M7/00Conversion of a code where information is represented by a given sequence or number of digits to a code where the same, similar or subset of information is represented by a different sequence or number of digits
    • H03M7/30Compression; Expansion; Suppression of unnecessary data, e.g. redundancy reduction
    • H03M7/70Type of the data to be coded, other than image and sound

Landscapes

  • Engineering & Computer Science (AREA)
  • Physics & Mathematics (AREA)
  • Theoretical Computer Science (AREA)
  • Life Sciences & Earth Sciences (AREA)
  • Health & Medical Sciences (AREA)
  • General Health & Medical Sciences (AREA)
  • Medical Informatics (AREA)
  • Bioinformatics & Cheminformatics (AREA)
  • Spectroscopy & Molecular Physics (AREA)
  • Bioinformatics & Computational Biology (AREA)
  • Biotechnology (AREA)
  • Evolutionary Biology (AREA)
  • Biophysics (AREA)
  • Databases & Information Systems (AREA)
  • Bioethics (AREA)
  • General Engineering & Computer Science (AREA)
  • General Physics & Mathematics (AREA)
  • Chemical & Material Sciences (AREA)
  • Analytical Chemistry (AREA)
  • Proteomics, Peptides & Aminoacids (AREA)
  • Data Mining & Analysis (AREA)
  • Software Systems (AREA)
  • Genetics & Genomics (AREA)
  • Molecular Biology (AREA)
  • Computer Security & Cryptography (AREA)
  • Computer Hardware Design (AREA)
  • Artificial Intelligence (AREA)
  • Computer Vision & Pattern Recognition (AREA)
  • Epidemiology (AREA)
  • Evolutionary Computation (AREA)
  • Public Health (AREA)
  • Human Computer Interaction (AREA)
  • Signal Processing (AREA)
  • Management, Administration, Business Operations System, And Electronic Commerce (AREA)
  • Information Retrieval, Db Structures And Fs Structures Therefor (AREA)
  • Measuring Or Testing Involving Enzymes Or Micro-Organisms (AREA)
  • Compression, Expansion, Code Conversion, And Decoders (AREA)
  • Labeling Devices (AREA)
  • Television Signal Processing For Recording (AREA)
  • Apparatus Associated With Microorganisms And Enzymes (AREA)

Abstract

通过在基因组数据的文件或流中采用结构化压缩基因组数据集来实现基因组数据的存储或传输。通过采用基于数据分类和特定索引机制的用户定义标签来实现对与特定基因组区域相对应的数据或数据子集的选择性访问。

Description

用于选择性访问存储的或传输的生物信息数据的方法和系统
技术领域
本申请提供了用于以压缩形式高效存储、传输和复用生物信息数据(特别是基因组测序数据)的新方法,该新方法使得能够高效地选择性访问和选择性保护构成基因组数据集的不同数据类别。
背景技术
基因组测序数据的恰当表示是实现基因组数据的高效处理、存储和传输从而实现和促进分析应用(例如基因组变异检测(variants calling)以及通过处理测序数据和元数据而出于各种目的进行的所有分析)的基础。当今,高通量测序(High ThroughputSequencing,HTS)机产生形式为核苷酸序列(也称为“碱基”)的基因组测序信息,该核苷酸序列由所规定的词汇表中的字母串表示。
这些测序机不会读取整个基因组或基因,而是产生被称为读序(sequence reads)的核苷酸序列的短随机片段。质量分数与短序列中的每个核苷酸相关联。这样的数字表示机器给出的针对在核苷酸序列的特定位置处的特定核苷酸的读取的置信水平。
由NGS机生成的原始测序数据通常存储在FASTQ文件中(参见图1)。
表示通过测序处理获得的核苷酸序列的最小词汇表由五个符号组成:{A,C,G,T,N},这五个符号表示DNA中存在的四种类型的核苷酸,即腺嘌呤、胞嘧啶、鸟嘌呤和胸腺嘧啶,加上符号N,符号N表示测序机利用足够的置信度水平仍不能检测到的任何碱基,所以这种位置处的碱基类型在读取过程中仍是不确定的。在RNA中,胸腺嘧啶被尿嘧啶(U)取代。测序机产生的核苷酸序列称为“读序”。在成对读序的情况下,术语“模板”用于指定被提取出读序对的原始序列。读序可以由从几十个到几千个范围内的多个核苷酸构成。一些技术产生成对的读序,其中每个读序可以源自两条DNA链中的一条链。
在基因组测序领域中,术语“覆盖”用于表示序列数据相对于参考基因组的冗余程度。例如,为了在人类基因组(32亿个碱基长度)上实现30x的覆盖,测序机将产生总共约30×3.2亿个碱基,以使得参考中的每个位置平均被“覆盖”30次。
现有技术解决方案
测序数据的最常用的基因组信息表示是基于为了减小原始大小而通常以压缩形式提供的FASTQ和SAM文件格式。传统的文件格式(对于非比对测序数据和比对测序数据分别是FASTQ和SAM)是由纯文本字符构成的,因此通过使用诸如LZ(来自Lempel和Ziv)方案(公知的zip、gzip等)的通用方法来进行压缩。当使用诸如gzip的通用压缩程序时,压缩的结果通常是单个二进制数据块。这种单体形式的信息导致很难存档、传送和说明,特别是在数据量非常大时进行高通量测序的情况下。
在测序之后,基因组信息处理流水线(pipeline)的每个阶段产生由全新的数据结构(文件格式)表示的数据,尽管事实上所产生的数据中仅有一小部分相对于先前阶段是新的。
图1示出了具有相关文件格式表示的指示的典型基因组信息处理流水线的主要阶段。
通常使用的解决方案存在几个缺点:数据存档效率低,因为在基因组信息处理流水线的每个阶段使用的文件格式是不同的,这意味着数据的多重复制,结果导致所需的存储空间快速增加。这是低效且不必要的,并且对于由HTS机生成的数据量的增加也变得不可持续。事实上,这在可用存储空间和所产生的成本方面具有不利影响,并且还阻碍了医疗保健中的基因组分析的益处普及到更大的人群部分。要存储和分析的序列数据的指数增长所产生的IT成本的影响是当前科学界和医疗行业必须面对的主要挑战之一(参见ScottD.Kahn“On the future of genomic data”-Science 331,728(2011)和Pavlichin,D.S.,Weissman,T.,and G.Yona.2013.“The human genome contracts again”Bioinformatics29(17):2199-2202).与此同时,还有几项举措试图将基因组测序从少数选定个体扩展到大量人群(参见Josh P.Roberts“Million Veterans Sequenced”-Nature Biotechnology31,470(2013))。
基因组数据的传送是缓慢且低效的,因为当前使用的数据格式被组织成高达几百千兆字节大小的单一文件,该单一文件需要在接收端完全传送以便被处理。这意味着对一小部分数据的分析需要传送整个文件,这在消耗的带宽和等待时间方面具有显著的成本。通常,在线传送不允许传送大量数据,因此数据的传送是通过物理地将诸如硬盘驱动器或存储服务器的存储介质从一个位置移动到另一个位置来执行的。
本发明克服了采用现有技术的方法时出现的这些限制。
对数据进行处理是缓慢且低效的,原因在于信息并不是按照无需访问整个数据就可以取得常用分析应用所需要的一部分不同类别的数据和元数据的方式结构化的。这一事实意味着,一般的分析流水线可能需要运行数天或数周,这浪费了宝贵且昂贵的处理资源,因为即使与特定分析用途相关的部分数据非常小,但在进行访问的每个阶段也需要解析和过滤大量数据。
这些限制妨碍医疗保健专业人员及时获得基因组分析报告并对疾病暴发迅速作出反应。本发明提供了满足这种需要的解决方案。
本发明克服了另一个技术限制。
实际上,本发明旨在通过组织和划分数据以使得数据和元数据的压缩最大化并高效地实现诸如选择性访问和对增量更新的支持的若干功能来提供恰当的基因组测序数据和元数据表示。
本发明的关键方面在于由恰当源模型表示并且分别通过在特定层中结构化而被编码(即,压缩)的数据和元数据的类的特定定义。本发明相对于现有技术方法的最重要的成就在于:
·由于通过为每类数据或元数据提供高效模型而构成的信源熵减小,压缩性能得到提高;
·可以直接在压缩域中对压缩数据和元数据的部分进行选择性访问,以进行任意的进一步处理;
·可以对标识基因组区域或子区域或者区域或子区域的聚合的用户特定“标签”进行定义,以使得能够通过解析包含在基因组文件报头中的“标签列表”来对压缩数据进行选择性访问;
·可以对由标签标识的不同基因组区域或子区域实施访问控制和保护;
·可以用新测序数据和/或元数据和/或新分析结果来对编码数据和元数据进行增量更新和添加(即不需要重新编码);
·一旦测序机或比对工具产生数据,就可以高效地处理该数据,而不需要等到测序或比对处理结束。
本申请公开了通过采用结合复用技术的结构化访问单元方法来解决高效操作、存储和传输非常大量的基因组测序数据的问题的方法和系统。
本申请克服了与基因组数据可访问性功能、选择性数据保护、数据子集的高效处理、结合高效压缩的传输和流传输功能相关的现有技术方法的所有限制。
目前,基因组数据的最常用的表示格式是序列比对映射(SAM)文本格式及其二进制对应格式BAM。SAM文件是人类可读ASCII文本文件,而BAM采用基于块的gzip变体。BAM文件可以被索引以实现有限的随机访问模态。这通过创建单独的索引文件来支持。
由于以下原因,BAM格式的特点是较差的压缩性能:
1.它侧重于压缩低效和冗余的SAM格式,而不是提取SAM文件传达的实际基因组信息,并且未采用恰当模型对其进行压缩。
2.它采用诸如gzip的通用文本压缩算法,而不是利用每个数据源(基因组数据本身)的特定性质。
3.它缺乏任何概念并且不支持与数据分类相关的任何功能,该功能将使得能够实现提供了对特定类别的基因组数据进行选择性访问的机制。
一种不常用但比BAM更高效的更复杂的基因组数据压缩方法是CRAM(CRAM规范:https://samtools.github.io/hts-specs/CRAMv3.pdf)。CRAM因为采用了相对于已有参考的差分编码而提供了更高效的压缩(它部分利用了数据源冗余),但仍然缺乏诸如增量更新、支持流、对特定类压缩数据的选择性访问的特性。
CRAM依赖于CRAM记录的概念。每个CRAM记录通过对重构它所需的所有元素进行编码来编码单个映射读序或非映射读序。
CRAM存在以下缺陷和限制,这些缺陷和限制由本文中描述的发明解决和消除:
1.CRAM不支持数据索引和对共有特定特征的数据子集的随机访问。数据索引超出了规范的范围(参见CRAM规范v 3.0的第12节),并且数据索引是作为单独的文件实现的。相反,本文中描述的发明的方法采用与编码处理集成的数据索引方法,并且索引被嵌入在编码(即,压缩)比特流中。
2.CRAM不支持与若干测序运行相关的数据的聚合,使得选择性访问是高效的并且保持与运行(即,从实际有机样本中提取基因组信息的处理)分离。CRAM确实可以将读序标记为属于不同的组,但是这是提供在逐读序的基础上的,并且来自不同组的读序随后被混合在文件结构中。在本发明中,描述了一种将数据结构化以便在不同测序运行中保持分离从而可以实现高效选择性访问的方法。
3.CRAM是由核心数据块构建的,这些核心数据块可以包含任何类型的映射读序(完全匹配的读序、仅具有替换的读序、具有插入或缺失(也称为“indel(插入缺失标记)”)的读序)。不存在根据相对于参考序列的映射结果对类中的读序进行数据分类和分组的概念。这意味着即使仅搜索具有特定特征的读序,也需要检查所有的数据。本发明通过在编码之前对类中的数据进行分类和划分来解决这种限制。
4.CRAM基于将各个读序封装到“CRAM”中的概念。这意味着当搜索以特定生物特征为特征的读序(例如,具有替换但不具有“indel”的读序或者完全映射的读序)时,需要检查各个完整的“记录”。
相反,在本发明中,有着在单独的信息层中单独地编码的数据类的概念,并且没有封装了各个读序的记录的概念。这使得能够更高效地访问具有特定生物特征的读序(例如,具有替换但不具有“indel”的读序或者完全映射的读序)的集合,而无需解码各个读序(块)以检查其特征。
5.在CRAM记录中,由于各个CRAM记录可以包含任何不同类型的数据,因而没有上下文的概念,所以记录中的各个字段与特定标志相关联,并且每个标志必须总是具有相同的含义。这种编码机制引入了冗余信息且使得无法利用高效的基于上下文的熵编码。
相反,在本发明中,不存在对数据进行标注的标志的概念,因为这本质上是由数据所属的信息“层”限定的。这意味着要使用的符号数量会大大减少,进而导致信源熵的减少,这带来了更高效的压缩。因为使用不同的“层”使得编码器能够根据上下文在具有不同含义的各个层中重复使用相同符号,所以可以实现这样的改进。在CRAM中,各个标志必须总是具有相同的含义,因为没有上下文的概念且各个CRAM记录可以包含任何类型的数据。
6.在CRAM中,利用不同的语法元素来表示替换、插入和删除,这种选项会增加信息源字母表的大小并产生更高的源熵。相反,所公开的发明的方法使用单个字母表以及针对替换、插入和删除的编码。这使得编码和解码过程更简单,并且产生更低的熵源模型,其编码产生以高压缩性能为特征的比特流。
7.CRAM没有提供任何机制来唯一地辨别基因组数据或其聚合的特定区域或子区域。除了在参考序列上的起始位置和终止位置方面定义了基因位点之外,根据CRAM规范,没有办法执行以下项:
--标记区域并使用所定义的标记而不是基因组起始位置和终止位置来访问该区域。如果发布新的参考序列,则相同基因组区域的起始位置和终止位置可能改变,而所定义的标记将向任何终端用户隐藏这种改变。编码和解码系统将负责使通过标签辨别的实际区域适应新发布的参考序列。
--将若干区域或子区域聚合在同一标签下,以便任何终端用户都能够通过单个查询选择所需的数据,而不涉及复杂的嵌套查询。整个聚合机制将被嵌入在如本文描述的编码和解码系统中。
8.CRAM不提供或者不支持任何如下机制:对基因组数据的特定区域或子区域或者特定区域或子区域的聚合实施选择性保护和访问控制(无论当这些区域是预先定义的区域时还是当这些区域通过用户插入恰当的“标签”而被指定时)。
除了CRAM之外,基因组数据压缩和处理的其它方法也对大多数期望的功能存在很大的限制,并且不支持由在下文中描述和规定的本发明公开内容提供的特征。
在现有技术中使用的基因组压缩算法可以被分类为以下类别:
·基于变换的
o基于LZ的
o读序重新排序
·基于组装的
·统计建模
前两类都具有不利用数据源(基因组序列读序)的特定特性的缺点,并且在不考虑这类信息(例如,读序中的冗余,对已有样本的参照)的特定特性的情况下,将基因组数据处理为要压缩的文本的字符串。用于基因组数据压缩的两个最先进的工具包(即,CRAM和Goby(“结构化高产出测序数据的压缩”,F.Campagne,K.C.Dorff,N.Chambwe,J.T.Robinson,J.P.Mesirov,T.D.Wu))由于它们隐式地将数据建模为独立的且通过几何分布同等地分布的,所以对算术编码的使用很差。Goby稍微更复杂一些,因为它将所有字段转换为整数列表,并且每个列表在不使用任何上下文的情况下使用算术编码来独立地进行编码。在最高效的操作模式中,Goby能够对多个整数列表执行一些列表间建模以改进压缩。这些现有技术的解决方案产生了较差的压缩比和数据结构,一旦压缩就很难(如果不是不可能的话)选择性地访问和操作该数据结构。下游分析阶段可以是低效且非常慢的,因为即使执行简单的操作或者访问基因组数据集的选定区域,也需要处理大且刚性的数据结构。
图1描绘了在基因组处理流水线中使用的文件格式之间的关系的简化视图。在图1中,文件包含(file inclusion)并不意味着存在嵌套文件结构,而是仅表示可以针对每种格式编码的信息的类型和量(即,SAM包含FASTQ中的所有信息,但按照不同的文件结构组织)。CRAM包含与SAM/BAM相同的基因组信息,但是它在可使用的压缩类型方面具有更大的灵活性,因此它被表示为SAM/BAM的超集。
使用多种文件格式来存储基因组信息是非常低效且昂贵的。在基因组信息生命周期(life cycle)的不同阶段具有不同的文件格式意味着即使增量信息是最小的,所利用的存储空间也是线性增长的。下面列出了现有技术解决方案的其它缺点。
1.对存储在压缩FastQ文件或其任意组合中的原始数据进行访问、分析或添加注释(元数据)需要通过大量使用计算资源和时间来解压缩和重新压缩整个文件。
2.取得特定信息子集(诸如读序映射位置、读序变异位置和类型、indel位置和类型或BAM文件中存储的比对数据(aligned data)中包含的任何其它元数据和注释)需要访问与每个读序关联的整个数据量。不能利用现有技术的解决方案来选择性地访问单个类别的元数据。
3.现有技术的文件格式要求在处理开始之前在终端用户处接收整个文件。例如,可以依赖于恰当的数据表示在测序处理完成之前开始读序的比对。测序、比对和分析可以并行进行和运行。
4.现有技术的解决方案不支持结构化,并且不能根据基因组数据的特定生成语义来区分通过不同测序处理获得的基因组数据(例如,在同一个体的生命的不同时间获得的测序)。针对通过同一个体的不同类型的生物样本获得的测序,存在相同的限制。
5.现有技术的解决方案不支持通过访问控制机制(例如加密、水印、数字签名、散列)对整个数据或数据的选定部分进行保护。例如,以下项的保护:
a.选定的DNA区域
b.只有包含变异体的序列
c.只有嵌合序列
d.只有未映射序列
e.通过用户定义标签辨别的区域或子区域或者区域或子区域的聚合
f.特定元数据(例如,测序样本的来源、测序个体的身份、样本类型)
在现有技术的解决方案的文件和数据格式中不被支持。
6.即使新的参考与先前的参考仅有单个核苷酸位置不同,从与给定参考(即,SAM/BAM文件)比对的测序数据到新参考的代码转换也需要处理整个数据量。
因此,明确需要适当的基因组信息存储格式(基因组文件格式)和传输机制,该格式和传输机制使得能够高效地压缩本地和远程存储的数据、支持在压缩域中进行选择性访问和保护的功能,并且支持以基因组数据处理的不同阶段的所有级别在压缩域中增加异构元数据。
本发明通过采用所附权利要求书要求保护的方法、装置和计算机程序来提供针对现有技术限制的解决方案
附图说明
图1示出了典型基因组流水线的主要步骤以及相关的文件格式。
图2示出了最常用的基因组文件格式之间的相互关系。
图3示出了如何通过从头组装或基于参考的比对将基因组读序组装在整个或部分基因组中。
图4示出了如何计算参考序列上的读序映射位置。
图5示出了如何计算读序配对距离。
图6示出了如何计算配对错误。
图7示出了当读序的配对读序被映射在不同的染色体上时如何对配对距离进行编码。
图8示出了如何从基因组的第一或第二DNA链生成读序。
图9示出了映射在链2上的读序如何在链1上具有对应的反向互补读序。
图10示出了构成读序对的读序的四种可能组合以及rcomp层中的相应编码。
图11示出了如何在nmis层中编码“n型”失配。
图12示出了映射读序对中的替换的示例。
图13示出了如何将替换位置计算为绝对值或差分值。
图14示出了如何计算在不使用IUPAC码时对替换进行编码的符号。
图15示出了如何在snpt层中编码替换类型。
图16示出了如何计算在使用IUPAC码时对替换进行编码的符号。
图17示出了替换的另选源模型,其中,仅对位置进行编码,但每个替换类型使用一个层。
图18示出了当不使用IUPAC码时,如何对I类读序对中的替换、插入和缺失进行编码。
图19示出了当使用IUPAC码时,如何对I类读序对中的替换、插入和缺失进行编码。
图20示出了本发明公开的基因组信息数据结构的基因组数据集报头的结构。
图21示出了主索引表如何包含每个访问单元中的第一个读序在参考序列上的位置。
图22示出了部分MIT的示例,其示出了每个pos AU中的第一个P类读序的映射位置。
图23示出了层报头中的本地索引表如何是指向净荷中的AU的指针的向量。
图24示出了本地索引表的示例。
图25示出了主索引表与本地索引表之间的功能关系。
图26示出了访问单元是如何由属于若干层的数据块构成的,层由分组中细分的块构成。
图27示出了类型1的基因组访问单元(包含位置、配对、反向互补和读序长度信息)如何被分组并封装在基因组数据复用体中。
图28示出了访问单元如何由报头以及属于一个或更多个同类数据层的复用块构成,每个块可以由包含基因组信息的实际描述符的一个或更多个分组构成。
图29示出了不需要参照来自其它访问单元的任何信息来进行访问或者解码并访问的类型0的访问单元的结构。
图30示出了类型1的访问单元的结构。
图31示出了包含参照类型1的访问单元的数据的类型2的访问单元的结构,这些是编码读序中的N个碱基的位置。
图32示出了包含参照类型1的访问单元的数据的类型3的访问单元的结构,这些是编码读序中的失配的位置和类型。
图33示出了包含参照类型1的访问单元的数据的类型4的访问单元的结构,这些是编码读序中的失配的位置和类型。
图34示出了前五种类型的访问单元。
图35示出了类型1的访问单元参照要解码的类型0的访问单元。
图36示出了类型2的访问单元参照要解码的类型0和类型1的访问单元。
图37示出了类型3的访问单元参照要解码的类型0和类型1的访问单元。
图38示出了类型4的访问单元参照要解码的类型0和类型1的访问单元。
图39示出了对在参考序列的第二个片段(AU 0-2)上映射有失配的读序进行解码所需的访问单元。
图40示出了如何将变得可用的原始基因组序列数据递增地添加到预先编码的基因组数据。
图41示出了基于访问单元的数据结构如何在测序处理完成之前启动基因组数据分析。
图42示出了对现有数据执行的新分析如何暗示读序从类型4的AU移动到类型3的AU。
图43示出了如何将新生成的分析数据封装在类型8的新AU中,以及如何在MIT中创建对应索引。
图44示出了由于新参考序列(基因组)的公布而如何对数据进行转码。
图45示出了如何以更好的质量(例如,无索引)将映射到新的基因组区域的读序从类型4的AU移动到类型3的AU。
图46示出了在发现新的映射位置的情况下(例如,具有较少的失配),如何将相关读序从一个AU移动到同一类型的另一个AU。
图47示出了如何只有当类型4的访问单元包含要保护的可读信息(sensibleinformation)时,才可以对它们应用选择性加密。
图48示出了基因组复用体中的数据封装,其中,一个或更多个基因组数据集482-483包含基因组流484和基因组数据集映射表列表481、基因组数据集映射表485和参考标识符映射表487的流,每个基因组流由报头488和访问单元486构成,访问单元封装由分组4810构成的块489。
图49示出了如何处理原始基因组序列数据(499)或经比对的基因组数据(由元件491产生),以封装在基因组复用体中,可能需要比对(491)和参考基因组构造(492)阶段,以准备用于编码的数据,可以相对于由参考变换单元(4919)生成的一个或更多个经变换的参考来进一步分类由数据分类单元(494)生成的数据类(498),经变换的类(4918)然后被发送到层编码器(495-497),所生成的层(4911)由熵编码器(4912-4914)编码,熵编码器(4912-4914)生成馈送到基因组复用体(4916)的访问单元的基因组流(4915)。
图50示出了基因组解复用器(500)如何从基因组复用体(5010)提取基因组流(501),每个AU类型一个的解码器(502-504)提取基因组层(506-507),然后将其解码成各种数据类(5011),类解码器(509)使用这些数据类来重构基因组格式(例如FASTQ和BAM/SAM),当存在于复用的比特流(5010)中时,包含一个或更多个参考变换的基因组流由熵解码器(504)解码以产生参考变换描述符(5012),参考变换描述符由参考变换单元(5013)处理,以变换一个或更多个“外部”参考,进而生成要由类解码器(509)使用的一个或更多个经变换的参考(5014)。
图51示出了使用利用6层描述符自生成的参考序列对属于U类的读序进行编码的处理,四个层与用于其它P类、N类、M类、I类的相同,而两个层专用于U类读序。
图52示出了如何构建标签,以聚合属于两种不同参考的基因组区域。
图53示出了在新的分析结果需要向已有区域(R1、R2和R3)添加附加区域R4的情况下如何更新已有标签。
图54示出了如何使用标记机制来实现对特定基因组区域或子区域的访问控制和数据保护,简单的情况是对由一个标签标识的所有基因组区域使用一个访问控制规则(AC)和一个保护机制(例如,加密)。
图55示出了如何通过若干不同的访问控制规则(AC)和若干不同的加密密钥来保护由同一标签标识的不同基因组区域。
图56示出了如何对U类读序进行另选的编码,其中,使用有符号的POS描述符来对读序在所计算的参考上的映射位置进行编码。
图57示出了半映射读序对如何通过将较长的重叠群(contig)与未映射读序进行组装来帮助填充参考序列的未知区域。
图58示出了根据本发明描述的结构存储的基因组数据的报头的分层结构。
图59示出了当与若干基因组区域相关的数据被存储在数据库的不同记录中时,实现本发明所描述的标记机制的设备如何能够同时访问这些数据,这可以在存在或不存在受控访问的情况下发生。
图60示出了如何在N类、M类和I类的编码器中使用阈值向量来生成分离的数据子类。
图61提供了在移除了所有失配或失配的子集时,参考变换如何改变读序所属的类(即,在变换之前属于M类的读序在应用参考变换之后被指派给P类)的示例。
图62示出了如何应用参考变换,以从读序中移除失配(MM),在某些情况下,参考变换可能生成新的失配或改变在应用变换之前参照参考时发现的失配类型。
图63示出了相同的参考变换A0可以用于所有的数据类或者每个类N、M、I使用不同的变换AN、AM、AI
发明内容
权利要求的特征通过提供以下项解决现有技术解决方案的问题:
一种通过采用标签来对基因组数据的区域进行选择性访问的方法,所述标签包括:参考基因组序列的标识符(521);所述基因组区域的标识符(522);以及所述基因组数据的数据类的标识符(523)。
在所述方法的另一方面中,所述基因组数据是基因组读序。
在所述方法的另一方面中,所述数据类可以是以下类型或以下类型的子集:
·“P类”,其包含不存在相对于参考序列的任何失配的基因组读序;
·“N类”,其包含仅包括测序机无法检测到任何“碱基”的位置处的失配并且所述失配的数目不超过给定阈值的基因组读序;
·“M类”,其包含失配由下述位置构成的基因组读序:测序机无法检测到任何碱基的位置,这称为“n型”失配;和/或所述测序机检测到与参考序列不同的碱基的位置,这称为“s型”失配,并且在该基因组读序中,失配的数目不超过“n型”失配和“s型”失配的给定阈值以及从给定函数(f(n,s))获得的阈值;
·“I类”,所述基因组读序可能具有“M类”的相同类型失配,并且具有“插入”(“i型”)、“缺失”(“d型”)、软剪辑(“c型”)中的至少一个类型的失配时,并且其中,每种类型的失配的数目不超过对应的给定阈值和由给定函数(w(n,s,i,d,c))提供的阈值;
·“U类”,其包括所有不能分类到P类、N类、M类、I类中的读序。
在所述方法的另一方面中,所述基因组数据是成对的基因组读序。
在所述方法的另一方面中,成对读序的所述数据类可以是以下类型或它们的子集:
·“P类”,其包含不存在相对于参考序列的任何失配的基因组读序对;
·“N类”,其包含仅包括测序机无法检测到任何“碱基”的位置处的失配并且各个读序的失配的所述数目不超过给定阈值的基因组读序;
·“M类”,其包含仅具有如下位置处的失配的基因组读序对:测序机无法检测到任何碱基的位置,并且各个读序的失配数目不超过给定阈值,这称为“n型”失配;和/或所述测序机检测到与参考序列不同的碱基的位置,这称为“s型”失配,并且,失配数目不超过“n型”和“s型”的失配数目的给定阈值以及从给定函数(f(n,s))获得的阈值;
·“I类”,其包含如下的读序对:该读序对可能具有“M类”读序对的相同类型失配,并且具有“插入”(“i型”)、“缺失”(“d型”)、软剪辑(“c型”)中的至少一个类型的失配,并且其中,每种类型的失配数目不超过对应的给定阈值和由给定函数(w(n,s,i,d,c))提供的阈值;
·“HM类”,其包含仅一个配对读序不满足分类到P类、N类、M类、I类中的任何类的匹配规则的读序对;
·“U类”,其包含两个读序都不满足分类到P类、N类、M类、I类的匹配规则的所有读序对。
在所述方法的另一方面中,所述基因组区域的所述标识符包括在主索引表中。
在所述方法的另一方面中,所述基因组数据和所述标签被熵编码。
在所述方法的另一方面中,所述主索引表(4812)被包括在基因组数据集报头(4813)中。
在所述方法的另一方面中,所述基因组数据区域分散在单独的访问单元(524、486)中。
在所述方法的另一方面中,在本地索引表(525)中表示所述基因组数据区域在文件中的位置。
在所述方法的另一方面中,所述标签是用户规定的。
在所述方法的另一方面中,所述区域是单独地保护和/或加密的,而不对整个基因组文件进行加密。
在所述方法的另一方面中,所述标签存储在基因组标签列表(GLL)中。
在所述方法的另一方面中,该方法还包括按照先前定义的对基因组数据的区域进行选择性访问,对基因组数据进行编码。
在所述方法的另一方面中,定期地重传或更新所述基因组标签列表,以便能够实现多个同步点。
在所述方法的另一方面中,该方法还包括按照先前定义的对基因组数据的区域进行选择性访问,对基因组数据进行解码。
本发明还提供了一种用于如先前限定对基因组数据进行编码的装置。
本发明还提供了一种用于如先前限定对基因组数据进行解码的装置。
本发明还提供了一种用于存储如先前限定的被编码的基因组数据的存储装置。
本发明还提供了一种包括指令的计算机可读介质,该指令在被执行时使得至少一个处理器执行先前定义的编码方法。
本发明还提供一种包括指令的计算机可读介质,该指令在被执行时使得至少一个处理器执行先前定义的解码方法。
具体实施方式
本发明描述了一种标记机制,其提供对以文件格式存储的压缩基因组数据的基因组区域或子区域或者区域或子区域的聚合和/或要用于存储、传输、访问和处理以表示分子的符号序列的形式的基因组或蛋白质组信息的相关访问单元的选择性访问和选择性访问控制。
这些分子例如包括核苷酸、氨基酸和蛋白质。被表示为符号序列的最重要的信息之一是由高通量基因组测序装置生成的数据。
任何生物体的基因组通常被表示为一串符号,该串符号代表了表征该生物体的核酸链(碱基)。现有技术的基因组测序技术仅能够产生与元数据(标识符、精度水平等)关联的核酸的若干(高达数十亿)字符串形式的基因组的片段化表示。这样的字符串通常称为“序列读序”或“读序”。
基因组信息生命周期的典型步骤包括读序提取、映射和比对、变异检测(variantdetection)、变异注释(variant annotation)以及功能和结构分析(参见图1)。
读序提取是由人类操作员或机器执行的、以符号序列的形式表示遗传信息片段的过程,所述符号序列表示构成生物样本的分子。在核酸的情况下,这种分子被称为“核苷酸”。通过提取产生的符号序列通常被称为“读序”。在现有技术中,这种信息通常被编码为FASTA文件,FASTA文件包括文本报头和表示测序分子的符号序列。
当对生物样本进行测序以提取生物体的DNA时,字母表由符号(A、C、G、T、N)构成。
当对生物样本进行测序以提取生物体的RNA时,字母表由符号(A、C、G、U、N)构成。
在IUPAC扩展符号集(所谓的“歧义码”)也由测序机生成的情况下,构成读序的符号所使用的字母表是(A、C、G、T、U、W、S、M、K、R、Y、B、D、H、V、N或-)。
当不使用IUPAC歧义码时,可以将质量分数序列与每个读序关联起来。在这种情况下,现有技术的解决方案将所得信息编码为FASTQ文件。测序装置可以在读序中带来错误,例如:
1.识别了错误符号(即,表示不同的核酸)来表示在测序样本中实际存在的核酸;这通常被称为“替换错误”(失配);
2.在一个读序中插入不涉及任何实际存在的核酸的额外符号;这通常被称为“插入错误”;
3.从一个读序中删除了表示测序样本中实际存在的核酸的符号;这通常被称为“缺失错误”;
4.将一个或更多个片段重组成不反映最初序列的真实性的单个片段。
文献中使用术语“覆盖”来量化参考基因组或其部分可被可用读序覆盖的程度。覆盖被认为是:
·部分(小于1X),当参考基因组的某些部分未被任何可用读序映射时
·单重(1X),当参考基因组的所有核苷酸被读序中存在的一个且仅一个符号映射时
·多重(2X、3X、NX),当参考基因组的每个核苷酸被多次映射时。
序列比对(sequence alignment)是指通过找到可能是具有序列之间的功能、结构或进化关系的结果的相似性的区域来排列读序的处理。当参照称为“参考基因组”的已有核苷酸序列进行比对时,该处理称为“映射”。序列比对也可以在没有已有序列(即,参考基因组)的情况下进行,在这种情况下,该过程在现有技术中被称为“从头”比对。现有技术对解决方案将这种信息存储在SAM、BAM或CRAM文件中。图3描绘了对序列进行比对以重构部分或完整基因组的概念。
变异检查(也称变异检测(variant calling))是如下处理:将基因组测序机的比对输出(由NGS装置产生并比对的读序)转译为被测序生物的在其它已有序列中不能找到的或仅在几个已有序列中可以找到的独特特征的概要。这些特征被称为“变异”,因为它们被表示为所研究的生物体的基因组与参考基因组之间的差异。现有技术的解决方案将这种信息存储在被称为VCF文件的特定文件格式中。
变异注释是将功能信息分配给通过变异检测处理而辨别的基因组变异的过程。这意味着可以根据变异与基因组中的编码序列的关系以及根据它们对编码序列和基因产物的影响对变异进行分类。在现有技术中,这通常存储在MAF文件中。
分析DNA(变异,CNV=拷贝数变异,甲基化等)链以定义它们与基因(和蛋白质)功能和结构的关系的过程称为功能分析或结构分析。现有技术中存在存储这种数据的几种不同解决方案。
基因组文件格式
在本文中公开的发明包括对应用于表示、处理操作和传输基因组测序数据的压缩数据结构的选择性和受控数据访问的限定,本发明至少在以下方面不同于现有技术解决方案:
-不依赖于任何现有技术的基因组信息表示格式(即,FASTQ、SAM)。
-支持对被构造为多个基因组数据集的多个测序运行产生的数据进行高效处理和选择性随机访问。将来自不同测序运行的数据分割成同一数据结构使得分析人员能够同时对它们执行查询,这对于群体遗传学研究具有很大优势。
-根据基因组数据和元数据的特定特征实现了对它们的新的原始分类。将读序映射到参考序列上,并根据比对处理的结果将读序分组到不同的类中。这产生了具有较低信息熵的数据类,其可以使用不同的特定压缩算法(诸如霍夫曼编码、算术编码(CABAC、CAVLAC)、非对称数字系统、Lempel-Ziv及其派生)来更高效地进行编码。
-借助于用户定义的标签实现了将数据类或数据类子集与特定基因组区域或子区域或者区域或子区域的聚合相关联的新方法,用户定义的标签使得能够对与特定基因组区域或子区域或者区域或子区域的聚合相对应的所述压缩数据类进行选择性访问和保护。
-定义了将读序和比对信息转变成对于下游分析应用来说能够更高效处理的表示的语法元素和相关编码/解码处理。
根据映射结果对读序进行分类并使用要分层存储(位置层、配对(mate)距离层、失配类型层等)的描述符对它们进行编码具有以下优点:
·当不同语法元素由产生较高压缩性能的特定源模型建模时,信息熵减小。
·对已经按组/层组织的数据进行更高效地访问,所述组/层对于下游分析阶段具有特定意义并且可以直接在压缩域中单独地且独立地对所述组/层进行访问。
·存在模块数据结构,该模块数据结构可以通过在不需要解码(即,解压缩)整个数据内容的情况下仅访问所需信息来递增地更新。
·由于信息本身的性质和缓解测序处理中的固有误差的需要,测序机产生的基因组信息本质上是高度冗余的。这意味着需要辨别和分析的相关遗传信息(相对于参考的变异)仅是所产生的数据的一小部分。现有技术的基因组数据表示格式没有考虑在给定分析阶段将有意义的信息与其余的信息"隔离",以便使有意义的信息可以迅速获得并且被分析应用所理解。
·所公开的发明带来的解决方案以这样的方式表示基因组数据:在不需要访问和解压缩整个数据的情况下,分析应用可以容易地获得数据的任何相关部分,并且通过高效压缩有效减少了数据的冗余,以最小化所需的存储空间和传输带宽。
本发明的关键要素是:
1.规范了"包含"压缩形式的、结构化且用户定义的可选择性访问的数据元素(被称为访问单元(AU))的文件格式。这样的方法可以被认为与现有技术方法(例如SAM和BAM)相反,在现有技术方法中,数据以非压缩形式结构化,然后压缩整个文件。本发明方法的第一明显优点是能够高效且自然地对压缩域中的数据元素进行各种形式的用户定义的结构化选择性访问,这在现有技术方法中是不可能的或极其棘手的。
2.将基因组信息结构化为同种数据和元数据的特定"层"具有相当大的优势,使得能够对以低熵为特征的信息源的不同模型进行定义。当层内的压缩数据被分割成包括在访问单元中的数据块时,这样的模型不仅可以在层间不同,而且还可以在每层内不同。这种结构化使得能够对每一类数据或元数据以及它们的一部分使用最恰当的压缩,与现有技术方法相比,在编码效率方面具有显著的增益。
3.信息以访问单元(AU)结构化,使得能够通过恰当的接口对基因组分析应用所使用的数据的任何相关子集进行高效地且选择性的访问。这些特征使得能够更快地访问数据并产生更高效的处理。
4.定义了主索引表和本地索引表,使得能够选择性地访问由编码(即,压缩)数据的层携带的信息,而不需要对整个压缩数据进行解码。
5.可以通过对存在于文件报头中的“标签列表”进行解析来仅对与特定的用户定义的基因组区域或子区域或者区域或子区域的聚合以及所关注的数据类进行访问。
6.可以根据标识相关基因组区域的用户定义“标签”,对不同AU以及包含在AU中的数据的部分进行不同类型的访问控制。
7.可以通过在压缩域中对所选数据部分执行高效的转码,在需要将已经比对且压缩的基因组数据集与新公布的参考基因组重新比对时执行它们的重新比对。目前,新的参考基因组的频繁发布需要资源消耗和时间(因为需要处理所有的数据),以执行将已压缩且存储的基因组数据相对于新公布的参考进行重新比对的转码处理。
本文中描述的方法旨在利用关于基因组数据的可用先验知识来定义具有减小的熵的语法元素的字母表。在基因组学中,可用的知识由已有基因组序列表示,基因组序列通常但不一定是与要处理的物种相同的物种的基因组序列。例如,不同个体的人类基因组仅相差1%。然而,这样的少量数据包含足够的信息来使得能够进行早期诊断、个性化医疗、定制药物合成等。本发明旨在定义一种基因组信息表示格式,其中,可以高效地访问相关信息,可以选择性地控制访问并保护数据,可以高效地传输信息,并且通过处理压缩数据结构来执行所有这样的处理。
在本发明中使用的技术特征是:
1.将不同测序运行生成的基因组信息分割成不同的基因组数据集,以便在查询一个或更多个可用数据集时能够进行高效的数据检索和处理。
2.将基因组序列数据和元数据分割为共享共同特征的“类”;
3.将基因组数据被划分到的每个数据类所携带的基因组信息的结构定义为描述符的“层”的集合,以便尽可能地减小信息熵;
4.定义了主索引表和本地索引表,以使得能够通过仅访问编码(即,压缩)信息的期望层来选择性地访问数据类和关联信息,而不需要解码整个编码基因组信息;
5.使用不同的源模型和熵编码器对属于在第2点中规定的数据类的不同层的语法元素进行编码;
6.定义了在相关层之间建立对应性的特定机制,以使得能够选择性地访问数据,而不需要在不需要或不期望的情况下对所有层进行解码;
7.定义了通过“标签”来标记与特定基因组区域或子区域或者区域或子区域的聚合相对应的压缩数据以及对应数据“类”或数据类的子集的机制,使得能够进行高效的选择性访问;
8.定义了对特定基因组区域或子区域或者区域或子区域的聚合以及对应数据“类”或数据类的子集及其任意组合进行选择性保护的机制。
9.相对于一个或更多个已有的或构造的参考序列对数据集或数据“类”进行编码,其可以被进一步变换以减小序列数据表示的熵。
为了解决现有技术在对特定数据“类”、特定基因组区域或子区域或者区域或子区域的聚合进行高效地选择性访问和选择性访问控制方面的所有已提到的问题,同时通过高效的压缩表示来保持高效的传输和存储,本发明的应用提供了一种特定的数据结构规范,该数据结构规范实现了将数据恰当地重新排序到同种和/或在语义上重要的数据的访问单元中,从而实现目前基因组数据分析应用所需的无缝访问和处理。
具体地,本发明采用基于访问单元、“标签”和相关数据的复用的概念的数据结构,这些概念在现有技术基因组数据格式中是不存在的。
基因组数据被结构化并被编码到不同的访问单元中。下文对包含在不同访问单元中并且可以通过将基因组数据与特定基因组区域或子区域或者区域或子区域的聚合关联起来的“标签”来辨别的基因组数据相对于参考基因组进行了描述。
根据匹配规则对基因组数据进行分类
根据关于一个或更多个已有参考序列的比对的匹配结果,所公开的发明将测序机产生的读序分类为五个不同的“类”。
当将核苷酸的DNA序列与参考序列比对时,可以辨别以下情况:
1.发现参考序列中的区域毫无误差地匹配读序(即完全映射)。这样的核苷酸序列称为“完全匹配读序”或标为“P类”。
2.发现参考序列中的区域与这样的读序匹配:该读序具有仅由生成该读序的测序机无法检测到任何碱基(核苷酸)的位置的数量决定的失配类型和数目。这种类型的失配用“N”表示,该字母用于表示未定义的核苷酸碱基。在本文中,这种类型的失配被称为“n型”失配。这样的序列被称为“N型失配读序”或“N类”。一旦读序被分类为属于“N类”,那么将匹配不精确度限制到给定的上限并且在被认为有效匹配与被认为无效匹配之间设定分界是有用的。因此,也通过设定阈值(MAXN)来约束分配至N类的读序,该阈值(MAXN)限定了读序可以包含的未定义碱基(即,被称为“N”的碱基)的最大数目。这种分类隐含地定义了当与对应的参考序列进行参照时属于N类的所有读序共有的所需最小匹配精度(或最大失配度),这构成了用于对压缩数据应用选择性数据搜索的有用标准。
3.发现参考序列中的区域与如下读序匹配:该读序具有由生成该读序的测序机无法检测到任何(如果有的话)核苷酸碱基(即“n型”失配)的位置的数量决定的失配类型和数目,加上已经检测到与参考序列中所存在的不同的碱基的失配的数量。标为“替换”的这种类型的失配也称为单核苷酸变异(SNV)或单核苷酸多态性(SNP)。在本文中,这种类型的失配也称为“s型”失配。然后将读序称为“M失配读序”并分配给“M类”。就像“N类”的情况一样,对于属于“M类”的所有读序而言,将匹配不精确度限制到给定上限并且在被认为有效匹配与被认为无效匹配之间设定分界是有用的。因此,分至M类的读序也通过定义一组阈值而受到约束,一个阈值用于“n型”失配的数目“n”(MAXN)(如果有的话),另一阈值用于替换数“s”(MAXS)。第三约束是由数字“n”和“s”二者的任意函数f(n,s)定义的阈值。这种第三约束使得能够根据任何有意义的选择性访问标准生成具有匹配不精确度的上限的类。例如但不作为限制,f(n,s)可以是(n+s)1/2或(n+s)或任何线性或非线性表达式,它们对属于“M类”的读序所允许的最大匹配不精确度水平设定了边界。当出于各种目的而分析读序时,这样的边界构成了用于对压缩数据应用期望的选择性数据搜索非常有用的标准,因为这使得可以在应用于一种类型或另一种类型的简单阈值之外对“n型”失配的数目“n”和“s型”失配(替换)的数目“s”的任何可能组合设定进一步的边界。
4.第四类由表现出“插入”,“缺失”(也称为indel)和“剪辑”中的任何类型的至少一种失配加上属于N类或M类的任何失配类型(如果有的话)的读序构成。这种序列称为“I失配读序”并被分至“I类”。插入由不存在于参考序列中但存在于读序中的一个或更多个核苷酸的额外序列构成。在本文中,这种类型的失配被称为“i型”失配。在文献中,当插入的序列位于序列的边缘时,它也被称为“软剪辑”(即,核苷酸与参考序列不匹配,但被保留在比对读序中,这与核苷酸被丢弃的“硬剪辑”核苷酸相反)。在本文中,这种类型的失配被称为“c型”失配。保留或丢弃核苷酸是在比对器阶段做出的决定,而不是由本发明中公开的接收和处理由测序机或由随后的比对阶段确定的读序的读序分类器做出的决定。缺失是读序中的相对于参考读序的“空洞”(缺少核苷酸)。在本文中,这种类型的失配被称为“d型”失配。与“N类”和“M类”的情况一样,为匹配不精确度规定一个极限是可能而且恰当的。对“I类”约束集的限定基于“M类”所使用的相同原则并在表1的最后一个表格行中进行了报告。除了I类数据可容许的各种类型的失配的阈值之外,还通过由失配数“n”、“s”、“d”、“i”和“c”的任何函数w(n,s,d,i,c)确定的阈值定义了另一约束。这种附加约束使得可以根据任何有意义的用户定义的选择性访问标准来生成具有匹配不精确度上限的类。例如但不是作为限制,w(n,s,d,i,c)可以是(n+s+d+i+c)1/5或(n+s+d+i+c)或任何线性或非线性表达式,它们对属于“I类”的读序所容许的最大匹配不精确度水平设定了边界。当出于各种目的而分析读序时,这样的边界构成了用对对压缩数据应用期望的选择性数据搜索非常有用的标准,因为这使得可以在应用于各种类型的可容许失配的简单阈值之外对“I类”读序容许的失配数目的任何可能组合设定进一步的边界。
5.第五类包括在对参考序列进行参照时对于每个数据类现在找到任何被认为有效的匹配的所有读序(即,不满足规定了表1指定的最大匹配不精确度的上限的匹配规则集)。当对参考序列进行参照时,这些序列被认为“未映射”,并且被分类为属于“U类”。
根据匹配规则对读序对进行分类
上一节中说明的分类涉及单个读序。在成对地生成读序(其中已知两个读序被长度可变的未知序列分开)的测序技术(即,Illumina Inc.)的情况下,认为将整个读序对分类到单个数据类是合适的。与另一读序成对的读序被称为其“配对读序”。
如果成对读序属于同一类,则对整个读序对的类别的分配是显而易见的:对于任何类(即,P、N、M、I、U),将整个读序对分至同一类。如果两个读序属于不同的类,但它们都不属于“U类”的情况下,则将整个读序对分配至具有根据下式规定的最高优先级的类:
P<N<M<I
其中,“P类”的优先级最低,而“I类”的优先级最高。
如果只有一个读序属于“U类”且其配对读序属于P、N、M、I类中的任何一类,则定义代表“半映射”的第六类“HM类”。
定义这种特定的读序类是想到它可用于试图确定参考基因组中存在的缺口(gap)或未知区域(也称为鲜为人知或未知的区域)。通过使用可以映射在已知区域上的成对读序在边缘处映射读序对来重构这样的区域。然后,使用未映射的配对读序来构造图57所示的未知区域的所谓的“片段重叠群(contigs)”。因此,仅向这种类型的读序对提供选择性访问大大减少了相关的计算负担,从而使得能够更高效地处理在使用现有技术解决方案时将需要完全检查的大量数据集所产生的这种数据。
下表总结了应用于读序的匹配规则,以便定义各个读序所属的数据类。在表的前五列中就失配类型(n型失配、s型失配、d型失配、i型失配和c型失配)的存在或不存在定义了规则。第六列就各个失配类型的最大阈值和可能的失配类型的任何函数f(n,s)和w(n,s,d,i,c)提供了规则。
表1.各个读序必须满足以被分类在本发明公开定义的数据类中的失配类型和约束集将读序的数据类N、M和I划分为具有不同程度的匹配精度的子类的匹配规则
在前面章节中定义的N型、M型和I型数据类可以被进一步分解为具有不同程度的匹配精度的任意数量的不同子类。这样的选项在提供更精细的粒度以及因此提供对每个数据类的更高效的选择性访问方面是重要的技术优点。作为示例而非限制,为了将类N划分为k个子类(子类N1,...,子类Nk),需要定义具有相应分量MAXN1,MAXN2,...,MAXN(k-1),MAXN(k)的向量,其中MAXN1<MAXN2<...<MAXN(k-1)<MAXN,并且当针对该向量的每个元素进行评估时,将每个读序分配给满足表1中规定的约束的最低排名的子类。这在图60中示出,其中,数据分类单元601包含P类、N类、M类、I类、U类、HM类编码器和用于注释和元数据的编码器。N类编码器配置有阈值向量602MAXN1至MAXNk,其于生成N类数据的k个子类(606)。
在M型和I型的类别的情况下,通过分别为MAXM和MAXTOT定义具有相同属性的向量并使用每个向量分量作为阈值来检查函数f(n,s)和w(n,s,d,i,c)是否满足约束条件来应用相同的原理。与N型子类的情况类似,分配被给予满足约束的最低子类。每个类别类型的子类的数量是独立的,并且子类的任何组合都是可容许的。这在图60中示出,其中,M类编码器和I类编码器分别配置有阈值向量(603)MAXM1至MAXMj以及阈值向量(604)MAXTOT1至MAXTOTh。两个编码器分别生成M数据的j个子类(607)和I数据的h个子类(608)。
当一对读序中的两个读序被分类在同一子类中时,则该对读序属于同一子类。
当一对读序中的两个读序被分类到不同类的子类时,则该对读序根据以下表达式属于较高优先级类的子类:
N<M<I
其中,N类的优先级最低,而I类的优先级最高。
当两个读序属于N类或M类或I类中的一类的不同子类时,则该对读序根据以下表达式属于具有最高优先级的子类:
N1<N2<…<Nk
M1<M2<…<Mj
I1<I2<…<Ih
其中,最高索引具有最高优先级。
“外部”参考序列的变换
针对被分类在N类、M类和I类中的读序发现的失配可以用于创建要用于对读序表示进行更高效的压缩的“变换参考”。
被分类为属于N类、M类或I类的读序(相对于被标为RS0的已有(即“外部”)参考序列)可以根据与经变换的参考的实际失配的发生,相对于“经变换的”参考序列RS1进行编码。例如,如果属于M类的读序Min(标示为M类的第i个读序)包含相对于参考序列RSn的失配,则可以用A(Refn)=Refn+1来获得“变换”之后的读序Min=读序Pi(n+1),其中,A是从参考序列RSn到参考序列RSn+1的变换。
图61示出了包含相对于参考序列1(RS1)的失配(属于M类)的读序如何能够通过修改与失配位置相对应的碱基而变换成相对于从RS1获得的参考序列2(RS2)的完全匹配读序的示例。它们保持分类,并且它们与其它读序一起被编码在同一数据类访问单元中,但是仅使用P类读序所需的描述符和描述符值来完成编码。这个变换可以表示为:
RS2=A(RS1)
当在应用于RSi时生成RS2的变换A的表示加上读序相对于RS2的表示与比M类的读序相对于RSi的表示低的熵相对应时,发送变换A的表示和读序相对于RS2的对应表示是有利的,因为实现了数据表示的更高压缩。
用于在压缩比特流中传输的变换A的编码需要定义如下表中所定义的两个附加语法元素。
图62示出了如何应用参考变换来减少要在映射读序上编码的失配的数量的示例。
必须注意,在某些情况下,应用于参考的变换可以是如下情况:
·在读序的表示中引入失配,在应用变换之前,在对参考进行参照时,所述失配是不存在的。
·修改失配的类型,读序可包含A而不是G,而所有其它读序包含C而不是G,但是失配保持在相同的位置。
·不同数据类和每个数据类的数据子集参照同一经变换的参考序列或者参照通过对同一已有参考序列应用不同的变换而获得的参考序列。
图61示出了关于读序如何在应用参考变换并且使用经变换的参考表示读序之后通过恰当的描述符集合将编码类型从一数据类改变到另一数据类(例如,使用P类的描述符来对来自M类的读序进行编码)的示例。例如,当变换改变了读序中实际存在的碱基中的、与读序的失配相对应的所有碱基时,发生这种情况,从而虚拟地将属于M类(当参照最初的非变换的参考序列时)的读序变换为P类(当参照经变换的参考时)虚拟读序。下面的章节提供了用于每个数据类的描述符集合的定义。
图63示出了不同数据类如何使用相同的“经变换的”参考R1=A0(R0)(630)来重新编码读序或者可以分别向每个数据类应用不同的变换AN(631)、AM(632)、AI(633)。
全局参数的基因组数据报头
所述基因组数据的数据结构需要存储要由解码引擎使用的全局参数和元数据。这些数据按下列结构组织:
针对基于文件的存储:
·数据集复用报头
·数据集报头
·描述符层报头
·块报头
这些报头之间的层次关系如图58所示。
针对流传输情况中的传输:
·数据集映射表列表
·数据集映射表
·传输块报头
·分组报头
数据集被定义为重构与单个基因组测序运行和所有以下分析相关的基因组信息所需的编码元件的集合。如果同一基因组样本在两次不同的运行中被测序两次,则所获得的数据将被编码在两个不同的数据集中。
数据集复用报头
这是以在“多重”中聚合的一个或更多个数据集为前缀的数据结构。
这是对编码数据集追加的数据结构。
表2-基因组数据集报头结构。
描述符层报头
描述符(也称为语法元素)在本文的以下章节中进行描述,并且是由本发明描述的基因组信息表示的构造块。它们被组织在根据每个描述符的特定统计属性划分的同种元素的层(也称为描述符流)中。这具有减小每层的熵并提高压缩效率的优点。
每个层的前面是下面描述的描述符层报头。
块报头
每个描述符层由一个或多个基因组数据块构成。根据数据的类,来自不同层的一个或更多个块构成访问单元。
访问单元是基因组块的集合,其可以通过仅使用全局可用的数据(例如,解码器配置)或者通过使用包含在其它访问单元中的信息而独立于其它访问单元进行解码。
对将读序表示到描述符层中所需的信息进行定义
一旦用类的定义完成了对读序的分类,进一步的处理包括定义一组不同的语法元素,该组不同的语法元素表示当DNA读序被表示为映射在给定的参考序列上时能够对DNA读序进行重构的剩余信息。
参照了给定参考序列的读序(例如,DNA片段)可以通过以下方式完全表达:
·参考序列上的起始位置pos(292)。
·表示读序是否必须被认为是相对于参考的反向互补的标志rcomp(293)。
·在成对读序pair(294)的情况下,与配对读序的距离。
·在测序技术产生可变长度读序的情况下,读序长度(295)的值。在固定读序长度的情况下,显然可以省略与每个读序相关联的读序长度,并且可以将读序长度存储在基因组数据集报头中。
·针对每个失配:
o针对N类的失配位置nmis(300)、针对M类的snpp(311)和针对I类的indp(321)
o失配类型(N类中不存在,M类中为snpt(312),I类中为indt(322))
·指示读序的特定特征的标志(296),例如:
o在测序中具有多个片段的模板
o根据比对器正确比对的每个片段
o未映射片段
o模板中的未映射的下一个片段
o第一个片段或最后一个片段的表示(signalization)
o质量控制失败
o PCR或光学重复
o辅比对
o补加比对
·当存在于I类时,软剪辑的核苷酸串(323)
·指示用于比对和压缩(如果适用的话)的参考(例如,针对U类的内部参考)的标志(描述符rtype)。
·针对U类,描述符indc使用一组指定的匹配精度约束来标识读序的与“内部”参考序列不匹配的那些部分(通常是边缘)。
·描述符ureads用于逐字地编码不能被映射到任何可用参考上的读序,所述可用参考是“外部”(即,像实际参考基因组一样预先存在)或“内部”参考序列。
这种分类创建可以用于对基因组读序进行明确表示的描述符(语法元素)组。下表总结了与“已有”(即,“外部”)或“构造的”(即,“内部”)参考进行比对的读序的每个类所需的语法元素。
表3-每数据类定义的层
属于P类的读序被表征,并且可以仅通过位置、反向互补信息和配对读序之间的偏移(在已经通过产生配对读序的测序技术获得的情况下)、一些标记和读序长度来完全重构该读序。
下一节详细描述如何针对P类、N类、M类和I类来定义这些描述符,而在后面的章节中描述如何针对U类定义这些描述符。
HM类仅被应用于读序对,并且这是一种特殊情况,其中一个读序属于P类、N类、M类或I类,而另一个读序属于U类。
位置描述符层
在每个访问单元中,仅第一编码读序的映射位置作为在参考基因组上的绝对位置而存储于AU报头中。所有其它位置被表示为相对于先前位置的差,并且被存储在特定层中。由读序位置序列定义的信息源的这种建模通常以减小的熵为特征,特别是对于生成高覆盖结果的测序处理而言。一旦存储了第一比对的绝对位置,其它读序的所有位置被表示为相对于第一个位置的差(距离)。
例如,图4示出了在将第一比对的起始位置编码为参考序列上的位置"10000"之后,如何将在位置10180处开始的第二读序的位置编码为"180"。对于高覆盖范围数据(>50x),位置向量的大部分描述符将显示非常多的低值,例如0和1以及其它小整数。图10示出了如何将三个读序对的位置编码在pos层中。
针对属于N类、M类、P类和I类的读序的位置使用相同的源模型。为了实现对数据的选择性访问的任何组合,如表1所示,属于四个类的读序的位置被编码在单独的层中。
反向互补描述符层
通过测序技术产生的读序对的每个读序可以源自所测序的有机样本的任一基因组链。然而,仅两条链中的一条用作参考序列。图8示出了在读序对中如何使得一个读序(读序1)源自一个链,而另一个读序(读序2)源自另一个链。
当链1用作参考序列时,读序2可被编码为链1上相应片段的反向互补。这在图9中示出。
在结合读序的情况下,正向和反向互补配对读序对具有四种可能组合。这在图10中示出。rcomp层对四种可能的组合进行编码。
针对属于P类、N类、M类、I类的读序的反向互补信息使用相同的编码。为了使得能够增强对数据的选择性访问,如表3所示,属于四个类的读序的反向互补信息被编码在不同层中。
配对描述符层
配对描述符存储在pair层中。当所采用的测序技术成对地产生读序时,这样的层存储对重构原始读序对所需的信息进行编码的描述符。尽管在本发明公开之日,绝大多数测序数据是使用生成成对读序的技术生成的,但并非所有技术都是如此。这就是如果所考虑的基因组数据的测序技术不生成成对读序信息,则不需要存在该层来重构所有测序数据信息的原因。
定义:
·配对读序:与读序对中的另一读序相关联的读序(例如,读序2是图4的示例中的读序1的配对读序)
·配对距离:参考序列上的核苷酸位置的数目,其将第一读序中的一个位置(配对锚点,例如,第一读序的最后一个核苷酸)与第二读序的一个位置(例如,第二读序的第一个核苷酸)分隔开
·最可能的配对距离(MPPD):这是以核苷酸位置数目表示的最可能的配对距离。
·位置配对距离(PPD):PPD是根据将一个读序与其存在于特定位置描述符层中的相应配对读序分隔开的读序的数目来表达配对距离的方式。
·最可能位置配对距离(MPPPD):是将一个读序与其存在于特定位置描述符层中的配对读序分隔开的读序的最可能的数目。
·位置配对错误(PPE):被定义为MPPD或MPPPD与配对读序的实际位置之间的差。
·配对锚点:读序对中的第一读序的最后一个核苷酸的位置,其被用作参考,以根据核苷酸位置的数目或读序位置的数目来计算配对读序的距离。
图5示出了如何计算读序对之间的配对距离。
pair描述符层是配对错误的向量,配对错误被计算为相对于所定义的解码配对距离要跳过以到达读序对的第一读序的配对读序的读序数目。
图6示出了如何将配对错误计算为绝对值和差分向量(其特征在于高覆盖范围时熵较低)的示例。
针对属于N类、M类、P类和I类的读序的配对信息使用相同的描述符。为了使得能够对不同数据类进行选择性访问,如图所示,属于四个类的读序的配对信息被编码在不同的层中。
射在不同参考上的读序的情况下的配对信息
在将读序映射在参考序列上的处理中,将读序对中的第一读序映射在一个参考(例如,染色体1)上并且将第二读序映射在不同参考(例如,染色体4)上并不罕见。在这种情况下,必须通过与用于映射读序中的一个读序的参考序列相关的附加信息来集成上述配对信息。这是通过编码以下项来实现的:
1.指示读序对被映射在两个不同序列上的保留值(标志)(不同值表示读序1或读序2是否被映射在当前未被编码的序列上)
2.唯一参考标识符,其参考被编码在表2描述的基因组数据集报头结构中的参考标识符。
3.第三元素,其包含参考上的在点2处辨别的并且被表示为相对于最后编码位置的偏移的映射信息。
图7提供了这种情况的示例。
在图7中,由于读序4没有映射在当前编码的参考序列上,因此基因组编码器通过在pair层中构造附加描述符来表示该信息。在图7所示的示例中,读序对2中的读序4被映射在参考no.4上,而当前编码参考是no.1。使用3个分量对这个信息进行编码:
1)一个特殊保留值被编码为配对距离(在这种情况下为0xffffff)
2)第二个描述符提供了基因组数据集报头中所列的参考ID(在本例中为4)。
3)第三元素包含关于相关参考的映射信息(170)。
N类读序的失配描述符
N类包括仅存在“N型”失配的所有读序,在A、C、G或T碱基的位置处,发现N被称为检测的碱基(called base)。读序的所有其它碱基与参考序列完全匹配。
图11示出了如何:
将读序1中的“N”的位置编码为
·读序1中的绝对位置或
·相对于同一读序中的先前的“N”的差分位置。
将读序2中的“N”的位置编码为
·读序2中的绝对位置+读序1的长度,或者
·相对于前个N的差分位置
在nmis层中,每个读序对的编码由特殊“分隔符”符号终止。
编码替换(失配或SNP)
替换被定义为相对于在相同位置存在于参考序列中的核苷酸,在映射读序中存在不同的核苷酸(参见图12)。
每个替换可以被编码为
·“位置”(snpp层)和“类型”(snpt层)。参见图13、图14、图16和图15。
或者
·仅是“位置”,但每失配类型使用一个snpp层。参见图17
替换位置
替换位置被计算为nmis层的值,即:
在读序1中,替换被编码为
·在读序1中的绝对位置,或者
·相对于同一读序中的先前的替换的差分位置,在读序2中编码替换
在读序1中,替换被编码为
·读序2中的绝对位置+读序1的长度,或者
·相对于先前的替换的差分位置,图13示出了如何将替换位置编码在snpp层中。替换位置可以被计算为绝对值或差分值。
在snpp层中,每个读序对的编码由特殊的“分隔符”符号终止。
替换类型描述符
针对M类(以及在下一章节中描述的I类),通过从参考中存在的实际符号到读序中存在的对应替换符号的索引{A、C、G、T、N、Z}(从右向左移动)对失配进行编码。例如,如果比对读序表现出C而不是存在于参考中的相同位置处的T,则失配指数将被标为“4”。解码处理对编码语法元素、参考上的给定位置处的核苷酸进行读取,并从左向右移动以取得解码符号。例如,参考中存在G的位置接收到的“2”将被解码为“N”。图14示出了当不使用IUPAC模糊码时所有可能的替换和相应的编码符号,并且图15提供了在snpt层中对替换类型进行编码的示例。
在存在IUPAC模糊码的情况下,替换索引会如图16所示变化。
在上述替换类型的编码表现出高信息熵的情况下,替换编码的备选方法包括仅在单独的层中存储失配的位置,每个核苷酸一个位置,如图17所示。
插入和缺失的编码
针对I类,通过从参考中存在的实际符号到读序中存在的对应替换符号的索引{A、C、G、T、N、Z}(从右向左移动)对失配和缺失进行编码。例如,如果比对读序表现出C而不是存在于参考中的相同位置处的T,则失配索引将为“4”。在读序表现出缺失的情况下,其中,在参考中存在A,编码符号将是“5”。解码处理对编码语法元素、参考上的给定位置处的核苷酸进行读取,并从左向右移动以取得解码符号。例如,参考中存在G的位置接收到的“3”将被解码为“Z”,这表示在读序中存在缺失。
针对插入的A、C、G、T、N,分别将插入编码为6、7、8、9、10。
在采用IUPAC模糊码的情况下,替换机制结果完全相同,然而,替换向量被扩展为:S={A、C、G、T、N、Z、M、R、W、S、Y、K、V、H、D、B},并且插入使用不同的码:16、17、18、19、20。
图18和图19示出了如何对I类的读序对中的替换、插入和缺失进行编码的示例。
下文参照上面公开的编码元素描述文件格式结构、访问单元和复用。然而,访问单元、文件格式和复用也利用源建模和基因组数据压缩的其它和不同算法产生相同的技术优点。
对“U类”和“HM类”未映射读序的“内部”参考进行构造
在属于U类的读序或“HM类”的未映射读序对的情况下,因为它们不能映射到满足针对属于P类、N类、M类或I类中的任一者的指定匹配精度约束集的任何“外部”参考序列上,所以构造一个或更多个“内部”参考序列并用于属于这些数据类的读序的压缩表示。
有几种方法可以构造恰当的“内部”参考,例如但不限于:
·将非映射读序分割为包含如下读序的群集:该读序共有至少最小尺寸的共同连续基因组序列(签名)。每个群集可以由其签名唯一地标识。
·按任何有意义的顺序(例如,字典式顺序)对读序进行排序,并使用最后N个读序作为对第N+1个读序进行编码的“内部”参考。这种方法在图51中示出。
·对U类读序的子集执行所谓的“从头组装(de-novo assembly)”,以便能够根据指定的匹配精度约束或新的约束集来比对和编码所有或相关的属于所述类的读序的子集。
如果正被编码的读序可被映射到满足指定的匹配精度约束集的“内部”参考上,则使用可为以下类型的语法元素来编码在压缩之后重构读序所需的信息:
1.匹配部分根据内部参考中的读序编号在内部参考上的起始位置(pos层)。这个位置可以被编码为绝对值或相对于先前编码的读序的差分值。
2.起始位置相对于内部参考的相应读序的起点的偏移(pair层)。例如,在固定读序长度的情况下,实际位置是pos*length+pair。
3.可能存在的被编码为失配位置(snpp层)和失配类型(snpt层)的失配
4.读序的与内部参考不匹配(或者与内部参考匹配,但是有超过规定阈值的数量的失配)的那些部分(通常是被读序对辨别的边缘)被编码在indc层中。
如图51所示,可以对所使用的内部参考的一部分的边缘执行填充操作,以减小编码在indc层中的失配的熵。编码器可以根据正在处理的基因组数据的统计特性来选择最恰当的填充策略。可能的填充策略包括:
a.不填充
b.根据在当前编码数据中的频度选择的固定填充模式。
c.与依据最近N个编码读序限定的当前场景的统计特性相应的可变填充模式
填充策略的具体类型将由indc层报头中的特殊值通报
5.指示是否已使用内部自我生成的参考、外部参考或不使用参考对读序进行了编码的标志(rtype层)
6.逐字地被编码的读序(ureads层)。
图51提供了这种编码过程的示例。
图56示出了内部参考上的未映射读序的另选编码,其中,pos+pair语法元素由带符号的pos取代。在这种情况下,pos将按照参考序列上的位置表示读序n的最左侧核苷酸位置相对于读序n-1的最左侧核苷酸位置的距离。
这种编码方法可被扩展以支持每读序N个起始位置,使得可在两个或更多个参考位置处分割读序。这对编码由产生非常长的读序(50K+个碱基)的那些测序技术(例如,来自Pacific Bioscience)产生的读序(通常存在由于测序方法中的循环产生的重复模式)特别有用。同样的方法也可用于编码嵌合读序,嵌合读序被定义为在没有或几乎没有重叠的情况下比对到基因组的两个不同部分的读序。
上述方法显然不仅可以应用于U类,而且可以应用于包含与读序位置相关的语法元素的任意层(pos层)。
文件格式:使用主索引表对基因组数据区域进行选择性访问
为了支持对比对数据的特定区域的选择性访问,本文中描述的数据结构实现了被称为主索引表(MIT)的索引工具。这是多维阵列,其包含特定读序映射在所使用的参考序列上的基因位点。MIT中包含的值是每个pos层中的第一读序的映射位置,从而支持对每个访问单元的非顺序访问。针对每个数据类(P、N、M、I、U和HM)和每个参考序列,MIT包含一个区段。MIT包含在编码数据的基因组数据集报头中。图20示出了基因组数据集报头的结构,图21示出了MIT的通用可视表示,并且图22示出了用于P类编码读序的MIT的示例。
图22中描述的MIT中包含的值用于直接访问压缩域中的关注区域(以及相应的AU)。
例如,参考图22,如果需要访问包括在参考2上的位置150,000与250,000之间的区域,则解码应用将跳到MIT中的第二参考,并且将查找如下的两个值k1和k2:k1<150,000并且k2>250,000。其中,k1和k2是从MIT读取的2个索引。在图22的示例中,这将导致MIT的第二向量的位置3和位置4。这些返回值随后将被解码应用用来从下一节所述的pos层本地索引表中获取恰当数据的位置。
连同指向包含属于上述四类基因组数据的数据的层的指针,MIT可以用作在其生命周期期间添加到基因组数据的附加元数据和/或注释的索引。
本地索引表
上面描述的每个数据层以称为本地报头的数据结构作为前缀。本地报头包含层的唯一标识符、每个参考序列的访问单元计数器的向量、本地索引表(LIT)和可选的一些层特定元数据。LIT是指向属于层净荷中的每个AU的数据的物理位置的指针的向量。图23描绘了通用层报头和净荷,其中,LIT用于以非顺序方式访问编码数据的特定区域。
在先前的示例中,为了访问在参考序列no.2上比对的读序的150,000至250,000的区域,解码应用从MIT取得位置3和位置4。解码处理将使用这些值来访问LIT的相应区段的第3个和第4个元素。在图24所示的示例中,层报头中包含的总访问单元(Total AccessUnit)计数器用于跳过与参考1(示例中为5)相关的AU相关的LIT索引。因此,包含所请求的AU在编码流中的物理位置的索引被计算为:
属于所请求的AU的数据块的位置=属于要跳过的参考1的AU的数据块+使用MIT取得的位置,即,
第一个块位置:5+3=8
最后一个块位置:5+4=9
使用被称为本地索引表的索引机制取得的数据块是所请求的访问单元的一部分。
图26示出了使用MIT和LIT取得的数据块如何构成一个或更多个访问单元。
访问单元
被分类在数据类中并被构造在压缩或未压缩层中的基因组数据被组织为不同的访问单元。
基因组访问单元(AU)被定义为对核苷酸序列和/或相关元数据和/或DNA/RNA序列(例如,虚拟参考)和/或由基因组测序机和/或基因组处理装置或分析应用生成的注释数据进行重构的基因组数据(以压缩或未压缩形式)的区段。图26提供了访问单元的示例。
访问单元是数据块,其可以仅使用全局可用的数据(例如,解码器配置)或者使用包含在其它访问单元中的信息而独立于其它访问单元进行解码。
访问单元的区别在于:
·类型,其表征访问单元携带的基因组数据和数据集的性质以及访问该访问单元的方式。
·顺序,向属于相同类型的访问单元提供唯一的顺序。
可以将任何类型的访问单元进一步分类为不同的“类别”
以下是不同类型的基因组访问单元的定义的非穷尽列表:
1)类型0的访问单元不需要参照来自其它访问单元的任何信息来进行访问或者解码并访问。它们所包含的数据或数据集携带的全部信息可以由解码装置或处理应用独立地读取和处理。
2)类型1的访问单元包含参照由类型0的访问单元携带的数据的数据。对包含在类型1的访问单元中的数据进行读取或解码和处理需要对一个或更多个类型0的访问单元进行访问。类型1的访问单元将与“P类”读序相关的基因组数据编码
3)类型2的访问单元包含参照由类型0的访问单元携带的数据的数据。对包含在类型2的访问单元中的数据进行读取或解码和处理需要对一个或更多个类型0的访问单元进行访问。类型2的访问单元将与“N类”读序相关的基因组数据编码
4)类型3的访问单元包含参照由类型0的访问单元携带的数据的数据。对包含在类型3的访问单元中的数据进行读取或解码和处理需要对一个或更多个类型0的访问单元进行访问。类型3的访问单元将与“N类”读序相关的基因组数据编码
5)类型4的访问单元包含参照由类型0的访问单元携带的数据的数据。对包含在类型4的访问单元中的数据进行读取或解码和处理需要对一个或更多个类型0的访问单元进行访问。类型4的访问单元将与“I类”读序相关的基因组数据编码
6)类型5的访问单元包含无法映射到任何可用参考序列上并使用内部构造的参考序列编码的读序(“U类”)。类型5的访问单元包含参照由类型0的访问单元携带的数据的数据。对包含在类型5的访问单元中的数据进行读取或解码和处理需要对一个或更多个类型0的访问单元进行访问。
7)类型6的访问单元包含读序对,在该读序对中,一个读序可以属于P、N、M、I四个类中的任一者,且另一读序不能映射到任何可用的参考序列上(“HM类”)。类型6的访问单元包含参照由类型0的访问单元携带的数据的数据。对包含在类型6的访问单元中的数据进行读取或解码和处理需要对一个或更多个类型0的访问单元进行访问。
8)类型7的访问单元包含元数据(例如,质量分数)和/或与包含在类型1的访问单元中的数据或数据集相关联的注释数据。可以对类型7的访问单元进行分类并标记在不同层中。
9)类型8的访问单元包含被分类为注释数据的数据或数据集。类型8的访问单元可以按层分类和标记。
10)附加类型的访问单元可以扩展本文描述的结构和机制。作为示例而非限制,基因组变异检测、结构和功能分析的结果可以被编码在新类型的访问单元中。本文描述的访问单元中的数据组织不妨碍把任何类型的数据封装在访问单元中,是对于编码数据的性质而言完全透明的机制。
对类型0的访问单元进行排序(例如,编号),但是它们不需要以有序的方式存储和/或传输(技术优点:并行处理/并行流传输、复用)
类型1、2、3、4、5和6的访问单元不需要排序,并且不需要以有序的方式存储和/或传输(技术优点:并行处理/并行流传输)。
图26示出了访问单元是如何由报头以及一个或更多个同类数据层构成的。每个层可以由一个或更多个块构成。每个块包含几个分组,所述分组是以上介绍的用于表示例如读序位置、配对信息、反向互补信息、失配位置和类型等的描述符的结构化序列。
每个访问单元可以在各个块中具有不同数目的分组,但是在访问单元内,所有块具有相同数目的分组。
每个数据分组可以由3个标识符X、Y、Z的组合来辨别,其中:
·X标识它所属的访问单元
·Y标识其所属的块(即,它封装的数据类型)
·Z是表示相对于同一块中的其它分组的分组顺序的标识符
图28示出了访问单元和分组标记的示例,其中,AU_T_N是具有标识符N的类型T的访问单元,根据访问单元类型,标识符N可以意味着或不意味着顺序的概念。标识符用于将一种类型的访问单元唯一地与完全解码所携带的基因组数据所需的其它类型的访问单元关联起来。
任何类型的访问单元都可以根据不同的测序处理被进一步分类和标记为不同的“类别”。例如但不作为限制,可以在以下时间分类和标记:
1.在不同时间对同一生物体进行测序(访问单元包含具有“时间”含义的基因组信息)
2.对同一生物体的不同性质的有机样本(例如,人体样本的皮肤、血液、头发)进行测序。这些是具有“生物”内涵的范围单元。
类型1、2、3、4、5和6的访问单元s是根据相对于它们所参照的类型0的访问单元中编码的参考序列而应用于基因组序列片段(也称为读序)上的匹配函数的结果来构造的。
例如,类型1的访问单元(AU)(参见图30)可以包含那些读序的位置和反向互补标志,当匹配函数被应用于编码在类型0的AU中的参考序列的特定区域时导致完美匹配(或与所选择的匹配函数相对应的最大可能分数)的那些读序的位置和反向互补标志。连同包含在类型0的AU中的数据,这样的匹配函数信息足以完全重构由类型1的访问单元携带的数据集表示的所有基因组读序。
参照本文先前描述的基因组数据分类,上述类型1的访问单元将包含与P类(完美匹配)基因组读序相关的信息。
在可变读序长度和成对读序的情况下,包含在先前示例中提到的类型1的AU中的数据必须与表示关于读序配对和读序长度的信息的数据进行集成,以便能够完全重构包括读序对关联的基因组数据。关于先前在本文中介绍的数据分类,pair和rlen层将被编码在类型1的AU中。
针对类型1的访问单元应用匹配函数以对类型2、3和4的AU的内容进行分类,所述匹配函数可以提供如下结果:
1.包含在类型1的AU中的每个序列与指定位置对应的类型0的AU中包含的序列完全匹配;
2.类型2的AU中包含的每个序列与指定位置对应的类型0的AU中包含的序列完全匹配,除了存在于类型2的AU的序列中的“N”符号(未被测序装置检测到的碱基)以外;
3.包含在类型3的AU中的每个序列包括相对于与指定位置对应的类型0的AU中包含的序列的替换符号(变异)形式的变异;
4.包含在类型4的AU中的每个序列包括相对于与指定位置对应的类型0的AU中包含的序列的替换符号(变异)、插入和/或缺失形式的变异。
5.包含在类型5的AU中的每个序列不映射包含在类型0的AU中的任何序列。
6.包含在类型6的AU中的每个序列对呈现可以属于P类、N类、M类和I类(上文的点1至点4)中的任一者的一个序列,而另一个序列不映射类型0的AU中包含的任何序列。
类型0的访问单元被排序(例如,编号),但是它们不需要以有序的方式存储和/或传输(技术优点:并行处理/并行流传输、复用)
类型1、2、3、4、5和6的访问单元不需要排序,并且不需要以有序的方式存储和/或传输(技术优点:并行处理/并行流传输)。
使用与特定基因组区域关联的“标签”来标识访问单元
所公开的发明提供了附加机制,该机制使得能够对涉及特定基因组区域或子区域或者区域或子区域的聚合的数据类进行用户定义的选择性访问。
“标签”是分配给特定基因组区域或子区域或者区域或子区域的聚合的标识符。标签通过规定参考序列id(“Ref id”)、与参考序列的期望区域相对应的MIT索引以及数据类来标识基因组区域。图52提供了示例。
标签可以涉及单个数据类、数据类的子集或所有数据类,使得能够仅对与特定基因组区域或子区域或者区域或子区域的聚合相关联的数据的子集进行选择性地访问。
应由基因组标签生成器(图49的4917)在存储情况下和/或在流传输情况下创建标签列表,以向对存储或流传输数据应用选择性访问的分析应用提供可用标签。
标签列表可能包括以下元素:
·标签的数目
·针对列表中的每个标签:
o标签ID
o标签所涉及的参考序列的数目
o针对每个参考序列
■参考标识符
■标签覆盖的区域的数目
·针对每个区域:
·类ID
·在基因组范围内的起始位置
·在基因组范围内的终止位置
下表报告了通用“标签列表”的伪语法。
表4.通用“标签列表”数据格式的语法。
在压缩和流传输基因组数据的情况下,可以通过块报头字段(“标签ID”)使用特定的“标签”来标识一个或更多个访问单元,该块报头字段用作当前块所属于的“标签列表”中的“标签”标识符。这样的字段使得能够将块动态映射到“标签”,通常用于流传输情况。
在基因组文件格式中,“start_pos”和“end_pos”字段可以由关于属于特定“标签”的所有“块”的块编号代替,如下所示:
表5.在压缩文件的情况下,“标签列表”语法数据格式的高效实施
使用块编号代替“start_pos”和“end_pos”表现出了使得能够直接访问“主索引表”(MIT)相关的技术优点,这是因为考虑到“ref_num”、“class_id”和“block_num”构成的三维向量可以用作直接寻址MIT本身的坐标。
在存储情况下,“标签列表”由基因组标签生成器(4917)创建并发送给基因组复用器(也参见图49)。解复用器解析标签列表语法并将可用标签暴露给数据访问应用,数据访问应用根据所需的特定数据访问来选择与“标签”的子集相对应的访问单元。
使用“标签”来标识与特定基因组区域关联的访问单元的可能性不妨碍使用诸如MIT和LIT的索引工具而不使用“标签”来实现随机数据访问功能。可以通过对确定感兴趣的MIT和LIT的坐标(参考id、位置范围和类)的三维向量进行规定并且忽略由标签列表携带的信息来实现基因组随机访问。
图51示出了如何使用标签来利用MIT中包含的索引以聚合和唯一地标识若干基因组区域。
图59示出了实现本发明公开的标记机制的装置(592)如何能够同时访问存储在数据库(595)中的若干数据记录(596)。还通过负责解析查询(591)并将所需元数据分派给负责实施访问控制的安全模块(594)的专用模块(591)来支持对由同一标签标识的一个或更多个区域进行选择性保护。标签解码器(593)负责将标签语法翻译成可以被保护(并且因此由安全模块594控制访问)或不被保护的对象标识符。
技术效果
在由本文所述的标签标识的一个或多个访问单元中将基因组信息结构化的技术效果是可以对基因组数据进行以下操作:
1.选择性地查询,以便进行以下操作:
-在不必解压缩整个基因组数据或数据集和/或相关元数据的情况下,对数据的特定“类别”(例如,具有特定的时间或生物内涵)进行访问。
-在无需解压缩基因组的其它区域的情况下,对所有“类别”、“类别”的子集、单个“类别”的基因组特定区域(有或没有相关元数据)进行访问
-仅通过解析“标签列表”主报头并仅访问(即检索和解压缩)相应的访问单元对由用户定义的“标签”标识的特定基因组区域或子区域或者区域或子区域的聚合进行访问
2.可以在以下情况下使用可用的新数据进行增量更新:
-对基因组数据或数据集进行新的分析
-通过对同一生物体(不同生物样本、相同类型的不同生物样本,例如,血液样本,但是在不同时间获得的等)进行测序来生成新的基因组数据或数据集
3.在以下情况下可以高效地转码为新的数据格式:
-要用作新参考的新基因组数据或数据集(例如,由0型AU携带的新参考基因组)
-更新编码格式规范
4.可以在访问控制和权限执行(permissions enforcement)方面用不同粒度级别来保护(例如,加密)。例如,启用了这些方案:
-可以将相同的访问控制规则和加密密钥应用于由一个标签标识的所有基因组区域或子区域(例如,参见图54);
-可以使用不同的访问控制规则和不同的加密密钥来保护聚合在同一标签下的每个单个区域或子区域(例如,参见图55)。
关于诸如SAM/BAM的现有技术解决方案,所描述的技术特征解决了当已经从编码格式取得和解压缩整个数据时需要在应用级进行数据过滤的问题。
以下是访问单元结构、文件格式和标记机制的关联对于技术优势变得有帮助的应用场景的示例。
选择性访问
具体地,所公开的基于可能包括用户定义的“标签”的不同类型的访问单元的数据结构使得:
-仅提取所有“类别”或子集(即,一个或更多个层)或单个“类别”的整个测序的读序信息(数据或数据集),而无需也解压缩关联的元数据信息(现有技术的限制:SAM/BAM甚至不能支持不同类别或层之间的区分);
-针对所有类别、类别子集、单个类别(具有或不具有关联的元数据),提取在假定参考序列的特定区域上比对的所有读序,而不需要也解压缩基因组的其它区域(现有技术的限制:SAM/BAM);
-针对所有类别、类别子集、单个类别(具有或不具有关联的元数据),提取在由用户指定的“标签”标识的特定基因组区域或子区域或者区域或子区域的聚合上比对的、属于单个、子集或所有数据“类”的所有读序,而不需要也解压缩与基因组的其它区域关联的其它数据(现有技术的限制:SAM/BAM)。
图39示出了如何仅需要对AU 0-2、AU1-2和AU3-2进行解码就能够对映射在具有失配的参考序列(AU 0-2)的第二区段上的基因组信息进行访问。这是根据与映射区域(即参考序列上的位置)相关的标准和与应用于编码读序相对于参考序列的匹配函数(例如,本示例中仅是失配)相关的标准进行选择性访问的示例。
另一技术优点在于,对数据进行查询在数据可访问性和执行速度方面是更加高效的,因为它可以基于仅对所选择的“类别”、较长基因组序列的特定区域以及与所应用的查询的标准相匹配的类型1、2、3、4的访问单元的特定层及其任意组合进行访问和解码。
将类型1、2、3、4的访问单元组织成层允许高效地提取以下核苷酸序列
-相对于一个或更多个参考基因组具有特定的变异(例如,失配、插入、缺失);
-不映射到任何所考虑的参考基因组;
-完全映射到一个或更多个参考基因组上;
-利用一个或更多个精度级别进行映射。
图52示出了如何对仅与用户定义的“标签”所关联的特定基因组区域或子区域或者区域或子区域的聚合相关联的基因组信息进行访问。标签的语法基于三坐标系,其中,与标签相关联的每个区域或子区域可以由以下项唯一地标识:
1.参考ID
2.数据类型(类)
3.MIT中的块数(与基因组区域相对应)。
这三个坐标可以用来标识以下项:
·MIT位置,其包含区域在对应参考上的基因组位置,以及
·LIT位置,其包含表示相应基因组区域或子区域的数据的物理位置。
与访问与指定基因组区域相关的数据的情况一样,另一技术优点在于,对数据进行查询导致在数据可访问性和执行速度方面是更加高效的,因为它可以基于仅对所选择的“类别”、经标记的特定区域以及与所应用的查询的“标签”相对应的类型1、2、3、4的访问单元的特定层及其任意组合进行访问和解码。
这种标记机制的另一技术优点是可以高效地取得编码基因组信息,该编码基因组信息由于其诸如在参考基因组上的位置、关于参考的失配的类型的特征而分散在若干访问单元中(524)。
目前,在使用传统格式(例如BAM和CRAM)时,根据映射读序的特征(例如,完全匹配、仅有替换等)来过滤基因组数据可能需要几个小时。这是因为数据在压缩格式内是稀疏的,并且需要使用命令流水线进行解压缩和过滤。本发明描述了一种使得能够在几秒内进行数据过滤的数据结构。由于本发明不需要对整个文件进行解码(即存储器分配),因此也可以按照与文件大小成比例的倍数(从10x到100x)来减少存储器的使用。
在“存储”和“流传输”情况下对由用户规定的“标签”标识的特定基因组区域进行选择性访问。
例如,假设序列数据被压缩并且需要选择性访问“GeneXY”和“GeneWZ”。必须对与压缩文件格式或压缩流中的"GeneXY"和"GeneWZ"相对应的两个基因组区域进行标记。取决于是生成用于存储的压缩数据文件还是生成用于流传输的压缩数据流,使用两种方法。
在压缩数据文件的情况下,复用器创建“标签列表”,该“标签列表”包括两个标签:“Label_ID”=GeneXY以及“Label_ID”=GeneWZ。复用器基于“GeneXY”和“GeneWZ”区域在参考上的位置以及期望被选择性访问的数据的类来确定标签参数“Label_lenright_in_blocks”和每个块的参数:“ref_num”、“class_ID”、“block_num”。表5报告了完整的语法。
在压缩流的情况下,复用器创建“标签列表”,该“标签列表”包括两个标签:“Label_ID”=GeneXY以及“Label_ID”=GeneWZ。复用器基于“GeneXY”和“GeneWZ”区域在参考上的位置以及期望被选择性访问的数据的类来确定标签参数“ref ID”、“class_ID”、“start_pos”和“end_pos”。表4报告了完整的语法。
在压缩流的情况下使用的方法是通用的,并且也可以在用于存储的压缩文件的情况下使用,但是相应的实施将导致效率较低,因为如在压缩文件的情况下描述的,块编号的使用使得能够直接访问“主索引表”(MIT)。
在上述两种情况下(流传输和存储),由后续的标签标识的基因组数据的检索机制是相同的。
当解析标签时,解码装置将:
1.从标签的第一个元素识别参考序列
2.从标签的第二个元素识别数据类
3.从标签的第三个元素识别MIT的块(与基因组区域相对应)
4.在1和2中解析的两个坐标使得解码器能够识别所需的基因组流(484),
5.每个基因组流以包含LIT(525)的报头开始,LIT(525)包含指向对映射到每个基因组区域的数据进行编码的描述符的指针。在3中解析的第三个坐标用于访问每个基因组流的LIT中的正确指针。
6.即使由解码的基因组标签标识的基因组数据分散在不同的访问单元中(524),解码器也可以高效地检索所有描述符,以解码该基因组数据。
增量更新
类型7和类型8的访问单元容许容易地插入注释,而不需要对整个文件进行拆包/解码/解压缩,从而增加了对文件的高效处理,这是现有技术方法的限制。在可以访问期望的基因组数据之前,现有的压缩解决方案可能必须访问和处理大量压缩数据。在硬件实现中,这将导致低效的RAM带宽利用和更多的功耗。可以通过使用基于本文描述的访问单元的方法来缓解功耗和存储器访问问题。
主索引表(参见图21)中描述的数据索引机制以及对访问单元的利用和用与特定基因组区域或子区域或者区域或子区域的聚合相关联的用户定义的“标签”来标识访问单元的可能性使得能够如下所述地对编码内容进行增量更新。这个机制利用图53中的示例示出。
插入附加数据
出于一些原因,新的基因组信息可以定期地添加到已有的基因组数据中。例如:
·在不同的时刻对生物体进行测序时;
·在同时对同一个体的几个不同样本进行测序时;
·由测序处理(流传输)生成新数据时。
在上述情况下,使用本文描述的访问单元和在文件格式章节中描述的数据结构来结构化数据来使得能够增量地集成新生成的数据,而不需要对已有数据进行重新编码。增量更新处理可以如下实现:
1.新生成的AU可以在文件中简单地与已有的AU连接,并且
2.新生成的数据或数据集的索引被包括在本文的文件格式章节中描述的主索引表中。一个索引将把新生成的AU定位在已有的参考序列上,其它索引包括新生成的AU在物理文件中的指针,以使得能够对新生成的AU进行直接和选择性的访问。
3.可以用与特定基因组区域或子区域或者区域或子区域的聚合相对应的用户定义的“标签”来识别已有和/或新生成的AU,并且可以包括或更新“标签列表”。
这种机制在图40中示出,其中,用具有例如来自针对同一个体的新测序运行的编码数据的每种类型的3个AU对被编码在类型1的3个AU和从类型2至类型4的每种类型的4个AU中的已有数据进行更新。
创建或更新“标签”和“标签列表”的机制如图52和图53所示。
在以压缩形式流传输基因组数据和数据集的特定使用的情况下,当测序机一生成数据便对该数据进行分析时以及在实际测序完成之前,已有数据集的增量更新可能是有用的。编码引擎(压缩器)可以通过对映射在所选参考序列的相同区域上的读序进行“聚类”来并行组装若干AU。一旦第一个AU包含高于预配置的阈值/参数的多个读序,AU就准备好被发送到分析应用。与新编码的访问单元一起,编码引擎(压缩器)应确保新AU所依赖的所有访问单元已被发送到接收端或与其一起被发送。例如,类型3的AU将需要在接收端存在类型0和类型1的适当AU,以便被适当地解码。
借助于所描述的机制,接收变异检测应用将能够在已在发射侧完成测序处理之前在所接收的AU上开始检测变异。这种处理的示意图如图41所示。
对结果进行新的分析
在基因组处理生命周期期间,可以将基因组分析的若干次迭代应用于相同的数据(例如,使用不同处理算法的不同变异检测)。使用在本文中定义的AU和本文的文件格式章节中描述的数据结构使得能够利用新分析的结果对已有压缩数据进行增量更新。
例如,对已有压缩数据执行的新分析可以在这些情况下产生新数据:
1.新的分析可以修改已经与编码数据关联的已有结果。图42描绘了这种使用情况,它是通过将一个访问单元的内容完全地或部分地从一种类型移动到另一种类型来实现的。在需要创建新AU的情况下(由于每AU预定义的最大大小),必须创建主索引表中的相关索引,并且在需要时对相关向量进行整理。
2.新数据从新分析中产生,并且必须与已有编码数据相关联。在这种情况下,可以产生类型7的新AU并且将其与同一类型的AU的已有向量连接。图43描绘了这种情况以及主索引表的相关更新。
上文描述的以及图42和图43描绘的使用情况通过以下方式启用:
1.仅对具有较差映射质量的数据(例如,类型4的AU)进行直接访问的可能性;
2.通过简单地创建可能属于新类型的新访问单元来将读序重新映射到新基因组区域(例如,包括在类型4的AU中的读序可以被重新映射到具有较少失配的新区域(类型2-类型3)并且被包括在新创建的AU中)的可能性;
3.创建仅包含新创建的分析结果和/或相关注释的类型8的AU(433)的可能性。在这种情况下,新创建的AU只需要包含指向它们所参照的已有AU的“指针”。
4.在单个运行中对由同一标签标识的若干基因组区域和子区域进行新分析,而不需要对每个单个基因组区域或子区域重复该分析的可能性。本文中描述的标签将使用户能够操纵不连续的基因组片段,就好像它们是单个基因组序列一样。
5.用新的分析结果对由单个标签标识的若干基因组区域或子区域进行更新的可能性。新的结果(通常以元数据的形式表示)将与对潜在的若干基因组区域和子区域的聚合进行标识的标签链接,而不需要创建从结果到每个基因组区域或子区域的若干链接。
转码
例如,在以下情况下,可能需要对压缩基因组数据进行转码:
·新参考序列的公布;
·不同映射算法(重新映射)的使用。
当基因组数据被映射到已有的公共参考基因组上时,发布所述参考序列的新版本或期望使用不同的处理算法来映射数据目前需要重新映射的处理。当使用现有技术的文件格式(例如SAM或CRAM)重新映射压缩数据时,必须将整个压缩数据解压缩成其“原始”形式,以再次参考新的可用参考序列或使用不同的映射算法来进行映射。这是准确的,即使新发布的参考仅与先前略有不同,或者所使用的不同映射算法产生与先前映射非常接近(或相同)的映射。
对使用本文描述的访问单元构造的基因组数据进行转码的优点在于:
1.相对于新的参考基因组的映射仅需要对映射在具有变化的基因组区域上的AU的数据进行重新编码(解压缩和压缩)。另外,用户可以选择由于任何原因可能需要重新映射的那些压缩读序,即使它们原来没有映射到改变的区域上(如果用户认为先前的映射质量差,则这可能发生)。图44描绘了这种使用情况。
2.在新公布的参考基因组仅因为整个区域移位到不同基因组位置(“基因位点”)而与以前不同的情况下,转码操作是特别简单且高效的。实际上,为了移动映射到“移位”区域的所有读序,仅改变相关AU报头(集合)中包含的绝对位置的值就足够了。每个AU报头包含AU中所包含的第一读序被映射到参考序列上的绝对位置,而所有其它读序位置相对于第一读序位置被不同地编码。因此,通过简单地更新第一读序的绝对位置的值,可以相应地移动AU中的所有读序。这种机制不能通过诸如CRAM和BAM的现有技术方法实现,因为基因组数据位置被编码在压缩的净荷中,因此需要对所有基因组数据集进行完全解压缩和重新压缩。
3.当使用不同的映射算法时,可以仅将该映射算法应用于被认为以映射质量较差的压缩读序的部分。例如,仅对在参考基因组上不完全匹配的读序应用新的映射算法是恰当的。利用目前的现有格式,不可能(或者具有某些限制的情况下只是部分可能)根据读序的映射质量(即,失配的存在与数目)来提取读序。如果新的映射工具返回新的映射结果,则可以将相关读序从一个AU转码到同一类型的另一个AU中(图46)或者从一种类型的一个AU转码到另一种类型的AU中(图45)。
此外,现有技术的压缩解决方案可能必须在可以访问期望的基因组数据之前访问和处理大量的压缩数据。在硬件实现中,这将导致低效的RAM带宽利用和更多的功耗。可以通过使用基于本文描述的访问单元的方法来缓解功耗和存储器访问问题。
采用本文描述的基因组访问单元的另一优点是便于并行处理和适合于硬件实现。诸如SAM/BAM和CRAM的当前解决方案被设想用于单线程软件实现。
选择性保护
基于本文所描述的按若干类型和层组织的访问单元的方法使得能够实现内容保护机制,而现有技术的单体解决方案是不可能的。
本领域技术人员知道,与生物体的遗传图谱相关的大多数基因组信息依赖于相对于已知序列(例如,参考基因组或基因组群)的差异(变异)。要被保护以免于未授权访问的个体遗传图谱将因此被编码在本文所描述的类型3和类型4的访问单元中。因此,可以通过仅对类型3和类型4的AU的净荷进行加密来实现对由测序和分析处理产生的大部分可感测基因组信息的受控访问(例如,参见图47)。这将在处理功率和带宽方面产生显著的节省,因为消耗资源的加密处理将仅应用于数据子集。
对由“标签”标识的特定基因组区域进行选择性保护
标记机制实现了数据保护和访问控制的不同机制。例如,图54示出了如何将一个保护机制(例如,加密)和一个访问控制规则(AC)应用于由同一标签标识的若干基因组区域。在更复杂的情况下,可以通过将不同的访问控制规则和不同的保护机制(加密)应用于由标签标识的每个区域来实现数据保护。这在图55中示出。
此外,通过仅对与用于文件和流传输情况的“标签”相对应的压缩数据应用加密,可以容易地实现对由不同“标签”标识的基因组区域或子区域或者区域或子区域的聚合的选择性加密。例如,像章节“在“存储”和“流传输”情况下对由用户规定的“标签”标识的特定基因组区域进行选择性访问”的示例中那样被标记为“GeneXY”和“GeneWZ”的两个基因组区域可以通过以下方式进行区分:仅加密被“GeneXY”标记的数据并使被“GeneWZ”标记的压缩数据处于未加密状态。加密规则可以由元数据字段携带(在存储和流传输情况下),并与“标签列表”的每个元素相关联。
基因组访问单元的传输
基因组数据复用
基因组访问单元可以在基因组数据复用(Genomic Data Multiplex)内经由通信网络进行传输。基因组数据复用被定义为在可能发生诸如分组丢失的错误的网络环境中发送的、根据作为本发明的一部分公开的数据分类表示的分组化基因组数据和元数据的序列。
基因组数据复用被设想为在不同环境(典型地,网络环境)简化和提供更高效的基因组编码数据的传输,并且具有在现有技术解决方案中不存在的以下优点:
1.它使得能够将由编码工具生成的基因组数据的流或序列(下面描述)或基因组文件格式封装到一个或更多个基因组数据复用中,以便通过网络环境携带它,然后恢复有效且相同的流或文件格式,以便使传输和对信息的访问更高效。
2.它使得能够从封装的基因组数据流中选择性地取得编码的基因组数据,以用于解码和呈现。
3.它使得能够将若干基因组数据集复用到单个信息容器中以供传输,并且它使得能够将所携带的信息的子集解复用到新的基因组数据复用体中。
4.它使得能够复用由不同源(在后续单独访问的情况下)和/或测序/分析处理产生的数据和元数据,并且通过网络环境发送所得到的基因组数据复用体。
5.它支持对诸如分组丢失的错误的识别。
6.它支持由于网络延迟而可能乱序到达的、适当地重新排序的数据,因此与现有技术的解决方案相比,使得基因组数据的传输更高效。
图49示出了基因组数据复用的示例。
基因组数据集
在本发明的语境中,基因组数据集被定义为基因组数据的结构化集合,其包括例如生物体的基因组数据、由基因组数据处理的若干步骤生成的一个或更多个序列和元数据或者生物体的基因组测序的结果。一个基因组数据复用体可以包括多个基因组数据集(在多通道情况下),其中,每个数据集涉及不同的生物体。若干数据集到单个基因组数据复用体的复用机制由包含在被称为基因组数据集列表(GDL)、基因组数据集映射表列表(GDMTL)和基因组数据集映射表(GDMT)的数据结构中的信息支配。
基因组数据集列表
基因组数据集列表(GDL)被定义为列出在基因组数据复用体中可用的所有基因组数据集的数据结构。每个列出的基因组数据集通过被称为基因组数据集ID(GID)的唯一值来标识。
在GDL中列出的每个基因组数据集与以下项关联:
·携带一个基因组数据集映射表(GDMT)并由流ID的特定值(genomic_dataset_map_SID)标识的一个基因组数据流;
·携带一个参考ID映射表(RIDMT)并由流ID的特定值(reference_id_map_SID)标识的一个基因组数据流。
在基因组数据流传输开始时发送GDL作为单个传输分组的净荷;然后,可以定期地重复发送该GDL,以便能够随机访问所述流。
下表提供了GDL数据结构的语法,其中,表示了与每个语法元素相关联的数据类型。
构成上述GDL的语法元素具有以下含义和功能。
基因组数据集映射表
在流传输处理开始时生成并发送基因组数据集映射表(GDMT)(并且可能定期地重复发送(更新的或相同的),以使得能够更新流传输的数据中的对应点和相关依赖性)。GDMT由基因组数据集列表后的单个分组携带,并列出了标识构成一个基因组数据集的基因组数据流的SID。GDMT是构成由基因组复用体携带的一个基因组数据集的基因组数据流(例如,基因组序列、参考基因组、元数据等)的所有标识符的完整集合。基因组数据集映射表通过提供与每个基因组数据集相关联的基因组数据流的标识符来有助于实现基因组序列的随机访问。
下表提供了GDMT数据结构的语法,其中,表示了与每个语法元素相关联的数据类型。
构成上述GDMT的语法元素具有以下含义和功能。
extension_field是可选描述符,其可以用于进一步描述基因组数据集或一个基因组数据集分量。
data_type字段可以具有以下值
data_type 说明
0 数据集报头
1 层报头
2到15 用户定义的扩展
16到N 16+Descriptors_Layer_ID
基因组数据集映射表列表
这个结构携带有关与基因组数据集复用体相关的所有数据集映射表的信息。
参考ID映射表
在流传输处理开始时生成并发送参考ID映射表(RIDMT)。RIDMT由基因组数据集列表之后的单个分组携带。RIDMT规定了访问单元的块报头中包含的参考序列数字标识符(REFID)与表2中规定的基因组数据集报头中包含的(通常是文字的)参考标识符之间的映射。
可以定期地重复发送RIDMT,以便:
·允许更新流传输的数据中的对应点和相关依赖性,
·支持添加到已有参考序列的新参考序列的集成(例如,由从头组装处理创建的合成参考)
下表提供了RIDMT数据结构的语法,其中,表示了与每个语法元素相关联的数据类型。
构成上述RIDMT的语法元素具有以下含义和功能。
基因组标签列表
如上所述,标签是分配给特定基因组区域或子区域或者区域或子区域的聚合的标识符。
标签通过对参考序列id、关于参考序列的位置范围和它们标识的数据类进行规定来标识基因组区域。
为此目的,在分组化处理期间由复用器创建基因组标签列表(GLL)并发送。
解复用器的解分组器解析GLL语法并将可用的“标签”暴露于数据访问应用,该数据访问应用有可能选择和访问所需的数据子集。
GLL(可选地)在流的开始处生成和发送,并且通常定期地发送以便启用多个同步点(4811),并且提供与由multiplex_id和dataset_id字段标识的复用体和数据集相关联的“标签”列表。
下表提供了GLL数据结构的语法,其中,表示了与每个语法元素相关联的数据类型。
表6.流传输压缩数据情况下的“标签列表”数据格式的完整语法
构成上述GLL的语法元素具有以下含义和功能。
表7.表6的语法元素的描述
基因组数据流
基因组数据复用体包含一个或多个基因组数据流,其中,每个流可以传输以下项:
·包含传输信息(例如,基因组数据集列表、基因组数据集映射表等)的数据结构
·属于本发明描述的基因组数据层中的一个层的数据
·与基因组数据有关的元数据
·任何其它数据
包含基因组数据的基因组数据流本质上是基因组数据层的分组化版本,其中,每个分组前面都有对分组内容以及它如何与复用体的其它元素关联起来进行描述的报头。
本文描述的基因组数据流格式和本文描述的文件格式是可相互转换的。然而,只有在收到所有数据后才能完全地重构完整的文件格式,在流传输的情况下,解码工具可以重构和访问,并随时开始处理部分数据。
基因组数据流由若干基因组数据块构成,每个基因组数据块包含一个或更多个基因组数据分组。基因组数据块(GDB)是构成一个基因组AU的基因组信息的容器。根据通信信道要求,GDB可以分成若干基因组数据分组。
基因组访问单元由属于不同基因组数据流的一个或更多个基因组数据块构成。
基因组数据分组(GDP)是构成一个GDB的传输单元。通常根据通信信道要求来设置分组大小。
图27示出了当对属于本发明定义的P类的数据进行编码时,基因组复用体、流、访问单元、块和分组之间的关系。在本示例中,三个基因组流对关于读序的位置、配对和反向互补的信息进行封装。
基因组数据块由报头、压缩数据的净荷和填充信息构成。
下表提供了GDB报头的实现示例,其中,描述了每个字段的描述和典型的数据类型。
表8.基因组数据块语法元素的描述
使用AUID、POS和BS使得解码器能够重构在本发明中称为主索引表(MIT)和本地索引表(LIT)的数据索引机制。在数据流传输情况下,使用AUID和BS使得接收端能够在本地动态地重新创建LIT,而无需发送额外数据。使用AUID、BS和POS将能够在本地重新创建MIT,而无需发送额外数据。
这具有以下技术优势:
·减少在发送整个LIT的情况下可能很大的编码开销;
·避免基因组位置与访问单元之间的完整映射的需要,这在流传输情况下通常不可用
根据网络层约束(例如,最大分组大小、分组丢失率等),基因组数据块可以被分成一个或更多个基因组数据分组。基因组数据分组由下表所述的编码或加密基因组数据的净荷和报头构成。
表9.基因组数据分组语法元素的描述
只有在接收到至少一个基因组数据集列表、一个基因组数据集映射表和一个参考ID映射表时,才能正确解码基因组复用体,从而容许将每个分组映射到特定的基因组数据集分量。
基因组分组报头
根据信道要求(例如,分组丢失率、协议最大分组大小等),每个基因组数据块可以分割成能够在基因组数据分组的净荷中传输的片段。
基因组数据分组定义如下。
复用编码处理
图49示出了如何在按照本发明呈现的数据结构进行变换之前,将原始基因组序列数据映射(491)在一个或更多个已知先验的参考序列(4920)上。在参考序列不可用的情况下,可以从原始序列数据构建“构造的”参考(492)。已经比对的数据可以重新进行比对,以减小信息熵。在比对之后,基因组分类器(494)根据表1描述的匹配函数创建数据类,并从基因组序列中分离元数据(例如质量值)和注释数据。可以在外部参考(4920)上应用参考变换(4919),以便进一步减小所生成的数据类(498)的熵。将变换后的数据类(4918)馈送到层编码器(495-497),以产生基因组层(491),然后由熵编码器(4912-4914)对其进行编码。然后将由熵编码器生成的基因组流发送到生成基因组复用体的基因组复用器(4916)。由基因组标签生成器(4917)生成的基因组标签可以通过复用器(4916)与基因组流(4915)相关联。

Claims (21)

1.一种通过采用标签来对基因组数据的区域进行选择性访问的方法,所述标签包括:参考基因组序列的标识符(521);所述基因组区域的标识符(522);以及所述基因组数据的数据类的标识符(523)。
2.根据权利要求1所述的方法,其中,所述基因组数据是基因组读序。
3.根据权利要求2所述的方法,其中,所述数据类能够是以下类型或以下类型的子集:
-“P类”,其包含不存在相对于参考序列的任何失配的基因组读序;
-“N类”,其包含仅包括测序机无法检测到任何“碱基”的位置处的失配并且所述失配的数目不超过给定阈值的基因组读序;
-“M类”,其包含失配由下述位置构成的基因组读序:测序机无法检测到任何碱基的位置,这称为“n型”失配;和/或所述测序机检测到与参考序列不同的碱基的位置,这称为“s型”失配,并且在该基因组读序中,失配的数目不超过“n型”失配和“s型”失配的给定阈值以及从给定函数(f(n,s))获得的阈值;
-“I类”,所述基因组读序可能具有“M类”的相同类型失配,并且具有“插入”(“i型”)、“缺失”(“d型”)、软剪辑(“c型”)中的至少一个类型的失配时,并且其中,每种类型的失配的数目不超过对应的给定阈值和由给定函数(w(n,s,i,d,c))提供的阈值;
-“U类”,其包括所有不能分类到P类、N类、M类、I类中的读序。
4.根据权利要求2所述的方法,其中,所述基因组数据是成对的基因组读序。
5.根据权利要求4所述的方法,其中,成对读序的所述数据类可以是以下类型或它们的子集:
-“P类”,其包含不存在相对于参考序列的任何失配的基因组读序对;
-“N类”,其包含仅包括测序机无法检测到任何“碱基”的位置处的失配并且各个读序的失配的数目不超过给定阈值的基因组读序;
-“M类”,其包含仅具有如下位置处的失配的基因组读序对:测序机无法检测到任何碱基的位置,并且各个读序的失配数目不超过给定阈值,这称为“n型”失配;和/或所述测序机检测到与参考序列不同的碱基的位置,这称为“s型”失配,并且,失配数目不超过“n型”和“s型”的失配数目的给定阈值以及从给定函数(f(n,s))获得的阈值;
-“I类”,其包含如下的读序对:该读序对可能具有“M类”读序对的相同类型失配,并且具有“插入”(“i型”)、“缺失”(“d型”)、软剪辑(“c型”)中的至少一个类型的失配,并且其中,每种类型的失配数目不超过对应的给定阈值和由给定函数(w(n,s,i,d,c))提供的阈值;
-“HM类”,其包含仅一个配对读序不满足分类到P类、N类、M类、I类中的任何类的匹配规则的读序对;
-“U类”,其包含两个读序都不满足分类到P类、N类、M类、I类的匹配规则的所有读序对。
6.根据权利要求3和5所述的方法,其中,所述基因组区域的所述标识符包括在主索引表中。
7.根据权利要求6所述的方法,其中,所述基因组数据和所述标签被熵编码。
8.根据权利要求7所述的方法,其中,所述主索引表(4812)被包括在基因组数据集报头(4813)中。
9.根据权利要求1-8所述的方法,其中,所述基因组数据区域分散在单独的访问单元(524、486)中。
10.根据权利要求9所述的方法,其中,在本地索引表(525)中指示所述基因组数据区域在文件中的位置。
11.根据前述权利要求1-10中任一项所述的方法,其中,所述标签是用户规定的。
12.根据前述权利要求1-11中任一项所述的方法,其中,所述区域是单独地保护和/或加密的,而不对整个基因组文件进行加密。
13.根据前述权利要求1-12中任一项所述的方法,其中,所述标签存储在基因组标签列表(GLL)中。
14.一种对基因组数据进行编码的方法,其中,在该方法中能够如权利要求1-13所述对基因组数据的区域进行选择性访问。
15.根据权利要求14所述的方法,其中,所述基因组标签列表被定期地重传或更新,以便能够实现多个同步点。
16.一种对基因组数据的流或文件进行解码的方法,其中,在该方法中能够如权利要求1-13和15所述对基因组数据的区域进行选择性访问。
17.一种用于如权利要求14和15所述对基因组数据进行编码的装置。
18.一种用于如权利要求16所述的基因组数据进行解码的装置。
19.一种用于存储根据权利要求14和15编码的基因组数据的存储装置。
20.一种包含指令的计算机可读介质,该指令在被执行时使得至少一个处理器执行权利要求14和15中任一项所述的编码方法。
21.一种包含指令的计算机可读介质,该指令在被执行时使得至少一个处理器执行权利要求16任一项所述的解码方法。
CN201780062919.5A 2016-10-11 2017-02-14 用于选择性访问存储的或传输的生物信息数据的方法和系统 Pending CN110168651A (zh)

Applications Claiming Priority (9)

Application Number Priority Date Filing Date Title
PCT/EP2016/074301 WO2018068828A1 (en) 2016-10-11 2016-10-11 Method and system for storing and accessing bioinformatics data
EPPCT/EP2016/074301 2016-10-11
EPPCT/EP2016/074307 2016-10-11
EPPCT/EP2016/074311 2016-10-11
PCT/EP2016/074307 WO2018068829A1 (en) 2016-10-11 2016-10-11 Method and apparatus for compact representation of bioinformatics data
EPPCT/EP2016/074297 2016-10-11
PCT/EP2016/074311 WO2018068830A1 (en) 2016-10-11 2016-10-11 Method and system for the transmission of bioinformatics data
PCT/EP2016/074297 WO2018068827A1 (en) 2016-10-11 2016-10-11 Efficient data structures for bioinformatics information representation
PCT/US2017/017841 WO2018071054A1 (en) 2016-10-11 2017-02-14 Method and system for selective access of stored or transmitted bioinformatics data

Publications (1)

Publication Number Publication Date
CN110168651A true CN110168651A (zh) 2019-08-23

Family

ID=61905752

Family Applications (6)

Application Number Title Priority Date Filing Date
CN201780062919.5A Pending CN110168651A (zh) 2016-10-11 2017-02-14 用于选择性访问存储的或传输的生物信息数据的方法和系统
CN201780063014.XA Active CN110121577B (zh) 2016-10-11 2017-07-11 编码/解码基因组序列数据的方法、基因组编码器/解码器
CN201780062885.XA Active CN110114830B (zh) 2016-10-11 2017-07-11 用于生物信息数据索引的方法和系统
CN201780063013.5A Active CN110506272B (zh) 2016-10-11 2017-07-11 用于访问以访问单元结构化的生物信息数据的方法和装置
CN201780086529.1A Active CN110603595B (zh) 2016-10-11 2017-12-14 用于从压缩的基因组序列读段重建基因组参考序列的方法和系统
CN201780086770.4A Active CN110678929B (zh) 2016-10-11 2017-12-15 用于高效压缩基因组序列读段的方法和系统

Family Applications After (5)

Application Number Title Priority Date Filing Date
CN201780063014.XA Active CN110121577B (zh) 2016-10-11 2017-07-11 编码/解码基因组序列数据的方法、基因组编码器/解码器
CN201780062885.XA Active CN110114830B (zh) 2016-10-11 2017-07-11 用于生物信息数据索引的方法和系统
CN201780063013.5A Active CN110506272B (zh) 2016-10-11 2017-07-11 用于访问以访问单元结构化的生物信息数据的方法和装置
CN201780086529.1A Active CN110603595B (zh) 2016-10-11 2017-12-14 用于从压缩的基因组序列读段重建基因组参考序列的方法和系统
CN201780086770.4A Active CN110678929B (zh) 2016-10-11 2017-12-15 用于高效压缩基因组序列读段的方法和系统

Country Status (17)

Country Link
US (6) US20200042735A1 (zh)
EP (3) EP3526694A4 (zh)
JP (4) JP2020505702A (zh)
KR (4) KR20190073426A (zh)
CN (6) CN110168651A (zh)
AU (3) AU2017342688A1 (zh)
BR (7) BR112019007359A2 (zh)
CA (3) CA3040138A1 (zh)
CL (6) CL2019000968A1 (zh)
CO (6) CO2019003638A2 (zh)
EA (2) EA201990916A1 (zh)
IL (3) IL265879B2 (zh)
MX (2) MX2019004130A (zh)
PE (7) PE20191058A1 (zh)
PH (6) PH12019550060A1 (zh)
SG (3) SG11201903270RA (zh)
WO (4) WO2018071054A1 (zh)

Cited By (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN110797087A (zh) * 2019-10-17 2020-02-14 南京医基云医疗数据研究院有限公司 测序序列处理方法及装置、存储介质、电子设备
CN113643761A (zh) * 2021-10-13 2021-11-12 苏州赛美科基因科技有限公司 一种用于解读二代测序结果所需数据的提取方法

Families Citing this family (25)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
GB2526598B (en) * 2014-05-29 2018-11-28 Imagination Tech Ltd Allocation of primitives to primitive blocks
US11574287B2 (en) 2017-10-10 2023-02-07 Text IQ, Inc. Automatic document classification
US11030324B2 (en) * 2017-11-30 2021-06-08 Koninklijke Philips N.V. Proactive resistance to re-identification of genomic data
WO2019191083A1 (en) * 2018-03-26 2019-10-03 Colorado State University Research Foundation Apparatuses, systems and methods for generating and tracking molecular digital signatures to ensure authenticity and integrity of synthetic dna molecules
MX2020012672A (es) * 2018-05-31 2021-02-09 Koninklijke Philips Nv Sistema y metodo para interpretacion de alelos usando un genoma de referencia basado en graficos.
CN108753765B (zh) * 2018-06-08 2020-12-08 中国科学院遗传与发育生物学研究所 一种构建超长连续dna序列的基因组组装方法
US20200058379A1 (en) * 2018-08-20 2020-02-20 The Board Of Trustees Of The Leland Stanford Junior University Systems and Methods for Compressing Genetic Sequencing Data and Uses Thereof
GB2585816A (en) * 2018-12-12 2021-01-27 Univ York Proof-of-work for blockchain applications
US20210074381A1 (en) * 2019-09-11 2021-03-11 Enancio Method for the compression of genome sequence data
JP2022553199A (ja) 2019-10-18 2022-12-22 コーニンクレッカ フィリップス エヌ ヴェ 多様な表形式データの効果的な圧縮、表現、および展開のためのシステムおよび方法
CN111243663B (zh) * 2020-02-26 2022-06-07 西安交通大学 一种基于模式增长算法的基因变异检测方法
CN111370070B (zh) * 2020-02-27 2023-10-27 中国科学院计算技术研究所 一种针对大数据基因测序文件的压缩处理方法
US20210295949A1 (en) * 2020-03-17 2021-09-23 Western Digital Technologies, Inc. Devices and methods for locating a sample read in a reference genome
US11837330B2 (en) 2020-03-18 2023-12-05 Western Digital Technologies, Inc. Reference-guided genome sequencing
EP3896698A1 (en) * 2020-04-15 2021-10-20 Genomsys SA Method and system for the efficient data compression in mpeg-g
CN111459208A (zh) * 2020-04-17 2020-07-28 南京铁道职业技术学院 针对地铁供电系统电能的操纵系统及其方法
AU2021342166A1 (en) * 2020-09-14 2023-01-05 Illumina, Inc. Custom data files for personalized medicine
CN112836355B (zh) * 2021-01-14 2023-04-18 西安科技大学 一种预测采煤工作面顶板来压概率的方法
ES2930699A1 (es) * 2021-06-10 2022-12-20 Veritas Intercontinental S L Metodo de analisis genomico en una plataforma bioinformatica
CN113670643B (zh) * 2021-08-30 2023-05-12 四川虹美智能科技有限公司 智能空调测试方法及系统
US20230187020A1 (en) * 2021-12-15 2023-06-15 Illumina Software, Inc. Systems and methods for iterative and scalable population-scale variant analysis
CN115391284B (zh) * 2022-10-31 2023-02-03 四川大学华西医院 基因数据文件快速识别方法、系统和计算机可读存储介质
CN116541348B (zh) * 2023-03-22 2023-09-26 河北热点科技股份有限公司 数据智能存储方法及终端查询一体机
CN116739646B (zh) * 2023-08-15 2023-11-24 南京易联阳光信息技术股份有限公司 网络交易大数据分析方法及分析系统
CN117153270B (zh) * 2023-10-30 2024-02-02 吉林华瑞基因科技有限公司 一种基因二代测序数据处理方法

Citations (7)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
EP2608096A2 (en) * 2011-12-24 2013-06-26 Tata Consultancy Services Ltd. Compression of genomic data file
CN103329138A (zh) * 2011-01-19 2013-09-25 皇家飞利浦电子股份有限公司 用于处理基因组数据的方法
CN103336916A (zh) * 2013-07-05 2013-10-02 中国科学院数学与系统科学研究院 一种测序序列映射方法及系统
CN104094266A (zh) * 2011-11-07 2014-10-08 独创系统公司 用于识别原因性基因组变体的方法和系统
WO2015081754A1 (en) * 2013-12-06 2015-06-11 International Business Machines Corporation Genome compression and decompression
WO2015127058A1 (en) * 2014-02-19 2015-08-27 Hospodor Andrew Efficient encoding and storage and retrieval of genomic data
US20160080528A1 (en) * 2014-09-12 2016-03-17 New York University System, method and computer-accessible medium for secure and compressed transmission of genomic data

Family Cites Families (47)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US6303297B1 (en) * 1992-07-17 2001-10-16 Incyte Pharmaceuticals, Inc. Database for storage and analysis of full-length sequences
JP3429674B2 (ja) 1998-04-28 2003-07-22 沖電気工業株式会社 多重通信システム
EP1410301A4 (en) * 2000-04-12 2008-01-23 Cleveland Clinic Foundation SYSTEM FOR IDENTIFYING AND ANALYZING GENE EXPRESSION CONTAINING ELEMENTS RICH IN ADENYLATE URIDYLATE (ARE)
FR2820563B1 (fr) * 2001-02-02 2003-05-16 Expway Procede de compression/decompression d'un document structure
US20040153255A1 (en) * 2003-02-03 2004-08-05 Ahn Tae-Jin Apparatus and method for encoding DNA sequence, and computer readable medium
DE10320711A1 (de) * 2003-05-08 2004-12-16 Siemens Ag Verfahren und Anordnung zur Einrichtung und Aktualisierung einer Benutzeroberfläche zum Zugriff auf Informationsseiten in einem Datennetz
WO2005024562A2 (en) * 2003-08-11 2005-03-17 Eloret Corporation System and method for pattern recognition in sequential data
US7805282B2 (en) * 2004-03-30 2010-09-28 New York University Process, software arrangement and computer-accessible medium for obtaining information associated with a haplotype
US8340914B2 (en) * 2004-11-08 2012-12-25 Gatewood Joe M Methods and systems for compressing and comparing genomic data
US20130332133A1 (en) * 2006-05-11 2013-12-12 Ramot At Tel Aviv University Ltd. Classification of Protein Sequences and Uses of Classified Proteins
SE531398C2 (sv) 2007-02-16 2009-03-24 Scalado Ab Generering av en dataström och identifiering av positioner inuti en dataström
KR101369745B1 (ko) * 2007-04-11 2014-03-07 삼성전자주식회사 비동기화된 비트스트림들의 다중화 및 역다중화 방법 및장치
US8832112B2 (en) * 2008-06-17 2014-09-09 International Business Machines Corporation Encoded matrix index
GB2477703A (en) * 2008-11-14 2011-08-10 Real Time Genomics Inc A method and system for analysing data sequences
US20100217532A1 (en) * 2009-02-25 2010-08-26 University Of Delaware Systems and methods for identifying structurally or functionally significant amino acid sequences
DK2494060T3 (en) * 2009-10-30 2016-08-01 Synthetic Genomics Inc Coding of text for nucleic acid sequences
EP2362657B1 (en) * 2010-02-18 2013-04-24 Research In Motion Limited Parallel entropy coding and decoding methods and devices
US20140228223A1 (en) * 2010-05-10 2014-08-14 Andreas Gnirke High throughput paired-end sequencing of large-insert clone libraries
CA2797645C (en) * 2010-05-25 2020-09-22 The Regents Of The University Of California Bambam: parallel comparative analysis of high-throughput sequencing data
US9215162B2 (en) * 2011-03-09 2015-12-15 Annai Systems Inc. Biological data networks and methods therefor
CN103797486A (zh) * 2011-06-06 2014-05-14 皇家飞利浦有限公司 用于组装核酸序列数据的方法
PL2721819T3 (pl) * 2011-06-16 2024-02-19 Ge Video Compression, Llc Kodowanie entropijne obsługujące przełączanie trybów
US8707289B2 (en) * 2011-07-20 2014-04-22 Google Inc. Multiple application versions
CN104081772B (zh) * 2011-10-06 2018-04-10 弗劳恩霍夫应用研究促进协会 熵编码缓冲器配置
KR101922129B1 (ko) * 2011-12-05 2018-11-26 삼성전자주식회사 차세대 시퀀싱을 이용하여 획득된 유전 정보를 압축 및 압축해제하는 방법 및 장치
KR20190016149A (ko) * 2011-12-08 2019-02-15 파이브3 제노믹스, 엘엘씨 게놈 데이터의 동적 인덱싱 및 시각화를 제공하는 분산 시스템
US9600625B2 (en) * 2012-04-23 2017-03-21 Bina Technologies, Inc. Systems and methods for processing nucleic acid sequence data
CN103049680B (zh) * 2012-12-29 2016-09-07 深圳先进技术研究院 基因测序数据读取方法及系统
US9679104B2 (en) * 2013-01-17 2017-06-13 Edico Genome, Corp. Bioinformatics systems, apparatuses, and methods executed on an integrated circuit processing platform
WO2014145503A2 (en) * 2013-03-15 2014-09-18 Lieber Institute For Brain Development Sequence alignment using divide and conquer maximum oligonucleotide mapping (dcmom), apparatus, system and method related thereto
JP6054790B2 (ja) * 2013-03-28 2016-12-27 三菱スペース・ソフトウエア株式会社 遺伝子情報記憶装置、遺伝子情報検索装置、遺伝子情報記憶プログラム、遺伝子情報検索プログラム、遺伝子情報記憶方法、遺伝子情報検索方法及び遺伝子情報検索システム
GB2512829B (en) * 2013-04-05 2015-05-27 Canon Kk Method and apparatus for encoding or decoding an image with inter layer motion information prediction according to motion information compression scheme
WO2014186604A1 (en) * 2013-05-15 2014-11-20 Edico Genome Corp. Bioinformatics systems, apparatuses, and methods executed on an integrated circuit processing platform
KR101522087B1 (ko) * 2013-06-19 2015-05-28 삼성에스디에스 주식회사 미스매치를 고려한 염기 서열 정렬 시스템 및 방법
US20150032711A1 (en) * 2013-07-06 2015-01-29 Victor Kunin Methods for identification of organisms, assigning reads to organisms, and identification of genes in metagenomic sequences
KR101493982B1 (ko) * 2013-09-26 2015-02-23 대한민국 품종인식 코드화 시스템 및 이를 이용한 코드화 방법
US10902937B2 (en) * 2014-02-12 2021-01-26 International Business Machines Corporation Lossless compression of DNA sequences
US9916313B2 (en) * 2014-02-14 2018-03-13 Sap Se Mapping of extensible datasets to relational database schemas
US9354922B2 (en) * 2014-04-02 2016-05-31 International Business Machines Corporation Metadata-driven workflows and integration with genomic data processing systems and techniques
US20150379195A1 (en) * 2014-06-25 2015-12-31 The Board Of Trustees Of The Leland Stanford Junior University Software haplotying of hla loci
GB2527588B (en) * 2014-06-27 2016-05-18 Gurulogic Microsystems Oy Encoder and decoder
US20160019339A1 (en) * 2014-07-06 2016-01-21 Mercator BioLogic Incorporated Bioinformatics tools, systems and methods for sequence assembly
US10230390B2 (en) * 2014-08-29 2019-03-12 Bonnie Berger Leighton Compressively-accelerated read mapping framework for next-generation sequencing
US20160125130A1 (en) * 2014-11-05 2016-05-05 Agilent Technologies, Inc. Method for assigning target-enriched sequence reads to a genomic location
WO2016202918A1 (en) * 2015-06-16 2016-12-22 Gottfried Wilhelm Leibniz Universität Hannover Method for compressing genomic data
CN105956417A (zh) * 2016-05-04 2016-09-21 西安电子科技大学 云环境下基于编辑距离的相似碱基序列查询方法
CN105975811B (zh) * 2016-05-09 2019-03-15 管仁初 一种智能比对的基因序列分析装置

Patent Citations (7)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN103329138A (zh) * 2011-01-19 2013-09-25 皇家飞利浦电子股份有限公司 用于处理基因组数据的方法
CN104094266A (zh) * 2011-11-07 2014-10-08 独创系统公司 用于识别原因性基因组变体的方法和系统
EP2608096A2 (en) * 2011-12-24 2013-06-26 Tata Consultancy Services Ltd. Compression of genomic data file
CN103336916A (zh) * 2013-07-05 2013-10-02 中国科学院数学与系统科学研究院 一种测序序列映射方法及系统
WO2015081754A1 (en) * 2013-12-06 2015-06-11 International Business Machines Corporation Genome compression and decompression
WO2015127058A1 (en) * 2014-02-19 2015-08-27 Hospodor Andrew Efficient encoding and storage and retrieval of genomic data
US20160080528A1 (en) * 2014-09-12 2016-03-17 New York University System, method and computer-accessible medium for secure and compressed transmission of genomic data

Non-Patent Citations (2)

* Cited by examiner, † Cited by third party
Title
KALYAN KUMAR KAIPA等: "System for random access DNA sequence compression", 《 2010 IEEE INTERNATIONAL CONFERENCE ON BIOINFORMATICS AND BIOMEDICINE WORKSHOPS (BIBMW)》 *
詹晓娟等: "高通量DNA测序数据的生物信息学方法", 《大数据》 *

Cited By (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN110797087A (zh) * 2019-10-17 2020-02-14 南京医基云医疗数据研究院有限公司 测序序列处理方法及装置、存储介质、电子设备
CN110797087B (zh) * 2019-10-17 2020-11-03 南京医基云医疗数据研究院有限公司 测序序列处理方法及装置、存储介质、电子设备
CN113643761A (zh) * 2021-10-13 2021-11-12 苏州赛美科基因科技有限公司 一种用于解读二代测序结果所需数据的提取方法
CN113643761B (zh) * 2021-10-13 2022-01-18 苏州赛美科基因科技有限公司 一种用于解读二代测序结果所需数据的提取方法

Also Published As

Publication number Publication date
PE20191056A1 (es) 2019-08-06
JP2020505702A (ja) 2020-02-20
CL2019000972A1 (es) 2019-08-23
AU2017341685A1 (en) 2019-05-02
CO2019003595A2 (es) 2019-08-30
CO2019009920A2 (es) 2020-01-17
EP3526707A4 (en) 2020-06-17
PH12019550059A1 (en) 2019-12-16
SG11201903272XA (en) 2019-05-30
WO2018071080A3 (en) 2018-06-28
PH12019501881A1 (en) 2020-06-29
KR20190062541A (ko) 2019-06-05
CL2019000968A1 (es) 2019-08-23
EP3526694A1 (en) 2019-08-21
PE20191227A1 (es) 2019-09-11
BR112019016232A2 (pt) 2020-04-07
BR112019007360A2 (pt) 2019-07-09
US20190385702A1 (en) 2019-12-19
IL265928A (en) 2019-05-30
PE20191057A1 (es) 2019-08-06
EA201990917A1 (ru) 2019-08-30
JP2020500382A (ja) 2020-01-09
CL2019000973A1 (es) 2019-08-23
CL2019002277A1 (es) 2019-11-22
IL265928B (en) 2020-10-29
EP3526694A4 (en) 2020-08-12
CO2019003639A2 (es) 2020-02-28
BR112019007363A2 (pt) 2019-07-09
JP7079786B2 (ja) 2022-06-02
PH12019550058A1 (en) 2019-12-16
WO2018071079A1 (en) 2018-04-19
US20200051665A1 (en) 2020-02-13
US11404143B2 (en) 2022-08-02
MX2019004128A (es) 2019-08-21
CN110678929B (zh) 2024-04-16
BR112019007357A2 (pt) 2019-07-16
CO2019003842A2 (es) 2019-08-30
CN110603595B (zh) 2023-08-08
CN110603595A (zh) 2019-12-20
PH12019550057A1 (en) 2020-01-20
CL2019002276A1 (es) 2019-11-29
AU2017341684A1 (en) 2019-05-02
PE20200323A1 (es) 2020-02-13
WO2018071055A1 (en) 2018-04-19
AU2017342688A1 (en) 2019-05-02
CA3040147A1 (en) 2018-04-19
JP2019537172A (ja) 2019-12-19
IL265972A (en) 2019-06-30
CA3040145A1 (en) 2018-04-19
WO2018071080A2 (en) 2018-04-19
IL265879B2 (en) 2024-01-01
KR20190073426A (ko) 2019-06-26
CN110114830B (zh) 2023-10-13
EP3526707A2 (en) 2019-08-21
CN110121577B (zh) 2023-09-19
JP2020500383A (ja) 2020-01-09
US20200035328A1 (en) 2020-01-30
IL265879A (en) 2019-06-30
CL2019002275A1 (es) 2019-11-22
US20190214111A1 (en) 2019-07-11
EP3526657A1 (en) 2019-08-21
CO2019009922A2 (es) 2020-01-17
BR112019016236A2 (pt) 2020-04-07
CN110506272A (zh) 2019-11-26
BR112019007359A2 (pt) 2019-07-16
CN110678929A (zh) 2020-01-10
EP3526657A4 (en) 2020-07-01
PE20200226A1 (es) 2020-01-29
CA3040138A1 (en) 2018-04-19
US20200042735A1 (en) 2020-02-06
MX2019004130A (es) 2020-01-30
BR112019016230A2 (pt) 2020-04-07
US20200051667A1 (en) 2020-02-13
CO2019003638A2 (es) 2019-08-30
KR20190069469A (ko) 2019-06-19
SG11201903271UA (en) 2019-05-30
WO2018071054A1 (en) 2018-04-19
EA201990916A1 (ru) 2019-10-31
PE20191058A1 (es) 2019-08-06
SG11201903270RA (en) 2019-05-30
PE20200227A1 (es) 2020-01-29
PH12019550060A1 (en) 2019-12-16
CN110121577A (zh) 2019-08-13
PH12019501879A1 (en) 2020-06-29
CN110114830A (zh) 2019-08-09
KR20190117652A (ko) 2019-10-16
CN110506272B (zh) 2023-08-01
IL265879B1 (en) 2023-09-01

Similar Documents

Publication Publication Date Title
CN110168651A (zh) 用于选择性访问存储的或传输的生物信息数据的方法和系统
KR20110129628A (ko) Dna 서열 검색 방법 및 장치
JP6902104B2 (ja) バイオインフォマティクス情報表示のための効率的データ構造
KR102421458B1 (ko) 액세스 유닛으로 구조화된 생물정보학 데이터에 액세스하기 위한 방법 및 장치
CN110168652B (zh) 用于存储和访问生物信息学数据的方法和系统
JP7362481B2 (ja) ゲノムシーケンスデータをコード化する方法、コード化されたゲノムデータをデコード化する方法、ゲノムシーケンスデータをコード化するためのゲノムエンコーダ、ゲノムデータをデコードするためのゲノムデコーダ、及びコンピュータ読み取り可能な記録媒体
JP6949970B2 (ja) バイオインフォマティクスデータを送信する方法及びシステム
AU2018221458A1 (en) Method and apparatus for the compact representation of bioinformatics data using multiple genomic descriptors
CN110168649A (zh) 用于生物信息数据的紧凑表示的方法和设备
CN110663022B (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
WD01 Invention patent application deemed withdrawn after publication
WD01 Invention patent application deemed withdrawn after publication

Application publication date: 20190823