Ler dados usando o htsget

Nesta página, descrevemos como usar a implementação do Google do protocolo htsget para realizar as seguintes tarefas:

  • Leia os dados armazenados no Cloud Storage.
  • Leia os dados de fontes públicas, como o espelho do Google do 1000 Genomes Project.

O protocolo htsget é definido pela Global Alliance for Genomics and Health (GA4GH).

A implementação do Google para o htsget possibilita o acesso e o compartilhamento de dados armazenados em projetos na nuvem sem a necessidade de copiar e colar arquivos grandes de máquinas virtuais do Compute Engine.

Ler dados públicos

Para iniciar o servidor htsget, execute os seguintes comandos:

docker network create test
docker run -d --network=test --name=htsget gcr.io/cloud-lifesciences/htsget

A execução do comando anexa o servidor a uma rede de contêineres local do Docker chamada "test". Depois que o servidor for iniciado, será possível acessá-lo usando qualquer software que se comunique pelo protocolo htsget do GA4GH.

Execute o seguinte comando para ver as estatísticas de um pequeno intervalo no cromossomo 11 em um genoma público:

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"

Após alguns segundos, o comando processa cerca de 1.500 leituras que foram transmitidas de um arquivo BAM armazenado no Cloud Storage:

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)

Para mais informações sobre o servidor htsget, inclusive sobre como acessar dados privados e limitar o acesso aos seus dados, consulte o arquivo README do htsget.