组装技术的新进展

1、测序和组装 很难想象今天距离提出测序和组装已经有40年啦。我们回头来看一下这个问题。 “With modern fast sequencing techniques and suitable computer programs it is now possible...

1、测序和组装

很难想象今天距离提出测序和组装已经有40年啦。我们回头来看一下这个问题。

“With modern fast sequencing techniques and suitable computer programs it is now possible to sequence whole genomes without the need of restriction maps.”

“If the 5′ end of the sequence from one gel reading is the same as the 3′ end of the sequence from another the data is said to overlap. If the overlap is of sufficient length to distinguish it from being a repeat in the sequence the two sequences must be contiguous. The data from the two gel readings can then be joined to form one longer continuous sequence.”

众所周知,这个问题说起来很简单,就是序列如何测序组装的问题,但是这确实是一个NP-hard问题,非常难解决。

2、发展历史

从sanger测序仅仅利用与病毒的组装,到可以商业化的组装Mb级别的细菌,到果蝇。

这些进步依赖计算机并行技术和早期的组装工具。随着NGS测序技术的发展。测序从sanger变成了更短的illumina短reads。此时组装的方法也随之变化。组装更多的利用 de Bruijn graph 方法。比如Velvet 等这些软件火起来了。随着Pacbio 三代测序技术的普及,基于overlap的软件又开始抬头。

目前现有的测序技术包括sanger、NGS、PacBio、Nanopore等,甚至包括搭建骨架的光学图谱技术,Hi-C。这些使得我们得到一个完整的准确的基因组成为可能。

多种测序技术相结合的案例也有很多,比如山羊基因组,很多公司都在做宣传的山羊利器,就是综合NGS+三代+光学+Hi-C+遗传图。水稻基因组三代+遗传图等等。

3、那么问题来了,为啥要获取一个高质量的基因组呢,高质量的基因组的意义在于?

高质量的基因组可以清晰的显示重复结构和变化,而利用二代对于常见的重复区域难以跨过。这样得到的contig 比较碎,影响后面的分析结果。

三代测序技术平均长度在10Kb以上,这个长度比微生物和脊椎动物常见重复序列要长,因此三代测序技术在解决微生物和脊椎动物身上没什么问题,对于高重复的植物需要进行详细的评估,并借助其他测序手段,参考水稻基因组。通过和其他技术结合,比如光学,HiC等。通过这些最新技术,物种的基本区域都可以搞定,只有最大的分段重复和异色区域仍然是一个挑战。

4、常用的长片段组装软件

目前常用的针对长片段组装的软件有三个:Canu( Koren等人,2017),HINGE(Kamath等人,2017)和Racon(Vaser等人,2017)。

5、组装搞定了,生信人会不会失业?

幸运的是,即使序列组合被新技术淘汰,生物信息学家也将有大量的工作。低成本,完整的基因组将使生信人有很多的精力去进行更为大尺度大视角上的比较基因组学等研究,这样需要开发更多工具和算法。

6、期许

希望随着技术的不断进步,我们可以少花点时间来组装基因组,我们可以花更多的时间来探索它们的奇妙进化和功能复杂性。

7、参考文献

New advances in sequence assembly.

