1)  产生背景
---------------------------------------------------
2002年的时候,随着人类基因组项目不断推进,需要将大量ESTs(300万)
及mouse基因组的reads (130万)比对到人类基因组来进行注释,而这项任务需要在2周内完成 (90 CPU  Linux
集群),因为blast工具速度相对偏慢,结果也不易处理,无法提供intron
的信息等,因此一款新的比对软件的开发迫在眉睫。为了完成这项任务,W.James
Kent(UCSC)开发了一款生物信息学软件BLAT全称为BLAST-Like Alignment Tool。blat的速度大概是blast
的500倍,且可以共线性输出结果,易解读。
2)大致原理
---------------------------------------------------
比对软件一般是分为两部分来完成的.首先是搜索阶段(search
stage):搜索两个序列之间可能是同源的部分;然后是比对阶段(alignment
stage):更加仔细的审视上述可能是同源的部分,对于按照一定的标准被确定是同源的部分进行比对(align)。

2.1)首先是对物种数据库(以下称为基因组)构建索引(index),形成一个索引表(index list),索引表里存放着非重叠k-mer的坐标信息( non-overlapping k-mers)
2.2)将query中的重叠kmer(overlapping k-mers)在基因组中进行搜索 ,建立序列之间存在匹配的hits列表。采用不同的搜索策略会对下游的比对计算量产生影响
2.3)在比对阶段,根据query是蛋白还是核酸会采用不用的算法进行比对。想深入了解可以看最下面文献  
                                                                                                                      
3) 应用
--------------------------------------------------

DNA上的BLAT被设计为快速发现长度>=25个碱基,相似性>=95%的序列。 蛋白质上的BLAT将发现长度>=20个碱基,相似性>=80%的序列。
3.1)将mRNA 
比对到同种基因组来预测其在基因组上的坐标3.2)一个物种的蛋白或者mRNA比对到另外一个同源物种的数据库(
基因组),来请确定同源区域,适用于进化不太远的物种。3.3)可以用来做蛋白序列间的比对,但是作者并不推荐。因为利用BLASTP足够灵敏胜任,而blat相对不足。
3.4)确定基因的外显子和内含子在基因上的分布
4)与blast的区别
---------------------------------------------------
4.1)blat是对目标数据库构建索引,然后通过查询序列(query sequence)  线性搜索;Blast是将查询序列索引化,然后线性搜索庞大的目标数据库;
4.2)blast是将搜索数据库中所有与子系列精确匹配的序列(hits),作为种子,向两个方向继续延伸(extonsion)每个精确匹配,即延伸发生在一两个相邻位置hits
;blat则可以扩展任何数目的hits(perfect or near-perfect hits)。
4.3)  
blast将两个序列之间的每个同源区域作为单独的比对结果返回 (often exons),BLAT将它们’’缝合''在一起形成一个大的比对
(larger alignments  ,typically genes)。blat有特殊的代码处理RNA/DNA比对过程中的内含子
。因此在RNA/DNA比对中,blast
返回的是一个包含每个exton的比对结果,而blat返回的结果是一个大的比对结果,可以给出正确的剪切位点(splice sites)。
5)  在linux中安装及命令的运用
---------------------------------------------------
这里不做重点介绍,详细可参考
https://www.cnblogs.com/adawong/articles/7460300.html
http://www.mamicode.com/info-detail-107191.html
基本命令为:blat database query [-参数] output
6)  格式解读(默认格式为例,M8格式会在blast结果中介绍)

---------------------------------------------------
以数据NM_000531.5 ,U10421.1为例,在网页版中,选择参考基因组 (Feb 2009 GRCh37/hg19),默认输出排序参数为 (query, score),输出文件类型默认为 hyperlink。输出结果:
                                                                 

第一列:ACTIONS,其中点击ucsc browser可以在浏览详细图解信息,detials可以参看序列比对的详细信息
第二列:QUERY,表示query的序列名称           
第三列:SCORE,得分情况,得分越高说明比对越好 。参数以score排序
第四列:START,query比对的其实位置  
第五列:END,query比对结束的位置
第六列:QSIZE,表示query序列长度
第七列:IDENTITY,比对相似率
第八列:CHRO,位于哪条染色体上
第九列:STRAND,表示位于染色体的正链还是负链  
第10列:START,表示位于染色体的起始位置   
第11列:END,表示位于染色体的终止位置      
第12列:SPAN,表示的是比对位置在染色体上的跨度。
而在linux中默认输出格式为psl格式,因为blat可以输出多种格式,因此这里就不在一一介绍。
7) 习题(因为可以输出多种格式,我们以上述结果格式为例)
---------------------------------------------------
7.1)blat产生的背景是什么
7.2)blat有哪些用处?
7.3)blat和blast有哪些区别?
7.4)为什么在蛋白--蛋白比对的时候不太推荐blat?
7.5) 为什么在跨物种比对的时候,不建议进化分支太远的物种?
7.6)blat为什么速度会比blast快几百倍?
7.7)blat输入的格式是什么?
7.8)blat是如何识别基因的Exon-Intron的?
7.9)你的query确定在基因组中存在,为什么blat比对的时候没有找到?
7.10)kmer的选择如何影响blat的速率?
7.11)输出共有多少条query参与了比对
7.12)输出每个query最好的比对信息
7.13)计算每个query中最长的比对长度
7.14)输出每个query中位于负链上比对最好的信息
7.15)输出每个query在染色体上跨度最大的信息
7.16) 输出所有query在1号染色体中比对最好的信息
7.17)输出所有query在1号染色体中位于负链上比对最好的信息
7.18) 输出query比对最长,且在染色体上跨度最大的信息
7.19) 在detail中如何判断mRNA对应有几个外显子
7.20)在detail中查找外显子的序列信息

