生物信息學分析工具
定義
通常起源於3.5億年前的基因家族都可以檢測到。通過使用NCBI的BLAST和psi-BLAST,然後使用BLAT對UCSC基因組進行聯配可以找到更多的差異序列。實際上,BLAT對靈長類的DNA以及陸地脊椎動物的蛋白效果都很好。
產生背景
Blast由 W.James Kent 於 2002 年開發。當時隨著人類基因組計畫的進展,把大量基因和 ESTs 快速定位到較大的基因組上成為一種迫切需要。blast 相對於這種比對有幾個缺陷:速度偏慢、結果難於處理、無法表示出包含 intron 的基因定位。Blat 就是在這種形勢下應運而生了。
特點
Blat 的主要特點就是:速度快,共線性輸出結果簡單易讀。對於比較小的序列(如 cDNA 等)對大基因組的比對,blat 無疑是首選。Blat 把相關的呈共線性的比對結果連線成為更大的 比對結果,從中也可以很容易的找到 exons 和 introns。因此,在相近物種的基因同源性分析和EST 分析中,blat 得到了廣泛的套用。
Blat的比對速度之所以能比Blast快幾百倍,是因為此兩者之間的比對機制有著本質的差別。Blast是將查詢序列索引化,然後線性搜尋龐大的目標資料庫,期間頻繁地訪問硬碟數據,時間和空間上的數據相關性較小;Blat則將龐大的目標資料庫索引化,然後線性搜尋查詢序列,這種搜尋方式在時間和空間上的數據相關性比較大。Blat將資料庫索引一次性讀入記憶體,可以反覆地高速調用,無需訪問硬碟,占用的系統資源很少。只要索引建立,查詢序列的量越大,Blat的優勢就越明顯 。
局限性
Blat雖然性能優異,但是它自身也存在著一定的局限性,對於特殊的任務需要注意選擇合適的軟體。例如Blat用於遠親緣物種間的核酸序列比對時,比對精度就不夠高,建議使用專門為此用途開發的Blastz軟體;對於少量的蛋白質比對任務(如數條或數十條),在速度和精度上Blastp均優於Blat;比對同時需要獲得蛋白質的同源性信息時,則一般使用SAM和PSI-BLAST軟體。另外,Blat在重複搜尋短小匹配片段的同時,會產生過多的沒有生物學意義的序列比對碎片,這說明搜尋過程還存在一定的假陽性結果,應進一步分析確認 。
運行模式
Blast有兩種運行模式 ,一種是單機版(Stand - alone Blat);另一種是互動式的客戶端/伺服器模式(Client/Server Blat),Blat的原始碼、執行程式以及相關文檔可以從作者Kent的個人網站上免費下載獲得。兩種模式的Blat都能夠對核酸序列和蛋白質序列以及核酸翻譯成的蛋白質序列進行相互比對,單機版可選參數較多,比線上版更加精確, 而客服端/伺服器模式則更適合於提供互動式的批量比對服務,特別是本地化後性能非常優越。目前網際網路上由美國加州大學聖克魯斯分校(UCSC)提供了webBlat服務 。
程式結構
Blat最新版是blast suite.34,suite包中主程式有 :
程式名稱 | 程式描述 |
gfServer | 用於將查詢序列索引保存在記憶體中,通過索引快速地獲取序列,構建blast是伺服器端 |
gfClient | 通過網路查詢gfServer,將查詢序列與gfServer找到的序列進行詳細的比對 |
blat | 是前面所說的單機版blat,將Server和Client結合在一起組成一個獨立的運行程式 |
webBlat | 是gfClient的一個Web,用它可構建線上版Blat |
其他輔助程式:
程式名稱 | 程式描述 |
pslSort | 對多個Blat結果進行組合和排序 |
pslReps | 採用"near best in genome算法,為特定的查詢選擇最佳比對 |
pslPretty | 將比對產生的psl格式的結果檔案轉換成更易閱讀的格式 |
faToTwoBit | 將fasta序列檔案轉換成gfServer能使用的2bit格式的檔案 |
twoBitToFa | 將2bit檔案轉換成fasta序列檔案 |
faToNib | 將fasta序列檔案轉換成Nib檔案,一個nib檔案只能包含一條序列 |
nibFrag | 將nib檔案轉換成fasta序列檔案 |
下載及安裝
下載
可直接搜尋BLAT去查找或NCBI.
安裝
如果下載的是已經編譯好的執行檔,只需解壓縮即可使用,如上面提到的對於 linux 系統的 blatSuite.33.zip,解壓命令: unzip blatSuite.33.zip。
如果下載的是原始碼,需要進行編譯,對於不同的作業系統稍有區別,安裝過程如下:
1. 解壓縮檔:unzip blatSrc33.zip
2. 檢查機器的環境變數 MACHTYPE ,如果沒有設定需要進行設定,對於不同的機器設定不 同,如:linux 對應的機器類型為 i386,Alpha 對應 alpha,sun 對應 sparc,irix 對應 mipseb。
設定: bash shell:
bash shell:
MACHTYPE=機器類型
export MACHTYPE
tcsh shell: setenv MACHTYPE 機器類型
3. 建立安裝目錄
mkdir ~/bin
mkdir ~/bin/$MACHTYPE
4. 到源檔案目錄的 lib 目錄下,查看是否有對應機器類型的目錄,如沒有需建立:
cd blatSrc/lib
mkdir $MACHTYPE
5. 編譯,成功後可執行程式放到了~/bin/$MACHTYPE 下面,可移到其他你所要放可執行程式的目錄。
cd blatSrc
make > make.log
使用
Blat 的輸入檔案必須滿足 fasta 格式,運行時非常簡單,不需要進行建庫就可以直接比對。
Blat 的基本命令:
blat database query [-參數] output
電子郵件傳送工具
Blat 是一個命令行發郵件的小工具,僅支持簡單的SMTP協定,需要SMTP伺服器的支持。據說現在新申請的信箱已經不支持SMTP服務了,是為了抑制垃圾郵件而採取的措施。但是,Blat也是一個非常方便的小工具,基本上可以滿足一般人的需求。