새소식

Bioinformatics

SparkBLAST 설치 및 실행하기

  • -

SparkBLAST 는 Spark 2.0 에서 정상 실행되며, BLAST 버젼은 2.2.29 으로 실행 테스트하였다.

 

SparkBLAST 소스 다운로드

$ git clone https://github.com/Ufscar-Fiocruz-Ifsul/spark-blast2.0.git

 

소스 패키징을 위하여 sbt 를 설치한다. 설치하는 운영환경은 centOS 7.3에서 아래와 같은 명령어로 설치 가능

curl https://bintray.com/sbt/rpm/rpm | sudo tee /etc/yum.repos.d/bintray-sbt-rpm.repo
sudo yum install sbt

 

/home/kogun82/spark-blast2.0 위치에서 아래의 명령어로 패키징

$ sbt package

 

패키징 이후 /home/hadoop/spark-blast2.0/target/scala-2.11 경로에 simple-project_2.11-1.0.jar 파일 생성

 

NCBI 에서 ncbi-blast-2.2.29+-x64-linux.tar.gz 파일을 다운 받아 설치

 

설치 후  ncbi-blast-2.2.29/bin/blastall  파일을 /usr/bin 경로로 이동한다.

 

그렇지 않을 경우 다음과 같은 실행 장애 발생

 

java.io.IOException: Cannot run program "/ncbi-blast-2.2.29/bin/blastall": error=13, Permission denied

 

다음 spark-submit 명령어를 이용하여 실행

 

분석 실행 시 BLAST format 데이터베이스를 사용하였으며, 입력 서열 데이터 예시는 다음과 같다.

 >gi|695198179|ref|YP_009075223.1| hypothetical protein (plasmid) [Rhodobacter sphaeroides]
MAAFLALGLWHLALVWLVGHRLGGGAAALALAIFAAVLAIAGLSLRARYPHPRLGLCNGVTQLRAALVAVIAVPLAA
HGVLNQETGLAWTIVALGTLALGLDGLDGWLARRAGLVSEFGARFDMEVDALFALTLALLVAQGGKVGLWVLALAGM
RYAFVAAARIWPWLSAPLPESRARKLVCVIQIASLIAILAPPVESGAAVPLAAATLALLLWSFGRDVAWLARR

 

[실행 명령어]

/home/kogun82/spark-2.2.0/bin/spark-submit --executor-cores 1 \
    --class sparkBlast \
    /home/kogun82/spark-blast2.0/target/scala-2.11/simple-project_2.11-1.0.jar 1 \
    "blastall -p blastp -d /home/kogun82/NR/nr -e 1E-05 -v 1000 -b 1000 -m 8" \
    /workspace/input/test.fa /workspace/output

 

위의 실행 명령어 중 1 인자 값은 $qtd_splits 의 설정 값이다. $qtd_splits을 설정하지 않을 경우 실행 장애가 발생

 

input 과 output 의 경로는 hdfs 의 경로 입력

 

출력 결과의 예제는 다음과 같다.

tr|>sp|>gi||695198179|ref|YP_009075223.1| gi|522097663|ref|WP_020608872.1| 45.61 114 60 1 110 223 113 224 2e-08 63.5
tr|>sp|>gi||695198179|ref|YP_009075223.1| gi|517619480|ref|WP_018789688.1| 45.61 114 60 1 110 223 113 224 2e-08 63.5
tr|>sp|>gi||695198179|ref|YP_009075223.1| gi|517622508|ref|WP_018792716.1| 45.61 114 60 1 110 223 113 224 2e-08 63.5
tr|>sp|>gi||695198179|ref|YP_009075223.1| gi|516912263|ref|WP_018162123.1| 42.37 118 66 1 110 227 112 227 2e-08 62.0
tr|>sp|>gi||695198179|ref|YP_009075223.1| gi|516191462|ref|WP_017602950.1| 44.34 106 57 1 116 221 115 218 2e-08 61.6
tr|>sp|>gi||695198179|ref|YP_009075223.1| gi|654459202|ref|WP_027929613.1| 48.70 115 57 1 110 224 116 228 2e-08 61.6
tr|>sp|>gi||695198179|ref|YP_009075223.1| gi|648513119|ref|WP_026204870.1| 45.76 118 62 1 110 227 111 226 3e-08 62.8
tr|>sp|>gi||695198179|ref|YP_009075223.1| gi|655983733|ref|WP_029025661.1| 45.61 114 60 1 110 223 113 224 3e-08 62.8
tr|>sp|>gi||695198179|ref|YP_009075223.1| gi|517737625|ref|WP_018907833.1| 45.61 114 60 1 110 223 113 224 3e-08 62.8

 

 

 

Contents

포스팅 주소를 복사했습니다

이 글이 도움이 되었다면 공감 부탁드립니다.