PSP - 使用 MMseqs2 工具快速搜索蛋白质序列数据库 (GMGC)

news2024/10/6 0:30:25

欢迎关注我的CSDN:https://spike.blog.csdn.net/
本文地址:https://spike.blog.csdn.net/article/details/131934642

Img

MMseq2 是非常强大和高效的生物信息学软件,可以在极短的时间内对大规模的核苷酸和蛋白质序列进行搜索和聚类。主要特点有:

  • 使用一种新颖的序列比对算法,可以在保持高灵敏度的同时,大幅提高搜索速度。它可以比 BLAST 快 10000 倍,比 PSI-BLAST 快 400 倍。
  • 可以处理多种序列格式,包括 FASTA, FASTQ, A3M, Stockholm 等,还可以直接从 NCBI 下载序列数据,或者从 UniProt, Pfam, InterPro 等数据库中获取预构建的序列集。
  • 提供了多种搜索模式,包括序列对序列,序列对数据库,数据库对数据库,以及配置文件对配置文件,还支持多种搜索参数,例如最小序列相似度,最大 E 值,最小覆盖率等。
  • 可以对搜索结果进行聚类分析,根据序列相似度将序列分为不同的类别。使用了一种贪心算法,可以在线性时间内完成聚类任务。还可以生成聚类结果的可视化报告。
  • 开源软件,使用 GPL 许可协议。它用 C++ 编写,适用于 Linux, MacOS 和 Windows 平台。它可以在多核和多服务器上并行运行,并具有很好的可扩展性。

Paper:MMseqs2: sensitive protein sequence searching for the analysis of massive data sets

GitHub:MMseqs2: ultra fast and sensitive sequence search and clustering suite

  • 超快速、灵敏的序列搜索和聚类套件

参考文档:MMseqs2 User Guide


1. 数据库

数据库的 FASTA 文件:virus4/gmgc.fa

数据库下载,60G,参考 MSA DB - GMGC:

  • 全球微生物基因目录(The Global Microbial Gene Catalog)是一个集成的、一致处理的、涵盖微生物世界的基因目录,结合宏基因组学和高质量的分离株序列。从 13,174 个宏基因组(覆盖 14 种生境)和完整的 ProGenomes2 数据库中,共有 23 亿个开放阅读框(ORFs)按照 95% 的核苷酸同源性进行聚类,构建了一个包含 3.0265 亿个单基因(unigenes)的目录。

GMGC

数据如下:

>GMGC10.033_133_404.UNKNOWN|built-environment
MKGLVVTGLTVAFGFVAYEKLTYVVDVVKHLIA
>GMGC10.026_381_531.UNKNOWN|built-environment
MIWRSGRFAAVALQRKPPVGWAGNLVQPEKLRV
>GMGC10.013_658_495.UNKNOWN|built-environment
MMNKMKSNKFFNTMGMVLSALIDAKAVATTLNK

设置 BOS 命令:

alias bos='bcecmd/bcecmd --conf-path bcecmd/bceconf/ bos'

2. 配置 MMseqs2

安装 MMseqs2,测试服务器 172.30.0.34:

conda install -c conda-forge -c bioconda mmseqs2
conda list mmseqs2

配置 ~/.bashrc,即:

if [ -f miniconda3/envs/torch-def/util/bash-completion.sh ]; then
    source miniconda3/envs/torch-def/util/bash-completion.sh
fi

测试命令:mmseqs,输出信息。

默认命令顺序:

mmseqs createdb examples/DB.fasta targetDB
mmseqs createindex targetDB tmp
mmseqs easy-search examples/QUERY.fasta targetDB alnRes.m8 tmp

3. 构建索引

构建 mmseqs 索引:

mmseqs createdb data/gmgc.fa gmgc.db   # 耗时较长
mmseqs createindex gmgc.db tmp

搜索 MSA:

mmseqs easy-search QUERY.fasta gmgc.db alnRes.m8 tmp

