Migrazione a Cloud Life Sciences v2beta

Google Genomics è diventato 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 da località Google Cloud specifiche. 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 dell'API Cloud Life Sciences:

  • Ora tutti i percorsi utilizzano lifesciences.googleapis.com anziché genomics.googleapis.com.
  • Per tutti i percorsi ora è necessario specificare una località Google Cloud, ad esempio us-central1, quando chiami l'API Cloud Life Sciences.

Ad esempio:

v2alpha1 Google Genomics:

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:

v2alpha1 Google Genomics:

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 --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 I ruoli e le autorizzazioni di Identity and Access Management (IAM) nella lifesciences anziché lo spazio dei nomi genomics utilizzato da Cloud Genomics v2alpha1. Oltre alla modifica dello spazio dei nomi, roles/lifesciences.workflowsRunner ha sostituito roles/genomics.pipelinesRunner, e l'autorizzazione lifesciences.workflows.run è stata sostituita 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 seguenti sezioni 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'enumerazione che consente di specificare i valori in un Flag . Questi valori sono ora 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, la 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 2beta, il nome dell'operazione nella risposta contiene un numero di progetto Google Cloud anziché un ID progetto. Per informazioni sulle differenze tra un ID progetto e un numero di progetto, consulta la pagina Creare e gestire progetti.

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.