クイックスタート

このページでは、Cloud Life Sciences API を使用する Genomics パイプラインを実行して、DNA 配列を含む大きなバイナリ ファイル(BAM ファイル)からインデックス ファイル(BAI ファイル)を作成する方法を説明します。

始める前に

  1. Google アカウントにログインします。

    Google アカウントをまだお持ちでない場合は、新しいアカウントを登録します。

  2. GCP Console のプロジェクト セレクタのページで、GCP プロジェクトを選択または作成します。

    プロジェクト セレクタのページに移動

  3. Google Cloud Platform プロジェクトに対して課金が有効になっていることを確認します。 プロジェクトに対して課金が有効になっていることを確認する方法を学習する

  4. Cloud Life Sciences、Compute Engine、Cloud Storage JSON必要な API を有効にします。

    API を有効にする

  5. Cloud SDK をインストールして初期化します。
  6. または、Cloud SDK がすでにインストールされている Cloud Shell を使用することもできます。

パイプラインの実行

このパイプラインを実行するには、curl または Windows PowerShell を使用します。

curl コマンド

  1. BUCKET 環境変数を作成します。変数は、-life-sciences が付加されたプロジェクト名を使用する Cloud Storage バケットを指します。

    export BUCKET=gs://PROJECT_ID-life-sciences
    
  2. gsutil mb コマンドを使用してバケットを作成します。

    gsutil mb ${BUCKET}
    
  3. gcloud コマンドライン ツールを使用してパイプラインを実行し、入力の BAM ファイル名と出力の BAI ファイル名を指定します。パイプラインは、Cloud Life Sciences API を呼び出し、Compute Engine VM インスタンスを作成して、そのインスタンスに対してパイプライン プロセスを実行します。プロセスが終了すると、インスタンスは自動的にシャットダウンされ、BAI ファイルは Cloud Storage バケットにコピーされます。

    gcloud beta lifesciences pipelines run \
        --regions us-east1 \
        --command-line 'samtools index ${BAM} ${BAI}' \
        --docker-image "gcr.io/genomics-tools/samtools" \
        --inputs BAM=gs://genomics-public-data/NA12878.chr20.sample.bam \
        --outputs BAI=${BUCKET}/NA12878.chr20.sample.bam.bai
    

    成功した場合、コマンドは以下を返します。

    Running [projects/PROJECT_ID/operations/OPERATION_ID]
    
  4. パイプラインが完了するまで数分かかります。次のコマンドを実行して、そのステータスを追跡できます。OPERATION_ID を前のステップで出力された値に置き換えます。

    gcloud beta lifesciences operations wait OPERATION_ID 
    

    操作が完了すると、次のメッセージが返されます。

    Waiting for [projects/PROJECT_ID/operations/OPERATION_ID]...done.
    
  5. BAI ファイルが生成されたことを確認します。

    gsutil ls ${BUCKET}
    

    このコマンドは、以下を返します。

    gs://BUCKET/NA12878.chr20.sample.bam.bai
    

これで、Cloud Life Sciences API を使用してパイプラインを実行し、BAM ファイルから BAI ファイルを作成しました。

PowerShell

  1. BUCKET 環境変数を作成します。変数は、-life-sciences が付加されたプロジェクト名を使用する Cloud Storage バケットを指します。

    $BUCKET = "gs://PROJECT_ID-life-sciences"
    
  2. gsutil mb コマンドを使用してバケットを作成します。

    gsutil mb ${BUCKET}
    
  3. gcloud コマンドライン ツールを使用してパイプラインを実行し、入力の BAM ファイル名と出力の BAI ファイル名を指定します。パイプラインは、Cloud Life Sciences API を呼び出し、Compute Engine VM インスタンスを作成して、そのインスタンスに対してパイプライン プロセスを実行します。プロセスが終了すると、インスタンスは自動的にシャットダウンされ、BAI ファイルは Cloud Storage バケットにコピーされます。

    gcloud beta lifesciences pipelines run `
        --regions us-east1 `
        --command-line 'samtools index ${BAM} ${BAI}' `
        --docker-image "gcr.io/genomics-tools/samtools" `
        --inputs BAM=gs://genomics-public-data/NA12878.chr20.sample.bam `
        --outputs BAI=${BUCKET}/NA12878.chr20.sample.bam.bai
    

    成功した場合、コマンドは以下を返します。

    Running [projects/PROJECT_ID/operations/OPERATION_ID]
    
  4. パイプラインが完了するまで数分かかります。次のコマンドを実行して、そのステータスを追跡できます。OPERATION_ID を前のステップで出力された値に置き換えます。

    gcloud beta lifesciences operations wait OPERATION_ID 
    

    操作が完了すると、次のメッセージが返されます。

    Waiting for [projects/PROJECT_ID/operations/OPERATION_ID]...done.
    
  5. BAI ファイルが生成されたことを確認します。

    gsutil ls ${BUCKET}
    

    このコマンドは、以下を返します。

    gs://BUCKET/NA12878.chr20.sample.bam.bai
    

これで、Cloud Life Sciences API を使用してパイプラインを実行し、BAM ファイルから BAI ファイルを作成しました。

クリーンアップ

GCP で作成したリソースをクリーンアップして、このチュートリアルで使用したリソースに対して GCP アカウントへの課金が発生しないようにできます。以下のセクションでは、このようなリソースを削除または無効にする方法を説明します。

プロジェクトの削除

このクイックスタートのために作成したプロジェクトは、不要になれば削除できます。プロジェクトを削除すると、Cloud Storage バケットと BAI ファイルも削除されます。

  1. GCP Console で [リソースの管理] ページに移動します。

    [リソースの管理] ページに移動

  2. プロジェクト リストで、削除するプロジェクトを選択し、[削除] をクリックします。
  3. ダイアログでプロジェクト ID を入力し、[シャットダウン] をクリックしてプロジェクトを削除します。

BAI ファイルの削除

作成したプロジェクトとバケットを保持しつつ、生成された BAI ファイルを削除するには gsutil rm コマンドを実行します。

gsutil rm ${BUCKET}/NA12878.chr20.sample.bam.bai

バケットの削除

このクイックスタートのために作成したバケットが不要になった場合に、プロジェクトを保持しつつバケットを削除するには、gsutil rb コマンドを使用してバケットを削除します。バケットを削除すると、生成された BAI ファイルも削除されます。

gsutil rb ${BUCKET}

次のステップ