このページでは、htsget プロトコルの Google 実装を使用して以下のタスクを行う方法を説明します。
- Cloud Storage に保存されているデータを読み取る。
- Google 内の 1,000 人ゲノム プロジェクトのミラーなどで公開されているソースからデータを読み取ります。
htsget プロトコルは、Global Alliance for Genomics and Health(GA4GH)によって定義されています。
Google の htsget 実装により、大きなファイルを Compute Engine 仮想マシンとの間で相互にコピーすることなく、自分のクラウド プロジェクトに格納されたデータに簡単にアクセスして共有できます。
一般公開データを読み取る
次のコマンドを実行して、htsget サーバーを起動します。
docker network create test
docker run -d --network=test --name=htsget gcr.io/cloud-lifesciences/htsget
このコマンドを実行すると、サーバーが「test」という名前のローカル Docker コンテナ ネットワークに接続されます。サーバーが起動したら、GA4GH htsget プロトコルを使用して通信するソフトウェアを使用して、アクセスできます。
次のコマンドを実行して、公開ゲノムの 11 番染色体上の小さな範囲に関する統計情報を表示します。
docker run \
--network=test gcr.io/cloud-lifesciences/samtools \
flagstat "http://htsget/reads/genomics-public-data/platinum-genomes/bam/NA12892_S1.bam?referenceName=chr11&end=1000"
数秒後、このコマンドは Cloud Storage に保存されている BAM ファイルからストリーミングされた約 1,500 件の読み取りを処理します。
1532 + 0 in total (QC-passed reads + QC-failed reads)
0 + 0 secondary
0 + 0 supplementary
5 + 0 duplicates
1526 + 0 mapped (99.61% : N/A)
1532 + 0 paired in sequencing
784 + 0 read1
748 + 0 read2
1510 + 0 properly paired (98.56% : N/A)
1520 + 0 with itself and mate mapped
6 + 0 singletons (0.39% : N/A)
10 + 0 with mate mapped to a different chr
1 + 0 with mate mapped to a different chr (mapQ>=5)
プライベート データへのアクセスや、データへのアクセス制限に関する情報など、htsget サーバーについて詳しくは、htsget の README をご覧ください。