摘要
蛋白质种类和小分子的数量过多,对于药物的模拟开发运算量巨大。而分子对接是研究新药的重要手段,因此提高分子对接实验系统的工作效率十分重要。分子对接主要目的是研究蛋白质受体和配体小分子之间的作用与联系。本文通过模拟实验,搭建了一个Hadoop平台,并利用Hadoop强大的并行计算能力对蛋白质(1ppe与1uy6)与多组数量不同的配体小分子进行对接,最后对工作过程进行了相应的比较与优化。实验结果表明,该系统可以有效提高对接效率,并且具有较好的稳定性和便利性。
随着这几年信息技术的迅速发展,深度学习、大数据和云计算等技术越来越多地被各行各业所使用,现代社会对大量数据的依赖日渐增长,高速数据处理已成为如今十分重要的部分。一般情况下,在生物医药领域中的生物学实验是探究分子之间相互作用的直接手段。但通过生物实验直接研究蛋白质的相互作用并不是一件简单的事情,因为随着生物技术的不断发展,进行蛋白质复合物晶体的实验需要严格且复杂的条件与步骤,并且实验所需的蛋白质获取难度较大,实验成本非常昂贵,于是运用计算机来运行理论模拟得到了越来越多的重视,并且被投入实际的应用
计算机辅助药物设计的方法有许多,分子对接也是其中之一。随着药物化学、生物信息学和计算机技术的迅速发展,越来越多的小分子化合物和靶标蛋白在不断地被发现,生物信息数据呈现爆炸式增长。因此在新药物研发中,分子对接实验将遭遇海量数据存储与大规模数据计算的多重挑
在蛋白质受体与配体小分子对接的过程中,需要考虑两个方面:一是需要搜索能量低的构象,二是在尽量短的时间内在设定的对接范围中找到各种可能的对接情况。在实际应用中,因为随着对药物和疾病的不断研究,很多时候一个蛋白质受体需要连续和上万个小分子进行对接,同时还要对对接完的结果进行筛选和整理,因此在整个系统工作运行过程中,既要保证Hadoop的正常运行,同时也要保证工作的效率。本文首先搭建了一个Hadoop平台,通过Hadoop调用分子对接软件Autodock Vina进行蛋白质与小分子的分子对接,然后进行相应的优化与分析,最后进行了总结与展望。
Hadoop是由Google公司提出的一个软件架构,可以用来处理大规模数据。作为如今十分流行的云计算平台,Hadoop擅长大数据和分布式并行计算,可以在蛋白质与小分子对接中发挥一定的作用。通用并行计算模型MapReduce和Hadoop分布式文件系统(Hadoop distributed file system, HDFS)组成了Hadoop的主要架构,其详细的工作示意图如

图1 Hadoop工作示意图
Fig.1 Hadoop working diagram
Main端的主要任务包括定义配体受体文件的存放位置、确定对接结果的存放位置、确定读取文件的文件格式、定义输出key值和value值的类型等。
Map端的任务是将输入路径下的作业也就是每个分子对接的任务分发成更加小的任务来执行,以HDFS存储文件的最小单位为标准来分发,一个map函数处理一个任务,其中map函数会一次性读取多个数据并进行并行处
Reduce端将Map端输出的数据进行收集与合并。其中,在进行分子对接处理时,一次对接完成后系统会产生一个对应的文件,并存储在HDFS中。
在分子对接的整个过程中,遵循的基本原理是“锁钥原理”。整个分子对接的过程就是找到蛋白质与一个或多个小分子之间最佳结合模式的过程。它们主要通过能量匹配和几何匹配来进行相互识
利用MapReduce的计算框架,通过把作业的调度和分发写入程序中,整个框架就会通过Jobtracker调用各个节点上的tasktracker对数据进行并行对接,对接完成后Reduce函数会自动收集每个节点的对接结
整个系统的工作流程如