8)参考资源:
---------------------------------------------------

Systematic identification of novel protein domain families associated with nuclear functions
Using BLAT to find sequence similarity in closely related genomes
https://www.cnblogs.com/adawong/articles/7460300.html
http://genome.ucsc.edu/FAQ/FAQblat.html
https://baike.baidu.com/item/blat/2088564
https://en.wikipedia.org/wiki/BLAT_(bioinformatics)

blat的更多相关文章

  1. linux_x86_64 blat安装

    blatSrc35.zip下载地址:http://users.soe.ucsc.edu/~kent/src/ 对于下载好的源代码安装包blatSrc35.zip,需进行编译,安装过程如下: 1.用un ...

  2. 批处理协同blat自动发邮件

    Blat - A Windows (32 & 64 bit) command line SMTP mailer. Use it to automatically eMail logs, the ...

  3. Windows下才有blat进行命令行邮件发送

    1.先下载blat.exe文件,下载地址: https://sourceforge.net/projects/blat/files/ 2.解压后只需要blat.exe即可,进入此文件夹,运行如下脚本进 ...

  4. MFC之使用blat发送邮件

    blat的下载地址:http://www.blat.net 我用它进行了smtp服务的邮件发送.这里我使用的qq邮箱,qq邮箱使用的密码是授权码,可以再qq邮箱设置里面开启smtp服务.下载下来是文件 ...

  5. 【算法】(查找你附近的人) GeoHash核心原理解析及代码实现

    本文地址 原文地址 分享提纲: 0. 引子 1. 感性认识GeoHash 2. GeoHash算法的步骤 3. GeoHash Base32编码长度与精度 4. GeoHash算法 5. 使用注意点( ...

  6. 生物信息大数据&数据库(NCBI、EBI、UCSC、TCGA)

    想系统的学习生信数据库可以先看一下北大的公开课,有一章专门讲的数据库与软件: -生物信息学:导论与方法 北大\ 生物信息数据库及软件资源 一个优秀的生信开发者能够解决如下问题: 如何鉴定一个重要的且没 ...

  7. 安装生物信息学软件-bowtie2

    好吧,这是本周(2016.10.21-28)的学习任务之一:安装bowtie2并学习其使用方法&参数设置 所以,啃文档咯,官方文档Version 2.2.9 http://bowtie-bio ...

  8. geohash算法原理及实现方式

    1.geohash特点 2.geohash原理 3.geohash的php .python.java.C#实现代码 4.观点讨论 w微博:http://weibo.com/dxl0321 geohas ...

  9. GATK-BWA-MEM handle GRCh38 alternate contig mappings

    1. For the Impatient # Download bwakit (or from <http://sourceforge.net/projects/bio-bwa/files/bw ...

随机推荐

  1. python格式化输出 format

    看图

  2. PHP中header的用法总结

    来源 :http://blog.sina.com.cn/s/blog_7298f36f01011dxv.html header的用法 header()函数的作用是:发送一个原始 HTTP 标头[Htt ...

  3. python 用到的函数记录

    1. ctime() 获取当前的时间 2. import  random random.randint(0,99) 随机产生0到99之间的数值 (包含0和99) (整数!!) 3. 往列表添加数值 l ...

  4. Response、Request、QueryString,修改,Cookies

    Response对象:响应请求Response.Write("<script>alert('添加成功!')</script>");Response.Redi ...

  5. 学习笔记之JSON

    JSON https://www.json.org/ JSON (JavaScript Object Notation) is a lightweight data-interchange forma ...

  6. [转]win server 2003 + IIS 6 搭建MVC 运行环境

    本文来自:http://c.jinhusns.com/bar/t-993 win server 2003 + IIS 6 搭建MVC 运行环境 上一篇 下一篇近乎_问阳 发表于:2014-01-07 ...

  7. 廖雪峰Java1-1Java入门-2eclipse安装配置

    安装eclipse IDE继承开发环境:Integrated Development Environment 编写代码/组织项目/编译/运行/调试 提升开发效率 1.eclipse下载 eclipse ...

  8. PAT-甲级刷题笔记和总结

     本帖主要记录一些自己在刷题过程中的一些笔记,包括: 1.常用的函数 2.STL中常用方法 3.常见错误 4.其他常用方法 5.刷题过程中的常见算法:https://www.cnblogs.com/M ...

  9. 编译遇到make mrmroper问题

    ]: Entering directory `/home/share/project/ql-ol-sdk/ql-ol-kernel' ]: Entering directory `/home/shar ...

  10. shell for的使用

    好久没写shell了,花了半个小时才写对,不常用果然不够熟悉,以后还是得每天花半个小时写写shell #!/bin/sh #set -x p="/" cd $p echo $(pw ...