Visão geral
O Cloud Life Sciences é um conjunto de serviços e ferramentas para gerenciar, processar e transformar dados de ciências da saúde. Ele também permite insights avançados e fluxos de trabalho operacionais usando uma infraestrutura altamente escalonável e compatível. O Cloud Life Sciences inclui recursos como a API Cloud Life Sciences, as ferramentas extract-transform-load (ETL) e muito mais.
Esta página fornece uma visão geral dos serviços e ferramentas que o Cloud Life Sciences oferece e como é possível usar os recursos da ferramenta com seus dados de ciências da saúde. Google Cloud
Visão geral da API Cloud Life Sciences
A API Cloud Life Sciences oferece uma maneira simples de executar uma série de contêineres do Compute Engine em Google Cloud. A API Cloud Life Sciences é constituída por uma única operação principal:
projects.locations.pipelines.run
: executa um pipeline.
E três operações genéricas:
projects.locations.operations.get
: recebe o estado mais recente de um pipeline.projects.locations.operations.list
: lista todos os pipelines em execução em uma Google Cloud região no seu projeto Google Cloud .projects.locations.operations.cancel
: cancela um pipeline.
A API Cloud Life Sciences foi pensada para desenvolvedores que querem criar ferramentas de gerenciamento de jobs (como o dsub) ou mecanismos de fluxo de trabalho (como o Cromwell). A API Cloud Life Sciences disponibiliza um back-end para essas ferramentas e sistemas, oferece o agendamento de jobs para tarefas baseadas no Docker que realizam análises genômicas secundárias em contêineres do Compute Engine. É possível enviar operações em lote de qualquer lugar e executá-las no Google Cloud. As imagens do Docker podem ser empacotadas manualmente ou é possível usar imagens existentes do Docker.
A forma mais comum de uso da API Cloud Life Sciences é executar uma ferramenta existente ou script personalizado que lê e grava arquivos, normalmente para e do Cloud Storage. A API Cloud Life Sciences pode ser executada de forma independente em centenas ou milhares desses arquivos.
É possível acessar a API Cloud Life Sciences usando a API REST, a API RPC ou a CLI do Google Cloud.
Como executar a API Cloud Life Sciences
Se você estiver criando um mecanismo de fluxo de trabalho, uma série típica de etapas que o mecanismo executará é:
- Como analisar a linguagem do fluxo de trabalho de entrada e construir uma série de objetos
Pipeline
com formatação JSON que a API Cloud Life Sciences aceita. O mecanismo envia uma série de solicitações definidas no objetoPipeline
para a API Cloud Life Sciences. - Como monitorar as solicitações e mesclar as saídas das solicitações antes de ir para a próxima etapa.
Veja a seguir uma explicação mais detalhada da primeira etapa:
O pipeline é executado chamando o método pipelines.run
.
Esse método usa um objeto Pipeline
e um conjunto opcional de rótulos para começar a executar um pipeline. O objeto Pipeline
consiste em uma ou mais descrições Action
e um objeto Resources
que
descreve quais Google Cloud recursos são necessários para executar o
pipeline.
O exemplo a seguir mostra como configurar um Pipeline
que executa um Action
único (imprimindo "Hello, world" no terminal) em uma VM pequena e padrão (n1-standard-1
):
"pipeline": {
"actions": [
{
"imageUri": "bash",
"commands": [ "-c", "echo Hello, world" ]
},
],
"resources": {
"regions": ["us-central11"],
"virtualMachine": {
"machineType": "n1-standard-1",
}
}
}
O exemplo a seguir mostra como configurar um objeto Action
que executa vários comandos. O Action
copia um arquivo do Cloud Storage para a VM, calcula e verifica o SHA-1 hash do arquivo e grava o arquivo no bucket original do Cloud Storage.
"actions": [
{
"imageUri": "google/cloud-sdk",
"commands": [ "gsutil", "cp", "gs://my-bucket/input.in", "/tmp" ]
},
{
"imageUri": "bash",
"commands": [ "-c", "sha1sum /tmp/in > /tmp/test.sha1" ]
},
{
"imageUri": "google/cloud-sdk",
"commands": [ "gsutil", "cp", "/tmp/output.sha1", "gs://my-bucket/output.sha1" ]
},
],
Chamar pipelines.run
retorna uma operação de longa duração que é possível consultar para ver o status de ou cancelar o pipeline.
Ciclo de vida de uma solicitação da API Cloud Life Sciences
O ciclo de vida típico de um pipeline em execução na API Cloud Life Sciences é o seguinte:
- A API Cloud Life Sciences aloca os recursos Google Cloud necessários para executar o pipeline. No mínimo, isso geralmente envolve a alocação de uma máquina virtual (VM) do Compute Engine com espaço no disco.
- Depois que uma VM é disponibilizada, a API Cloud Life Sciences executa cada ação definida no pipeline. Essas ações executam operações como copiar arquivos de entrada, processar dados ou copiar arquivos de saída.
- O pipeline libera todos os recursos alocados, incluindo a exclusão de todas as VMs criadas.
ETL do BigQuery usando a ferramenta Variant Transforms
Para carregar seus dados de ciências da saúde no BigQuery para uma análise adicional, use a ferramenta Variants Transforms.
A Variant Transforms é uma ferramenta de código aberto baseada no Apache Beam e usa o Dataflow. A Variant Transforms é a ferramenta recomendada para transformar e carregar dados genômicos no Google Cloudpara uma análise posterior.
Como usar outras Google Cloud tecnologias com dados de ciências da vida
Existem várias Google Cloud tecnologias que interagem com o Cloud Life Sciences ou podem ser usadas para analisar e processar dados de ciências da saúde. São eles:
- BigQuery: use o BigQuery para consultas ad-hoc de grandes conjuntos de dados estruturados, como variantes genômicas. Os casos de uso incluem a análise das variantes e executam consultas
JOIN
complexas para analisar ou sobrepor dados descritos por intervalos regionais genômicos. A ferramenta Variant Transforms fornece uma maneira de transformar e carregar arquivos VCF diretamente no BigQuery. - Cloud Storage: use o Cloud Storage como um repositório de objetos para VCF bruto, FASTQ e BAM que possível carregar no BigQuery usando a Variant Transforms para a análise em larga escala.
- Dataflow: a ferramenta Variant Transforms usa o Dataflow para criar pipelines de processamento de dados altamente escalonáveis que carregam dados no BigQuery.