图2 系统流程图
Fig.2 System flowchart
步骤1 获取分子数据
以受体为例,蛋白质受体可以从分子数据库 (Protein data bank,PDB)中下载所对应的PDB分子。以配体为例,ZINC数据库是一个较大的生物分子网站,可以从中下载需要的配体小分子。
步骤2 分子数据预处理
在ZINC上下载的配体小分子大多是mol2格式或者sdf格式,不可以用来进行分子对接,因此需要使用OpenBabel软件,将配体小分子批量转换成可以对接的pdbqt格式;蛋白质受体同样需要进行预处理,通过AutoDock Tools软件(分子对接可视插件),进行删除受体上的水分子、删除蛋白质受体上原有的小分子、添加氢键和选定对接区域等操作,这样做的目的是规范蛋白质受体的格式,从而减轻分子对接时系统的工作负担。这些操作完成后,最后将处理后的受体转化成pdbqt格式。
步骤3 上传至Hadoop平台
在Linux系统中开启Hadoop平台,开启免SSH(Secure shell)登录,开启HBase数据库。待Hadoop启动完成后,将配体分子、受体分子和对接参数文档上传至HDFS,可以通过Eclipse查看上传的各项数据。一切准备就绪后,进行后续操作。
步骤4 批量进行分子对接
Autodock Vina是一款开源软件,由Molecular Graphics实验室开发与管理,它主要是基于拉马克遗传算法来进行分子对接,具有多核运行、兼容性强和准确性高的特
要想访问HDFS上的文件,可以使用Xshell或者Eclipse等软件工具,然而HDFS是分布式系统,也就是说分子对接软件Autodock Vina无法直接读取HDFS上的分子数据。因此,如果想操作HDFS文件系统就像操作本地文件系统一样的便捷,实现两者之间的映射是能想到的最好解决方案。
大多数文献大多使用用户空间文件系统挂载协议(File system in user space‑distributed file system, FUSE‑DFS)和WebDEV(HTTP协议扩展)两种途径来实现HDFS的映射。然而相应的操作配置繁琐,而且随着版本的更新,在Hadoop2.0以后的版本早已取消了FUSE和WebDEV的文件配置。经查阅Hadoop的使用指南,可以使用Hadoop的NFS3插件将HDFS作为一个远程服务器挂载在本地,通过NFS3可以像在Linux本地一样操作HDFS的文件,从而省去许多操作。
步骤5 对接过程优化
对接结束后,一个小分子配体会产生一个相应的文件,其中包含相应的对接数据,分子对接后的数据存储在HDFS中。这时再根据Hadoop自身的工作状况以及任务的分配状况对系统进行优化,主要从节点的分配数量上进行考虑,以提高工作效率。
步骤6 比较分析
将优化后系统的工作状况与原结果进行比较与分析,提出自己的见解。
基于实验室3台高性能电脑安装虚拟机搭建了一个内部局域网的Hadoop平台,详细参数如
需要说明的是, Master和Slave 1~3共4台虚拟机安装在电脑1中, Slave 4~6共3台虚拟机安装在电脑2中,Slave 7~9共3台虚拟机安装在电脑3中。其中一台虚拟机代表一个节点,每个工作节点均分配1个CPU核心。
整个测试共进行了3种类型的实验,其中第1组实验直接在电脑1的Linux系统中进行运作,第2组实验使用Master和Slave 1~3节点进行工作,也就是第1台电脑的Hadoop系统中运作,其目的是在保证在CPU核心以及分配内存相同的情况下,比较分子对接在Hadoop平台与Linux系统中的工作效率。第3组实验采用Hadoop的全部节点也就是全部10个节点进行对接,目的是为了从硬件的角度对Hadoop的工作效率进行分析测试,在增加Hadoop的工作节点以及硬件的条件下,判断Hadoop的工作效率是否有所提高。本次测试采用代号为1ppe和1uy6的蛋白质作为受

图3 蛋白质受体结构图
Fig.3 Structure of the protein receptor
通过Hadoop的网页监测可以实时直观地观察整个Hadoop的工作情况,

图4 Hadoop网页监测图
Fig.4 Webpage monitoring chart of Hadoop
对接结束后,一个小分子配体会产生一个相应的文件,其中包含相应的对接数据,

图5 部分小分子对接结果数据图
Fig.5 Data diagram of partial docking results
在Linux系统执行分子对接时,整个程序默认是按顺序串行工作的,也就是前一个分子对接结束并且得出结果后再进行下一个分子对接工作。然而在Hadoop系统中,分子对接是多个任务同时运行的,

图6 Liunx系统分子对接过程图
Fig.6 Docking process in Liunx system

图7 Hadoop系统分子对接过程图
Fig.7 Docking process in Hadoop system
针对上述情况考虑,如何在不提高系统硬件配置的情况下,增强Hadoop的工作性能,成为十分关键的部分。系统工作时,Hadoop框架会执行定义良好的处理阶段序列中的作
通过网页观察Hadoop工作状况时,发现在运行少量的分子对接时,Hadoop的部分节点利用率较低,造成了资源的闲置。同时在运行较多的分子对接时,受限于磁盘读写的状况,部分节点不能迅速加载数据。针对上述情况,决定在接下来的几组实验中调整工作节点的数量以及节点的硬件配置。
为评估调整后的效果,又分别进行了4组实验,前两组实验把1,2,5,10个小分子配体分别与1ppe,1uy6两个蛋白质受体进行批量分子对接,实验使用Master和Slave1~2共3个节点进行工作。第3组和第4组实验把5,10,50,100个小分子配体分别与1ppe,1uy6两个蛋白质受体进行批量分子对接,其中实验使用Master和Slave1~6共7个节点进行工作,多节点并行的工作时间如图

图8 1ppe多节点并行的工作时间比较图
Fig.8 Working time comparison of 1ppe at parallel multi worknodes

图9 1uy6多节点并行的工作时间比较图
Fig.9 Working time comparison of 1uy6 at parallel multi worknodes
如图
从上述测试可以看出,并不是分配越多节点,系统工作效率就越快。根据处理数据的大小合理分配节点可以有效提高系统的工作效率。Hadoop又具有特有的网页检测机制,可以通过网页实时观察节点的工作状况,在工作时要根据任务的大小或者通过网页监测适当调整Hadoop中工作节点的数量,调整各个节点的硬件配置,这样才可提高工作效率。
实验结果表明,基于Hadoop的蛋白质配体分子对接计算系统能够充分发挥并行计算的优势,有效缓解工作耗时过长的问题,从而提高了工作效率。该系统具有容错性低、扩展性高和操作简单等特点,而且通过网页可以直观实时监测Hadoop的工作状况,对于学习相关专业的大学学生或者研究员有一定的参考价值。同时Hadoop相比较一些其他一些大数据处理系统,在设备上对硬件的要求并不大,在各大高校或者实验室有大量性能一般的计算机的情况下,搭建一个Hadoop平台用于批量分子对接或者分子的虚拟筛选,不妨是一个高效且合理的途径。
本实验仍还有研究不足的地方,撇开节点分配的因素,Hadoop的工作效率还受限于系统自身的硬件配置,包括CPU性能、内存大小、磁盘读写状况和网络带宽等因素。如果还需更进一步的优化,可以考虑从监测系统的薄弱环节做起,例如检查CPU和内存是否工作饱和、数据传输是否过大引起网络阻塞和存储的数据是否合理分配等。
参考文献
陆旭峰,陆振宇,梅向东,等. 基于CPU和GPU异构的蛋白质分子半柔性对接算法优化[J].数据采集与处理,2018,33(4):603-610. [百度学术]
LU Xufeng,LU Zhenyu,MEI Xiangdong,et al. Optimization of semi flexible docking algorithm for protein molecules based on CPU and GPU heterogeneous[J]. Journal of Data Acquisition and Processing, 2018,33(4): 603-610. [百度学术]
RITCHIE D W. Recent progress and future directions in protein-protein docking[J]. Current Protein & Peptide Science, 2008, 9(1): 1-15. [百度学术]
李杰辉,张亮,陈健,等.基于Hadoop的化合物生物活性分析系统[J].计算机工程, 2012, 38(13): 48-50. [百度学术]
LI Jiehui,ZHANG Liang,CHEN Jian, et al. Compounds biological active analysis system based on Hadoop[J]. Computer Engineering, 2012, 38(13): 48-50. [百度学术]
张丽.基于云平台的分子对接设计与实现[D].成都:电子科技大学,2015. [百度学术]
ZHANG Li. Molecular docking based on optimal search theory research[D]. Chengdu: University of Electronic Science and Technology of China, 2015. [百度学术]
常珊,陆旭峰,王峰.蛋白质-配体分子对接中构象搜索方法[J].数据采集与处理, 2018, 33(4): 586-594. [百度学术]
CHANG Shan,LU Xufeng,WANG Feng. Review of conformational searching method for protein-ligand molecular docking[J]. Journal of Data Acquisition and Processing, 2018, 33(4): 586-594. [百度学术]
张影.大规模虚拟筛选对接结果的分析与研究[D].兰州:兰州大学,2012. [百度学术]
ZHANG Ying. Research and analysis of large-scale virtual screening docking results[D]. Lanzhou: Lanzhou University,2012. [百度学术]
陈殿伟.基于Hadoop的虚拟筛选海量数据存储及结果处理的设计和实现[D].兰州:兰州大学,2012. [百度学术]
CHEN Dianwei. Design and implementation of mass data storage and result reduction for virtual screening based on Hadoop[D].Lanzhou: Lanzhou University,2012. [百度学术]
BONVIN A M. Flexible protein-protein docking[J]. Current Opinion in Structural Biology, 2006, 16 (2): 194-200. [百度学术]
李竞蔚.基于Hadoop的虚拟筛选数据管理和并行对接研究[D].兰州:兰州大学,2015. [百度学术]
LI Jingwei. Design and implementation of mass data storage and result reduction for virtual screening based on Hadoop[D]. Lanzhou: Lanzhou University,2015. [百度学术]
刘广才.基于Hadoop的大规模虚拟筛选数据的分析研究[D].兰州:兰州大学,2014. [百度学术]
LIU Guangcai. Analytical studies of large-scale virtual screening data based on Hadoop[D]. Lanzhou: Lanzhou University,2014. [百度学术]
李杰辉. 基于云计算技术的化合物相似性分析系统[D].上海:复旦大学,2012. [百度学术]
LI Jiehui. Compound similarity analysis system based on cloud computing technology[D]. Shanghai: Fudan University,2012. [百度学术]
VAKSER I A. Protein-protein docking: From interaction to interactome[J]. Biophysical Journal, 2014, 107(8): 1785-1793. [百度学术]
SRINATH P, THILINA G. Hadoop MapReduce Cookbook[M]. [S.l.]: Posts&Telecom Press,2015: 36-39. [百度学术]
KHALED T. Optimizing Hadoop for MapReduce[M]. [S.l.]: Posts&Telecom Press, 2015: 4-7. [百度学术]