createdb的日志:

createdb gmgc.fa gmgc.db 

MMseqs Version:         13.45111
Database type           0
Shuffle input database  true
Createdb mode           0
Write lookup file       1
Offset of numeric ids   0
Compressed              0
Verbosity               3

Converting sequences
[294700023] 10m 36s 322ms
Time for merging to gmgc.db_h: 0h 1m 45s 892ms
Time for merging to gmgc.db: 0h 3m 52s 379ms
Database type: Aminoacid
Time for processing: 0h 27m 40s 149ms

createdb的输出:

gmgc.db
gmgc.db.dbtype
gmgc.db_h
gmgc.db_h.dbtype
gmgc.db_h.index
gmgc.db.index
gmgc.db.lookup
gmgc.db.source
gmgc.fa

createindex的日志:

indexdb gmgc.db gmgc.db --seed-sub-mat nucl:nucleotide.out,aa:VTML80.out -k 0 --alph-size nucl:5,aa:21 --comp-bias-corr 1 --max-seq-len 65535 --max-seqs 300 --mask 1 --mask-lower-case 0 --spaced-kmer-mode 1 -s 7.5 --k-score 0 --check-compatible 0 --search-type 0 --split 0 --split-memory-limit 0 -v 3 --threads 232 

Target split mode. Searching through 5 splits
Estimated memory consumption: 691G
Write VERSION (0)
Write META (1)
Write SCOREMATRIX3MER (4)
Write SCOREMATRIX2MER (3)
...
Time for merging to gmgc.db.idx: 0h 0m 0s 523ms
Time for processing: 0h 27m 43s 883ms

4. 搜索序列

搜索 MSA,以 T1157s1_A1029.fasta 为例,使用 mmseqs 进行搜索,即:

mmseqs easy-search T1157s1_A1029.fasta virus4/gmgc/gmgc.db alnRes.m8 tmp

输出日志,默认 -s 5.7

  • A very fast search would use a sensitivity of -s 1.0, while a very sensitive search would use a sensitivity of up to -s 7.0
...
createdb T1157s1_A1029.fasta tmp/15503592239095911252/query --dbtype 0 --shuffle 1 --createdb-mode 0 --write-lookup 0 --id-offset 0 --compressed 0 -v 3 

Converting sequences

Time for merging to query_h: 0h 0m 14s 960ms
Time for merging to query: 0h 0m 3s 422ms
Database type: Aminoacid
Time for processing: 0h 0m 22s 843ms
Create directory tmp/15503592239095911252/search_tmp
search tmp/15503592239095911252/query virus4/gmgc/gmgc.db tmp/15503592239095911252/result tmp/15503592239095911252/search_tmp --alignment-mode 3 -s 5.7 --remove-tmp-files 1
...

搜索出的结果 alnRes.m8,包括 450 条搜索结果,如下:

A       GMGC10.285_640_775.MNL1|built-environment       0.483   954     493     0       39      992     1       954     2.234E-258      832
A       GMGC10.241_341_405.MNL1|soil    0.569   657     280     0       3       659     55      705     1.592E-232      756
A       GMGC10.275_542_093.MNL1|human-skin      0.615   348     127     0       179     526     2       333     7.241E-130      454
A       GMGC10.302_382_477.MNL1|human-gut       0.393   592     290     0       22      613     1       478     1.668E-109      393
A       GMGC10.233_643_273.MNL1|soil    0.613   320     120     0       141     451     1       320     2.039E-107      387
A       GMGC10.291_266_275.MNL1|human-gut       0.362   544     286     0       7       550     36      484     7.208E-96       351
A       GMGC10.295_625_477.MNL1|human-skin      0.801   212     42      0       71      282     1       212     2.547E-94       347
A       GMGC10.230_501_499.MNL1|soil    0.632   280     100     0       90      362     3       282     3.678E-93       343
A       GMGC10.053_306_367.MNL1|human-gut       0.360   546     297     0       7       552     25      489     2.928E-92       340
A       GMGC10.284_538_017.MNL1|built-environment       0.365   529     292     0       22      550     1       461     1.359E-85       320

