Panoramica di Cloud Life Sciences

Panoramica

Cloud Life Sciences è una suite di servizi e strumenti per la gestione, l'elaborazione e la trasformazione dei dati di queste scienze. Inoltre, consente di ottenere insight avanzati e flussi di lavoro operativi utilizzando un'infrastruttura altamente scalabile e conforme. Cloud Life Sciences include funzionalità come l'API Cloud Life Sciences, strumenti Extra-Transform-Load (ETL) e altro ancora.

Questa pagina fornisce una panoramica dei servizi e degli strumenti offerti da Cloud Life Sciences (e da Google Cloud in generale) e da come puoi sfruttare le loro funzionalità con i tuoi dati relativi alle scienze biologiche.

Panoramica dell'API Cloud Life Sciences

L'API Cloud Life Sciences fornisce un modo semplice per eseguire una serie di container Compute Engine su Google Cloud. L'API Cloud Life Sciences è composta da un'unica operazione principale:

E tre operazioni generiche:

L'API Cloud Life Sciences è rivolta agli sviluppatori che vogliono sviluppare o creare strumenti per la gestione dei job, come dsub, o motori di flusso di lavoro, come Cromwell. L'API Cloud Life Sciences fornisce un backend per questi strumenti e sistemi, fornendo la pianificazione del job per le attività basate su Docker che eseguono analisi genomiche secondarie sui container di Compute Engine. Puoi inviare operazioni batch da qualsiasi origine ed eseguirle su Google Cloud. Le immagini Docker possono essere pacchettizzate manualmente oppure puoi usare immagini Docker esistenti.

Il caso d'uso più comune quando utilizzi l'API Cloud Life Sciences è eseguire uno strumento o uno script personalizzato esistente che legga e scriva file, in genere da e verso Cloud Storage. L'API Cloud Life Sciences può essere eseguita in modo indipendente su centinaia o migliaia di file.

Puoi accedere all'API Cloud Life Sciences utilizzando l'API REST, l'API RPC o Google Cloud CLI.

Esecuzione dell'API Cloud Life Sciences

Se stai creando un motore del flusso di lavoro, una serie tipica di passaggi che il motore esegue:

  1. L'analisi del linguaggio del flusso di lavoro di input e la creazione di una serie di oggetti Pipeline in formato JSON che l'API Cloud Life Sciences accetta. Il motore invia una serie di richieste definite nell'oggetto Pipeline all'API Cloud Life Sciences.
  2. Monitorare le richieste e unire gli output delle richieste prima di andare al passaggio successivo.

Di seguito viene fornita una spiegazione più dettagliata del primo passaggio:

La pipeline viene eseguita chiamando il metodo pipelines.run. Questo metodo utilizza un oggetto Pipeline e un insieme facoltativo di etichette per iniziare a eseguire una pipeline. L'oggetto Pipeline è costituito da una o più descrizioni di Action e un oggetto Resources che descrive quali risorse di Google Cloud sono necessarie per eseguire la pipeline.

L'esempio seguente mostra come configurare un Pipeline semplice che esegue un singolo Action (stampando "Hello, world" sul terminale) su una piccola VM standard (n1-standard-1):

"pipeline": {
  "actions": [
    {
      "imageUri": "bash",
      "commands": [ "-c", "echo Hello, world" ]
    },
  ],
  "resources": {
    "regions": ["us-central11"],
    "virtualMachine": {
      "machineType": "n1-standard-1",
    }
  }
}

L'esempio seguente mostra come configurare un oggetto Action che esegue più comandi. Action copia un file da Cloud Storage nella VM, calcola e verifica l'hash SHA-1 del file, quindi scrive il file nel bucket Cloud Storage originale.

"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" ]
  },
],

La chiamata a pipelines.run restituisce un'operazione a lunga esecuzione su cui puoi eseguire query per ottenere lo stato della pipeline o annullarla.

Ciclo di vita di una richiesta API Cloud Life Sciences

Il ciclo di vita tipico di una pipeline in esecuzione sull'API Cloud Life Sciences è il seguente:

  1. L'API Cloud Life Sciences alloca le risorse Google Cloud necessarie per eseguire la pipeline. Come minimo, questo comporta in genere l'allocazione di una macchina virtuale (VM) Compute Engine con spazio su disco.
  2. Una volta che una VM diventa disponibile, l'API Cloud Life Sciences esegue ogni azione definita nella pipeline. Queste azioni eseguono operazioni come la copia di file di input, l'elaborazione di dati o la copia di file di output.
  3. La pipeline rilascia qualsiasi risorsa allocata, inclusa l'eliminazione di qualsiasi VM creata.

BigQuery ETL utilizzando lo strumento delle trasformazioni delle varianti

Per caricare i dati in scienze biologiche in BigQuery per ulteriori analisi, utilizza lo strumento Trasformazioni delle varianti.

Variant Transforms è uno strumento open source basato su Apache Beam e utilizza Dataflow. Trasformazioni delle varianti è il modo consigliato per trasformare e caricare i dati genomici in Google Cloud per ulteriori analisi.

Utilizzo di altre tecnologie Google Cloud con dati di scienze biologiche

Esistono diverse tecnologie Google Cloud che interagiscono con Cloud Life Sciences o possono essere utilizzate per analizzare ed elaborare dati di scienze biologiche. Queste includono: