Migrazione a Cloud Life Sciences v2beta

Google Genomics ora si chiama Cloud Life Sciences. In questa pagina viene spiegato come eseguire la migrazione dalla versione v2alpha1 di Google Genomics alla versione v2beta di Cloud Life Sciences.

Cloud Life Sciences come servizio regionalizzato

Google Genomics era un servizio globale che non poteva essere eseguito in località specifiche di Google Cloud. L'API Cloud Life Sciences è un servizio regionalizzato che ti consente di allineare i tuoi dati alle esigenze di località. Quando selezioni la località in cui viene eseguita l'API Cloud Life Sciences, i metadati per l'operazione che esegui vengono archiviati in quella località.

Per informazioni su come effettuare richieste all'API Cloud Life Sciences e specificare una località, consulta Percorsi REST e RPC.

Percorsi REST e RPC

Sono state apportate le seguenti modifiche ai percorsi REST e RPC all'API Cloud Life Sciences:

  • Tutti i percorsi ora utilizzano lifesciences.googleapis.com anziché genomics.googleapis.com.
  • Tutti i percorsi ora richiedono di specificare una località Google Cloud, ad esempio us-central1, quando si chiama l'API Cloud Life Sciences.

Ad esempio:

Google Genomics v2alpha1:

GET https://genomics.googleapis.com/v2alpha1/projects/PROJECT_ID/operations/OPERATION_ID

API Cloud Life Sciences v2beta:

GET https://lifesciences.googleapis.com/v2beta/projects/PROJECT_ID/locations/LOCATION/operations/OPERATION_ID

Le richieste batch devono essere effettuate agli endpoint a livello di regione:

POST https://LOCATION-lifesciences.googleapis.com/batch

Modifiche a Google Cloud CLI

I comandi gcloud CLI di Cloud Life Sciences ora utilizzano gcloud beta lifesciences anziché gcloud alpha genomics. Ad esempio:

Google Genomics v2alpha1:

gcloud alpha genomics operations describe OPERATION_ID

API Cloud Life Sciences v2beta:

gcloud beta lifesciences operations describe OPERATION_ID

I flag --cpu e --memory sono stati rimossi. Usa invece il flag --machine-type. Quando scegli un tipo di macchina, puoi specificare la quantità di memoria e il numero di core CPU.

Modifiche IAM

Cloud Life Sciences utilizza i seguenti ruoli e autorizzazioni Identity and Access Management (IAM) nello spazio dei nomi lifesciences anziché lo spazio dei nomi genomics utilizzato da Cloud Genomics v2alpha1. Oltre alla modifica dello spazio dei nomi, il ruolo roles/lifesciences.workflowsRunner ha sostituito roles/genomics.pipelinesRunner e l'autorizzazione lifesciences.workflows.run ha sostituito genomics.pipelines.run.

Google Genomics v2alpha1:

Ruolo Autorizzazioni
roles/genomics.admin
  • genomics.*
roles/genomics.editor
  • genomics.datasets.create
  • genomics.datasets.delete
  • genomics.datasets.get
  • genomics.datasets.list
  • genomics.datasets.update
  • genomics.operations.*
roles/genomics.viewer
  • genomics.datasets.get
  • genomics.datasets.list
  • genomics.operations.get
  • genomics.operations.list
Ruolo pipeline Autorizzazione
roles/genomics.pipelinesRunner
  • pipelines.run
  • projects.operations.cancel
  • projects.operations.get
  • projects.operations.list

API Cloud Life Sciences v2beta:

Ruolo Autorizzazioni
roles/lifesciences.admin
  • lifesciences.*
roles/lifesciences.editor
  • lifesciences.workflows.run
  • lifesciences.operations.cancel
  • lifesciences.operations.get
  • lifesciences.operations.list
roles/lifesciences.viewer
  • lifesciences.operations.get
  • lifesciences.operations.list
Ruolo Workflows Autorizzazione
roles/lifesciences.workflowsRunner
  • lifesciences.workflows.run
  • lifesciences.operations.cancel
  • lifesciences.operations.get
  • lifesciences.operations.list

Esegui la migrazione di richieste e risposte

Il processo di migrazione delle richieste di Google Genomics v2alpha1 alle richieste dell'API Cloud Life Sciences v2beta consiste principalmente nella sostituzione dei nomi dei campi e nella modifica delle strutture dei campi all'interno di richieste e risposte.

Ognuna delle seguenti sezioni contiene informazioni su un oggetto API Cloud Life Sciences e sulle eventuali differenze dell'oggetto tra Google Genomics v2alpha1 e l'API Cloud Life Sciences v2beta.

Action

Il campo name è stato modificato in containerName:

Google Genomics v2alpha1Cloud Life Sciences v2beta
{
  "name": string
  ...
}
{
  "containerName": string
  ...
}

In precedenza, il campo flags era un'enumerazione che consente di specificare i valori in un oggetto Flag. Questi valori sono ora campi nell'oggetto Action. Il seguente esempio mostra come eseguire la migrazione della richiesta quando imposti il flag ignoreExitStatus in Action:

Google Genomics v2alpha1Cloud Life Sciences v2beta
{
  ...
  "flags": [
    "ignoreExitStatus"
  ]
  ...
}
{
  ...
  "ignoreExitStatus": true
  ...
}

Event

I dettagli degli eventi leggibili dalle macchine vengono ora archiviati come tipo di messaggio specifico all'interno di un messaggio oneof anziché di un messaggio digitato protobuf.Any. I tipi di messaggi sottostanti non sono cambiati.

Il seguente esempio mostra come eseguire la migrazione della richiesta quando configuri una DelayedEvent:

Google Genomics v2alpha1Cloud Life Sciences v2beta
{
  "timestamp": string,
  "description": string,
  "details": {
    "@type": string,
    field1: delayed
  }
}
{
  "timestamp": string,
  "description": string,
  "delayed": {
    "cause": string,
    "metrics": [
      string
    ]
  }
}

Network

Il campo name è stato modificato in network:

Google Genomics v2alpha1Cloud Life Sciences v2beta
{
  "network": {
    "name": string
  }
}
{
  "network": {
    "network": string
  }
}

Resources

L'oggetto Resources non utilizza più un campo projectId; l'operazione rileva invece l'ID progetto Google Cloud dall'URL della richiesta.

Google Genomics v2alpha1Cloud Life Sciences v2beta
{
  "projectId": string,
  "regions": [
    string
  ],
  ...
}
{
  "regions": [
    string
  ],
  ...
  "defaultContainerRegistryUri": string
}

operations.get e operations.list risposte

Nella versione v2alpha1, i metodi projects.locations.operations.get e projects.locations.operations.list hanno restituito una risposta contenente un ID progetto Google Cloud nei nomi delle operazioni. Nella versione v2beta, il nome dell'operazione nella risposta contiene un numero di progetto Google Cloud anziché un ID progetto. Consulta Creazione e gestione dei progetti per informazioni sulle differenze tra un ID e un numero di progetto.

Google Genomics v2alpha1Cloud Life Sciences v2beta

projects/PROJECT_ID/operations/OPERATION_ID

projects/PROJECT_NUMBER/locations/LOCATION/operations/OPERATION_ID

Quando invii una richiesta all'API Cloud Life Sciences, puoi utilizzare l'ID o il numero del progetto. Tuttavia, la risposta contiene sempre il numero di progetto.