组装技术的新进展 New advances in sequence assembly.的更多相关文章

  1. 短序列组装Sequence Assembly(转载)

    转载:http://blog.sina.com.cn/s/blog_4af3f0d20100fq5i.html 短序列组装(Sequence assembly)几乎是近年来next-generatio ...

  2. SQL Server 2012 开发新功能 序列对象(Sequence)(转)

    转载链接:http://www.cnblogs.com/zhangyoushugz/archive/2012/11/09/2762720.html 众所周知,在之前的sqlserver版本中,一般采用 ...

  3. JAVA WEB新进展

    哈哈,终于搞来页面来了,丑是丑,但是好的进展. 高手的思路,自己用库建连接池,确实利害. 最关键的一个HELPER代码: package org.smart4j.chapter2.helper; im ...

  4. Neutron新进展|DragonFlow在Mitaka版本中的Roadmap

    OpenStack网络在Mitaka版本中将有哪些新变化?1月11日到12日,DragonFlow的PTL——Eran Gampel,Kuryr的PTL——Gal Sagie,和他们的老大从以色列来到 ...

  5. 工具箱之 IKVM.NET 项目新进展

    在各种群里经常讨论的一个事情是.NET 如何调用 Java 的实现,最常见的场景之一就是在加解密方面Java提供的密钥,C#无法解密, C#中byte范围是[0,255],而Java中的byte范围是 ...

  6. JDBC读取新插入Oracle数据库Sequence值的5种方法

    Oracle的sequence实现非常灵活,所以也带来一些易用性问题,如何取到新插入记录生成的sequence值与其它数据库有较大差别,本文详国介绍了5种实现读取新插入记录sequence值的方法. ...

  7. 2015 GOOGLE I/O大会看点总结:新的开发工具及云端测试工具

        http://ask.android-studio.org/?/article/48 尽管凌晨开始的主题演讲略显晦涩并继承了谷歌一贯的东一句西一句想起啥说啥的混乱风格,但期待用技术改变世界的技 ...

  8. 关于k8s这项大动作,预示着边缘计算迎来“开源”发展的新周期……

    在文章<最近在边缘计算领域,发生了一件足以载入物联网史册的大事…>我曾经提到Kubernetes(简称K8s)将从超大规模云计算环境,被带入到物联网边缘计算场景中. 事情有了新进展,从本周 ...

  9. 将 Sidecar 容器带入新的阶段

    作者 | 徐迪.张晓宇 导读:本文根据徐迪和张晓宇在 KubeCon NA 2019 大会分享整理.分享将会从以下几个方面进行切入:首先会简单介绍一下什么是 Sidecar 容器:其次,会分享几个阿里 ...

随机推荐

  1. Android插件化(六): OpenAtlasの改写aapt以防止资源ID冲突

    Android插件化(六): OpenAtlasの改写aapt以防止资源ID冲突 转 https://www.300168.com/yidong/show-2791.html   核心提示:引言And ...

  2. ISO/IEC 9899:2011 条款6.2.8——对象的对齐

    6.2.8 对象的对齐 1.完整的对象类型具有对齐要求,对齐要求是对该类型对象可以在哪个地址进行分配的放置限制.一个对齐是一个实现定义的整数值,表示一个给定对象可以分配在相继两个地址之间跨多少字节的位 ...

  3. Expression: __acrt_first_block == header

    File: minkernel\crts\ucrt\src\appcrt\heap\debug_heap.cpp Line: 996 Expression: __acrt_first_block == ...

  4. MERN——MongoDB && React && Node && Express

    原文链接:Let’s build a full stack MongoDB, React, Node and Express (MERN) app github源码地址:jelorivera08/re ...

  5. Linux输出信息并将信息记录到文件(tee命令)

    摘自:https://www.jb51.net/article/104846.htm 前言 最近工作中遇到一个需求,需要将程序的输出写到终端,同时写入文件,通过查找相关的资料,发现可以用 tee 命令 ...

  6. Jmeter与BlazeMeter使用 录制导出jmx

    本文链接:https://blog.csdn.net/weixin_38250126/article/details/82629876JMeter 的脚本录制,除了自带的HTTP代理服务器以外,被大家 ...

  7. Linux -- 如何减少IO过程中的CPU copy

    四种I/O方式的对比 1. Buffered I/O read(file, tmp_buf, len); write(socket, tmp_buf, len); 上下文切换:4次 CPU copy: ...

  8. 配置Apache控制浏览器端的缓存的有效期

    这个非常有用的优化,mod_expires可以减少20-30%左右的重复请求,让重复的用户对指定的页面请求结果都CACHE在本地,根本不向服务器发出请求.但要注意更新快的文件不要这么做.这个模块控制服 ...

  9. Mac下给sublime text3配置Nodejs

    传送门: http://blog.csdn.net/phil_young/article/details/50950206

  10. 在node.js中使用Set

    var set = new Set(); set.add(1); console.log("test1 : " + set.has(1) + " ; " + s ...