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 menyesuaikan dengan kebutuhan lokalitas untuk data Anda. Saat Anda memilih lokasi tempat Cloud Life Sciences API berjalan, 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:

Google Genomics v2alpha1:

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 dilakukan 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:

Google Genomics v2alpha1:

gcloud alpha genomics operations describe OPERATION_ID

Cloud Life Sciences API v2beta:

gcloud beta lifesciences operations describe OPERATION_ID

Flag --cpu dan --memory telah dihapus. Sebagai gantinya, gunakan flag --machine-type. Saat memilih jenis mesin, Anda dapat menentukan jumlah memori dan jumlah core 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.

Google Genomics v2alpha1:

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 Pipelines 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 alur kerja 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 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 dalam objek Action. Contoh berikut menunjukkan cara memigrasikan permintaan saat menetapkan 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 tertentu di dalam oneof, bukan pesan yang diketik protobuf.Any. Jenis pesan yang mendasarinya belum 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; operasi ini 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

Di 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. Lihat 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.