Bermigrasi ke Cloud Life Sciences v2beta

Google Genomics kini menjadi Cloud Life Sciences. Halaman ini menjelaskan cara bermigrasi dari Google Genomics versi v2alpha1 ke Cloud Life Sciences versi v2beta.

Cloud Life Sciences sebagai layanan regional

Google Genomics adalah layanan global yang tidak dapat berjalan di lokasi Google Cloud tertentu. Cloud Life Sciences API adalah layanan regional yang memungkinkan Anda melakukan penyesuaian dengan kebutuhan lokalitas untuk data Anda. Saat Anda memilih lokasi tempat Cloud Life Sciences API dijalankan, metadata untuk operasi yang Anda jalankan akan disimpan di lokasi tersebut.

Untuk mengetahui informasi tentang cara membuat permintaan ke Cloud Life Sciences API dan menentukan lokasi, lihat jalur REST dan RPC.

Jalur REST dan RPC

Perubahan berikut dilakukan pada jalur REST dan RPC ke Cloud Life Sciences API:

  • Semua jalur kini menggunakan lifesciences.googleapis.com, bukan genomics.googleapis.com.
  • Semua jalur kini mengharuskan Anda menentukan lokasi Google Cloud, seperti us-central1, saat memanggil Cloud Life Sciences API.

Contoh:

v2alpha1 Google Genomics:

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

Cloud Life Sciences API v2beta:

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

Permintaan batch harus dibuat ke endpoint regional:

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

Perubahan Google Cloud CLI

Perintah gcloud CLI Cloud Life Sciences kini menggunakan gcloud beta lifesciences, bukan gcloud alpha genomics. Contoh:

v2alpha1 Google Genomics:

gcloud alpha genomics operations describe OPERATION_ID

Cloud Life Sciences API v2beta:

gcloud beta lifesciences operations describe OPERATION_ID

Tanda --cpu dan --memory telah dihapus. Sebagai gantinya, gunakan flag --machine-type. Saat memilih jenis mesin, Anda dapat menentukan jumlah memori dan jumlah inti CPU.

Perubahan IAM

Cloud Life Sciences menggunakan peran dan izin Identity and Access Management (IAM) berikut di namespace lifesciences, bukan namespace genomics yang digunakan oleh Cloud Genomics v2alpha1. Selain perubahan namespace, peran roles/lifesciences.workflowsRunner menggantikan roles/genomics.pipelinesRunner, dan izin lifesciences.workflows.run menggantikan genomics.pipelines.run.

v2alpha1 Google Genomics:

Peran Izin
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
Peran Pipeline Izin
roles/genomics.pipelinesRunner
  • pipelines.run
  • projects.operations.cancel
  • projects.operations.get
  • projects.operations.list

Cloud Life Sciences API v2beta:

Peran Izin
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
Peran Workflows Izin
roles/lifesciences.workflowsRunner
  • lifesciences.workflows.run
  • lifesciences.operations.cancel
  • lifesciences.operations.get
  • lifesciences.operations.list

Memigrasikan permintaan dan respons

Proses migrasi permintaan Google Genomics v2alpha1 ke permintaan Cloud Life Sciences API v2beta terutama terdiri dari penggantian nama kolom dan perubahan struktur kolom dalam permintaan dan respons.

Setiap bagian berikut berisi informasi tentang objek Cloud Life Sciences API dan perbedaan apa pun yang dimiliki objek tersebut antara Google Genomics v2alpha1 dan Cloud Life Sciences API v2beta.

Action

Kolom name telah diubah menjadi containerName:

Google Genomics v2alpha1Cloud Life Sciences v2beta

{
  "name": string
  ...
}

{
  "containerName": string
  ...
}

Sebelumnya, kolom flags adalah enum yang memungkinkan Anda menentukan nilai dalam objek Flag. Nilai ini sekarang menjadi kolom di objek Action. Contoh berikut menunjukkan cara memigrasikan permintaan Anda saat menyetel tanda ignoreExitStatus di Action:

Google Genomics v2alpha1Cloud Life Sciences v2beta

{
  ...
  "flags": [
    "ignoreExitStatus"
  ]
  ...
}

{
  ...
  "ignoreExitStatus": true
  ...
}

Event

Detail peristiwa yang dapat dibaca mesin kini disimpan sebagai jenis pesan spesifik di dalam oneof, bukan pesan yang diketik protobuf.Any. Jenis pesan dasar tidak berubah.

Contoh berikut menunjukkan cara memigrasikan permintaan saat mengonfigurasi 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

Kolom name telah diubah menjadi network:

Google Genomics v2alpha1Cloud Life Sciences v2beta

{
  "network": {
    "name": string
  }
}

{
  "network": {
    "network": string
  }
}

Resources

Objek Resources tidak lagi menggunakan kolom projectId; sebagai gantinya, operasi mendeteksi project ID Google Cloud dari URL permintaan.

Google Genomics v2alpha1Cloud Life Sciences v2beta

{
  "projectId": string,
  "regions": [
    string
  ],
  ...
}

{
  "regions": [
    string
  ],
  ...
  "defaultContainerRegistryUri": string
}

operations.get dan operations.list respons

Pada v2alpha1, metode projects.locations.operations.get dan projects.locations.operations.list menampilkan respons yang berisi project ID Google Cloud dalam nama operasi. Di v2beta, nama operasi dalam respons berisi nomor project Google Cloud, bukan project ID. Baca artikel Membuat dan mengelola project untuk mengetahui informasi tentang perbedaan antara project ID dan nomor project.

Google Genomics v2alpha1Cloud Life Sciences v2beta


projects/PROJECT_ID/operations/OPERATION_ID


projects/PROJECT_NUMBER/locations/LOCATION/operations/OPERATION_ID

Saat mengirimkan permintaan ke Cloud Life Sciences API, Anda dapat menggunakan project ID atau nomor project. Namun, respons selalu berisi nomor project.