Migrazione a Cloud Life Sciences v2beta

Google Genomics ora si chiama Cloud Life Sciences. Questa pagina spiega 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 allinearti alle esigenze di località per i tuoi dati. Quando selezioni la posizione in cui viene eseguita l'API Cloud Life Sciences, i metadati dell'operazione eseguita vengono archiviati in quella posizione.

Per informazioni su come inviare 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 per l'API Cloud Life Sciences:

  • Ora tutti i percorsi utilizzano lifesciences.googleapis.com anziché genomics.googleapis.com.
  • Ora tutti i percorsi richiedono di specificare una località Google Cloud, ad esempious-central1, quando chiami 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 regionali:

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. Utilizza invece il --machine-type flag. Quando scegli un tipo di macchina, puoi specificare la quantità di memoria e il numero di core della CPU.

Modifiche IAM

Cloud Life Sciences utilizza i seguenti ruoli e autorizzazioni Identity and Access Management (IAM) nel namespace lifesciences anziché nel namespace 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 Pipelines 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 sezioni seguenti contiene informazioni su un oggetto dell'API Cloud Life Sciences e sulle eventuali differenze tra l'oggetto e 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 enum che ti consentiva di specificare i valori in un oggetto Flag. Questi valori ora sono campi nell'oggetto Action. Il seguente esempio mostra come eseguire la migrazione della richiesta quando viene impostato il flag ignoreExitStatus in Action:

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

Event

I dettagli degli eventi leggibili dalla macchina ora vengono archiviati come tipo di messaggio specifico all'interno di un messaggio di tipo oneof anziché protobuf.Any. I tipi di messaggi di base non sono stati modificati.

Il seguente esempio mostra come eseguire la migrazione della richiesta durante la configurazione di un 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 accetta 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 restituirono una risposta contenente un ID progetto Google Cloud nei nomi delle operazioni. Nella versione 2beta, il nome dell'operazione nella risposta contiene un numero di progetto Google Cloud anziché un ID progetto. Consulta la pagina Creare e gestire progetti per informazioni sulle differenze tra un ID progetto 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 del progetto.