dsub를 사용하여 스크립트를 작성한 다음 Google Cloud에서 일괄 컴퓨팅 작업 및 워크플로를 실행합니다.
목표
이 튜토리얼을 완료한 후에는 DNA 염기서열이 포함된 큰 바이너리 파일(BAM 파일)로부터 색인(BAI 파일)을 만드는 dsub 파이프라인을 Google Cloud에서 실행하는 방법을 알게 됩니다.
비용
이 문서에서는 비용이 청구될 수 있는 다음과 같은 Google Cloud 구성요소를 사용합니다.
- Compute Engine
- Cloud Storage
프로젝트 사용량을 기준으로 예상 비용을 산출하려면 가격 계산기를 사용하세요.
시작하기 전에
- Python 3.6+를 설치합니다. 시스템에 pip 설치와 같은 Python 개발 환경 설정에 대한 자세한 내용은 Python 개발 환경 설정 가이드를 참조하세요.
- Google Cloud 계정에 로그인합니다. Google Cloud를 처음 사용하는 경우 계정을 만들고 Google 제품의 실제 성능을 평가해 보세요. 신규 고객에게는 워크로드를 실행, 테스트, 배포하는 데 사용할 수 있는 $300의 무료 크레딧이 제공됩니다.
-
In the Google Cloud console, on the project selector page, select or create a Google Cloud project.
-
API Cloud Life Sciences, Compute Engine, and Cloud Storage 사용 설정
-
In the Google Cloud console, on the project selector page, select or create a Google Cloud project.
-
API Cloud Life Sciences, Compute Engine, and Cloud Storage 사용 설정
BAI 파일 만들기
DNA 시퀀스(BAM 파일)의 큰 바이너리 파일(BAM 파일)에서 색인(BAI 파일)을 작성하려면 다음 단계를 완료하세요. 이 데이터의 출처는 1,000 Genomes Project입니다.
databiosphere/dsub GitHub 저장소를 클론합니다.
git clone https://github.com/databiosphere/dsub.git
dsub 도구가 포함된 디렉터리로 변경합니다. 저장소는 색인을 생성하기 위해 samtools를 사용하는 사전 제작된 Docker 이미지를 포함합니다.
cd dsub
dsub와 그 종속 항목을 설치합니다.
sudo python3 setup.py install
dsub 도구를 실행하여 BAI 파일을 만들고 PROJECT_ID를 Google Cloud 프로젝트로 바꾸고 BUCKET을 쓰기 액세스 권한이 있는 Cloud Storage 버킷으로 바꿉니다.
dsub \ --provider google-cls-v2 \ --project PROJECT_ID \ --logging gs://BUCKET/logs \ --input BAM=gs://genomics-public-data/1000-genomes/bam/HG00114.mapped.ILLUMINA.bwa.GBR.low_coverage.20120522.bam \ --output BAI=gs://BUCKET/HG00114.mapped.ILLUMINA.bwa.GBR.low_coverage.20120522.bam.bai \ --image quay.io/cancercollaboratory/dockstore-tool-samtools-index \ --command 'samtools index ${BAM} ${BAI}' \ --wait
samtools 명령어는
--input
플래그로 제공되는 데이터 파일에서 실행됩니다. 파이프라인은 출력 파일을 작성하고 Cloud Storage 버킷에 로깅합니다.BAI 파일이 생성되었는지 확인합니다.
gsutil ls gs://BUCKET
이 명령어는 다음 응답을 반환합니다.
gs://BUCKET/HG00114.mapped.ILLUMINA.bwa.GBR.low_coverage.20120522.bam.bai
삭제
튜토리얼을 완료한 후에는 만든 리소스를 삭제하여 할당량 사용을 중지하고 요금이 청구되지 않도록 할 수 있습니다. 다음 섹션은 이러한 리소스를 삭제하거나 사용 중지하는 방법을 설명합니다.
프로젝트 삭제
비용이 청구되지 않도록 하는 가장 쉬운 방법은 튜토리얼에서 만든 프로젝트를 삭제하는 것입니다.
프로젝트를 삭제하는 방법은 다음과 같습니다.
- Google Cloud 콘솔에서 리소스 관리 페이지로 이동합니다.
- 프로젝트 목록에서 삭제할 프로젝트를 선택하고 삭제를 클릭합니다.
- 대화상자에서 프로젝트 ID를 입력한 후 종료를 클릭하여 프로젝트를 삭제합니다.
다음 단계
로컬에서 dsub를 사용하여 개발하거나 dsub를 사용하여 Google Cloud에서 여러 작업으로 확장하는 방법에 대한 자세한 내용과 예시는 GitHub의 dsub 문서를 참조하세요.