Virtual Machine이 대세

분석용 소프트웨어 툴을 하나 깔려면 얼마나 dependency가 많은지. 한번에 이런 dependency를 다 알아서 깔아주는 패키지 관리자의 활용이 잘되어 있는 일반적인 리눅스용 패키지와는 달리 과학기술용 소프트웨어는 설치는 너님이 알아서 하세여인 경우가 허다함. 게다가 특정 버전의 dependency에 의존하여 문제가 일어나는 경우는 또 얼마나 많은지. 이런 것 불편하게 까느니 차라리 내가 만들고 말겠다 쳇 하는 느낌을 가진 분들 참 많을 거다.

경이라면 수고스럽더라도 한번 깔아두면 그만이겠지만, 필요할 때마다 인스턴스를 생성하여 다수의 리소스를 이용하는 클라우드 환경에서는 사실 수동 설치는 현실적이지 않다.

게다가 논문의 서플먼트로써 논문 그림을 만드는 스크립트나 번들을 배포한다고 할때 사용되는 소프트의 버전에 따라서 미묘한 차이가 생길 수 있고, 결과적으로 논문의 데이터 분석을 완전하게 재현하기 힘든 경우가 허다함. 즉 ‘재현성 있는 연구’ (Reproducible Research) 를 수행하기 위해서는 자신이 분석에 사용한 스크립트나 데이터를 공개하는 정도로는 곤란하고, 실제로 논문 그림을 만든 환경을 그 논문을 읽는 독자에게 재현해서 해당하는 분석을 독자의 손으로 해볼 수 있게 하는 게 중요함.

게다가 ‘저 굳이 리눅스 깔아야함? ㄷㄷ 여유 컴터 없삼.’ 하는 분들은 어쩔;;;

이런 여러가지 문제를 해결하는 방법은? 가상 머신을 이용합니다.

가령 ENCODE의 경우 그 복잡다난한 데이터를 분석하여 일목요연한 피겨를 만들어 내기 위해서 여러가지 컴퓨테이션 툴과 스크립트를 사용하였는데, 기본적으로 이것들은 여기에 공개되어 있지만 이것을 그대로 분석할 수 있는 가상 머신이 존재한다.

ENCODE Virtual Machine and Cloud Resource

VirtualBox 를 이용하여 약 18기가에 달하는 Virtual Machine의 이미지 파일 이 제공되고 이를 이용하여 바로 ENCODE데이터를 분석하여 논문 피겨만드는 작업을 재현해 볼수도 있다.

또 다른 예로는 16s rRNA amplicon의 시퀀싱 결과를 이용하여 미생물 집단내에서의 계통별 분류및 분포를 분석하는 패키지인 QIIME 에서도 VirtualBox의 이미지 파일 혹은 Amazon EC2용 이미지 파일 을 제공한다. 이를 이용하여 간단하게 Amazon EC2 클러스터에서 구찮은 설치, configuration 거치지 않고 설치 완료.

또 다른 예로는 CloVR 이라는 프로젝트를 들 수 있는데, 이건 미생물 지놈 분석에 중점을 둔 프로젝트이긴 하지만, 여튼 여기서는 다음의 4종류의 파이프라인을 개인용 컴터, 혹은 클러스터에서 손쉽게 유저 인터페이스를 통해 억세스할 수 있는 가상 머신을 제공한다.

Image

한가지 예로써 Large Scale BLAST 서치를 Amazon EC2 를 이용하여 약 1280 cpu core 를 이용하여 수행했다고들 카더라.

그리고 Amazon EC2 를 이용하여 가상머신 이미지를 다운로드하지도 않은채 막바로 EC2 Cluster에 가상머신 인스턴스를 생성하여 분석하는 예

여기에 친절하게시리 스크린캐스팅까지 해주는 센스 ㅋ

지금은 주로 서열분석에 중점을 두고 소개를 했지만 이러한 가상머신을 이용한 분석환경 배포의 경우 다른 분야에서도 얼마든지 적용가능하다고 생각함. 단백질 구조계산이라든지…여튼 하고 싶은 말은 NGS 등과 같이 다량의 데이터를 처리해야 하는 분석툴의 경우 지금까지의 어프로치 (클라이언트에서의 분석을 위한 분석시스템 개발, 혹은 웹기반의 서버구축) 와는 다른 접근방식이 필요하다는 것을 이해해야 할 필요가 있을듯.

 

 

Leave a Reply

Fill in your details below or click an icon to log in:

WordPress.com Logo

You are commenting using your WordPress.com account. Log Out / Change )

Twitter picture

You are commenting using your Twitter account. Log Out / Change )

Facebook photo

You are commenting using your Facebook account. Log Out / Change )

Google+ photo

You are commenting using your Google+ account. Log Out / Change )

Connecting to %s