Menjalankan dsub

Gunakan dsub untuk menulis skrip, lalu menjalankan tugas komputasi batch dan alur kerja di Google Cloud.

Tujuan

Setelah menyelesaikan tutorial ini, Anda akan mengetahui cara menjalankan pipeline dsub di Google Cloud yang membuat indeks (file BAI) dari file biner besar untuk urutan DNA (file BAM).

Biaya

Dalam dokumen ini, Anda akan menggunakan komponen Google Cloud yang dapat ditagih berikut:

  • Compute Engine
  • Cloud Storage

Untuk membuat perkiraan biaya berdasarkan proyeksi penggunaan Anda, gunakan kalkulator harga. Pengguna baru Google Cloud mungkin memenuhi syarat untuk mendapatkan uji coba gratis.

Sebelum memulai

  1. Instal Python 3.6+. Untuk informasi selengkapnya tentang cara menyiapkan lingkungan pengembangan Python, seperti menginstal pip di sistem, lihat Panduan Penyiapan Lingkungan Pengembangan Python.
  2. Sign in to your Google Cloud account. If you're new to Google Cloud, create an account to evaluate how our products perform in real-world scenarios. New customers also get $300 in free credits to run, test, and deploy workloads.
  3. In the Google Cloud console, on the project selector page, select or create a Google Cloud project.

    Go to project selector

  4. Make sure that billing is enabled for your Google Cloud project.

  5. Enable the Cloud Life Sciences, Compute Engine, and Cloud Storage APIs.

    Enable the APIs

  6. In the Google Cloud console, on the project selector page, select or create a Google Cloud project.

    Go to project selector

  7. Make sure that billing is enabled for your Google Cloud project.

  8. Enable the Cloud Life Sciences, Compute Engine, and Cloud Storage APIs.

    Enable the APIs

Membuat file BAI

Selesaikan langkah-langkah berikut untuk membuat indeks (file BAI) dari file biner besar untuk urutan DNA (file BAM). Data berasal dari 1,000 Genomes Project.

  1. Clone repositori GitHub databiosphere/dsub:

    git clone https://github.com/databiosphere/dsub.git
  2. Ubah ke direktori untuk alat dsub. Repositori ini berisi image Docker bawaan yang menggunakan samtools untuk melakukan pengindeksan.

    cd dsub
  3. Instal dsub dan dependensinya:

    sudo python3 setup.py install
  4. Jalankan alat dsub untuk membuat file BAI, dengan mengganti PROJECT_ID dengan project Google Cloud Anda dan BUCKET dengan bucket Cloud Storage yang memiliki akses tulis:

    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

    Perintah samtools berjalan pada file data yang disediakan dengan tanda --input. Pipeline akan menulis file output dan log ke bucket Cloud Storage Anda.

  5. Pastikan file BAI telah dibuat:

    gcloud storage ls gs://BUCKET
    

    Perintah ini menampilkan respons berikut:

    gs://BUCKET/HG00114.mapped.ILLUMINA.bwa.GBR.low_coverage.20120522.bam.bai
    

Pembersihan

Setelah menyelesaikan tutorial, Anda dapat membersihkan resource yang dibuat agar resource tersebut berhenti menggunakan kuota dan dikenai biaya. Bagian berikut menjelaskan cara menghapus atau menonaktifkan resource ini.

Menghapus project

Cara termudah untuk menghilangkan penagihan adalah dengan menghapus project yang Anda buat untuk tutorial.

Untuk menghapus project:

  1. In the Google Cloud console, go to the Manage resources page.

    Go to Manage resources

  2. In the project list, select the project that you want to delete, and then click Delete.
  3. In the dialog, type the project ID, and then click Shut down to delete the project.

Langkah selanjutnya

Baca dokumentasi dsub di GitHub untuk mengetahui detail selengkapnya dan contoh cara mengembangkan dengan dsub secara lokal atau menggunakan dsub untuk menskalakan ke banyak tugas di Google Cloud.