即,搜索完成。

5. 配置 Small BFD 库

AF2 官网:https://github.com/deepmind/alphafold

安装下载工具:

apt-get install aria2

下载文件 small_bfd

mkdir small_bfd
cd small_bfd/
# 下载文件
aria2c https://storage.googleapis.com/alphafold-databases/reduced_dbs/bfd-first_non_consensus_sequences.fasta.gz
gunzip bfd-first_non_consensus_sequences.fasta.gz

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.coloradmin.cn/o/791835.html

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈,一经查实,立即删除!

相关文章

【2022】贝壳找房秋招C++工程师笔试卷1

题解:直接暴力 class Solution { public:/*** 代码中的类名、方法名、参数名已经指定,请勿修改,直接返回方法规定的值即可** * param s string字符串 * param k int整型 * return string字符串*/string NS_String(string s, int k) {// writ…

【C语言day07】

在调用函数的时候,真实传递给函数的是实参,函数定义部分函数名后的参数是形参。 形参和实参的名字是可以相同的,在函数调用的时候,形参是实参的一份临时拷贝,分别占用不同的内存空间,所以A正确,…

智慧园区电力监控解决方案

1、概述 电力监控系统实现对园区变电站、配电房内断路器、变压器、柴油发电机以及其它重要设备进行监视、测量、记录、报警等功能,并与保护设备和远方控制中心及其他设备通信,实时掌握园区变电站和配电房运行状况,快速排除故障,保…

[UE4][C++]调整分屏模式下(本地多玩家)视口的显示位置和区域

一、分屏模式设置 在UE4中,多个玩家共用一个显示器就可以启用分屏模式,按玩家人数(最大四人)将屏幕均匀分割,显示不同玩家的视角,开发者可以在编辑器里设置分割类型(水平或者垂直)&a…

EC200U-CN学习(二)

EC200U系列内置丰富的网络协议,集成多个工业标准接口,并支持多种驱动和软件功能(适用于Windows 7/8/8.1/10、Linux和Android等操作系统下的USB驱动),极大地拓展了其在M2M领域的应用范围,如POS、POC、ETC、共…

XCP详解「3.4·CANape中新建A2L文件」

返回 XCP详解「总目录」 A2L正常由ASAP2软件生成,但CANape也可以生成,此方法仅作知晓,不推荐使用 CANape新建工程后,新建Device,后面默认next next next 选择通道,设置网络参数(波特率&#xf…

Vue - 可视化用户角色、菜单权限、按钮权限配置(动态获取菜单路由)

GitHub Demo 地址 在线预览 前言 关于动态获取路由已在这里给出方案 Vue - vue-admin-template模板项目改造:动态获取菜单路由 这里是在此基础上添加了系统管理模块,包含用户管理,角色管理,菜单管理,字典管理&#xf…

使用分布式HTTP代理爬虫实现数据抓取与分析的案例研究

在当今信息爆炸的时代,数据已经成为企业决策和发展的核心资源。然而,要获取大规模的数据并进行有效的分析是一项艰巨的任务。为了解决这一难题,我们进行了一项案例研究,通过使用分布式HTTP代理爬虫,实现数据抓取与分析…

【方法】带密码的ZIP分卷压缩文件如何解压?

当文件比较大的时候,很多人会在压缩时使用分卷压缩,这样可以将一个大文件分割成若干小分卷,方便保存及传输,也能减少下载时间。 如果分卷压缩文件设置了密码,要如何解压呢?下面小编以常用的ZIP格式为例&am…

IIS部署安装.NET CORE6.0应用程序,成功解决http error 503.the service is unavailable错误

一、下载安装.NET CORE 运行环境包 网址:Download .NET Core 3.1 (Linux, macOS, and Windows).NET Core 3.1 downloads for Linux, macOS, and Windows. .NET is a free, cross-platform, open-source developer platform for building many different types of ap…

Ubuntu--科研工具系列

翻译系列 pot-desktop github链接: https://github.com/pot-app/pot-desktop 下载deb Releases pot-app/pot-desktop GitHub 安装过程 在下载好的deb目录下打开终端(自动安装依赖) sudo apt install "XXX.deb" (后面可以直接托文件到终端&#…

Redis集群的搭建

1.单机安装Redis 首先需要安装Redis所需要的依赖: yum install -y gcc tcl 然后将课前资料中提供的Redis安装包上传到虚拟机的任意目录: 例如,放到了/tmp目录: 解压缩: tar -xzf redis-6.2.4.tar.gz 解压后&#…

记一次杀猪盘的渗透之旅

所谓“杀猪盘”,是指诈骗分子利用网络交友通常是“异性”交友,诱导受害人下载诈骗APP并在上面进行各种“投资”,如菠菜、股票、期货甚至虚拟货币的网络诈骗。今年某月某日小白就遭遇了这种骗局,他先是被骗子通过QQ添加并下载了一个…

wireshark实战tcp三次握手和四次挥手

1 、安装好后wireshark后,由于我本地起了一个服务,所以我选择的是本地回环地址的这个选项,如下图(网络接口可以选择其它选项). 2、点击进去之后,在头部的栏上输入下面内容并且回车 ip.addr192.168.3.16 and tcp.port80803、浏览器发送请求 http://192.168.3.16:8080/tomcat_te…

Baumer工业相机堡盟工业相机如何通过BGAPI SDK获取相机当前实时帧率(C#)

Baumer工业相机堡盟工业相机如何通过BGAPISDK里函数来计算相机的实时帧率(C#) Baumer工业相机Baumer工业相机的帧率的技术背景Baumer工业相机的帧率获取方式CameraExplorer如何查看相机帧率信息在BGAPI SDK里通过函数获取相机帧率 Baumer工业相机通过BGA…

集群间ssh配置免密登录

ssh免密配置,可以将ssh生成的密钥分发给目标主机,之后再用ssh访问目标主机时就无需输入密码 下面我们来配置用centos71免密登录centos72主机 使用下面指令生成一个密钥 ssh-keygen其中会提示,是否输入密码短语,这里不输入&#…

一份关于windows server服务器的安全漏洞处理建议(来自绿盟安全评估)

文章目录 前言一、服务器主机存在漏洞应该怎么修复? 二、报告中的高危漏洞(部分展示)1.Microsoft Windows CredSSP 远程执行代码漏洞(CVE-2018-0886)2.SSL/TLS协议信息泄露漏洞(CVE-2016-2183)3.SSL/TLS RC4 信息泄露漏洞(CVE-2013-2566)4.SS…

【飞书】飞书导出md文档 | 飞书markdown文档导出 | 解决飞书只能导出pdf word

一、飞书导出markdown github地址:https://github.com/Wsine/feishu2md 这是一个下载飞书文档为 Markdown 文件的工具,使用 Go 语言实现。 请看这里:招募有需求和有兴趣的开发者,共同探讨开发维护,有兴趣请联系。 二、…

【日常分享】Xposed框架究竟是啥?

今天在处理一个客户App加固的时候,看到老大用到了Xposed,一时竟不知道这是什么东西。今天就沉下心来,写写做个笔记。 一、Xposed狂阿基是什么? Xposed 是一个在 Android 系统上运行的开源框架,它允许用户在不修改应用…

MacDroid for Mac:在Mac上访问和传输Android文件的最简单方式

MacDroid for Mac是一款帮助用户在Mac和Android设备之间传输文件的软件。由于Mac OS X本身并不支持MTP协议,所以透过USB将Android设备连接到Mac电脑上是无法识别的,更别说读取里面的文件了。 MacDroid可以帮助您轻松搞定这个问题,您可以将An…