Halaman ini menjelaskan cara bermigrasi ke Batch dari Cloud Life Sciences.
Pada 17 Juli 2023, Google Cloud mengumumkan bahwa Cloud Life Sciences, yang telah dalam versi beta, tidak digunakan lagi. Layanan ini tidak akan tersedia lagi di Google Cloud setelah 8 Juli 2025. Namun, Batch umumnya tersedia dan merupakan penerus komprehensif yang mendukung semua kasus penggunaan untuk Cloud Life Sciences.
Pelajari Batch, Cloud Life Sciences, dan tahap peluncuran produk lebih lanjut.
Cloud Life Sciences versus Batch
Memigrasikan dari Cloud Life Sciences ke Batch secara utama melibatkan pemahaman tentang cara menggunakan Batch untuk beban kerja yang saat ini Anda jalankan dengan menjalankan pipeline Cloud Life Sciences.
Untuk memahami cara menjalankan workload Cloud Life Sciences di Batch, lihat semua bagian berikut:
Ringkasan
Pipeline Cloud Life Sciences menjelaskan urutan tindakan (penampung) yang akan dijalankan dan lingkungan tempat penampung dijalankan.
Tugas Batch menjelaskan array dari satu atau beberapa tugas dan lingkungan untuk menjalankan tugas tersebut. Anda menentukan beban kerja untuk tugas sebagai satu urutan dari satu atau beberapa runnable (penampung dan/atau skrip) yang akan dijalankan. Setiap tugas untuk tugas mewakili satu eksekusi urutan runnable-nya.
Pipeline Cloud Life Sciences dapat dinyatakan sebagai tugas Batch satu tugas.
Misalnya, contoh berikut menjelaskan pipeline Cloud Life Sciences sederhana dan tugas Batch yang setara:
Pipeline Cloud Life Sciences | Tugas batch |
---|---|
{ "actions": [ { "imageUri": "bash", "commands": [ "-c", "echo Hello, world!" ] } ] } |
{ "taskGroups" : [{ "taskSpec" : { "runnables" : [{ "container":{ "imageUri": "bash", "commands": [ "-c", "echo Hello, world!" ] } }] } }] } |
Tugas Batch multi-tugas mirip dengan pipeline Cloud Life Sciences yang disalin.
Tidak seperti Cloud Life Sciences, Batch memungkinkan Anda menjadwalkan beberapa eksekusi beban kerja secara otomatis. Anda menunjukkan frekuensi Anda ingin menjalankan urutan runnable untuk tugas dengan menentukan jumlah tugas. Jika tugas memiliki beberapa tugas, Anda menentukan bagaimana Anda ingin setiap eksekusi bervariasi dengan mereferensikan indeks tugas dalam runnable. Selain itu, Anda dapat mengonfigurasi jadwal relatif untuk tugas tugas—misalnya, apakah akan mengizinkan beberapa tugas berjalan secara paralel atau mewajibkan tugas berjalan dalam urutan berurutan dan satu per satu. Batch mengelola penjadwalan tugas tugas: saat tugas selesai, tugas akan otomatis memulai tugas berikutnya, jika ada.
Misalnya, lihat tugas Batch berikut. Contoh tugas ini memiliki 100 tugas yang dijalankan di 10 instance virtual machine (VM) Compute Engine, sehingga ada sekitar 10 tugas yang berjalan secara paralel pada waktu tertentu. Setiap tugas dalam contoh tugas ini hanya mengeksekusi satu tugas yang dapat dijalankan:
skrip yang mencetak pesan dan indeks tugas, yang ditentukan oleh
variabel lingkungan BATCH_TASK_INDEX
yang telah ditentukan sebelumnya.
{
"taskGroups" : [{
"taskSpec" : {
"runnables" : [{
"script":{
"text": "echo Hello world! This is task ${BATCH_TASK_INDEX}."
}
}]
},
"taskCount": 100,
"parallelism": 10
}]
}
Alur kerja yang melibatkan pembuatan dan pemantauan beberapa pipeline Cloud Life Sciences serupa terkadang dapat disederhanakan dengan memanfaatkan penjadwalan bawaan Batch.
Operasi dasar
Bagian ini menjelaskan operasi dasar di Cloud Life Sciences versus Batch.
Tabel berikut merangkum opsi operasi dasar untuk Cloud Life Sciences dan Batch.
Operasi dasar | Opsi Cloud Life Sciences | Opsi batch |
---|---|---|
Menjalankan beban kerja. |
|
|
Melihat semua beban kerja Anda. |
|
|
Melihat detail dan status untuk beban kerja. |
|
|
Menghentikan dan menghapus workload. |
|
|
Operasi dasar untuk Cloud Life Sciences dan Batch memiliki beberapa perbedaan utama.
Pertama, resource operasi yang berjalan lama tidak memiliki peran yang sama di Batch seperti di Cloud Life Sciences.
Resource operasi yang berjalan lama (LROs) di Cloud Life Sciences
adalah resource utama yang digunakan untuk mencantumkan dan melihat pipeline Anda. Namun,
resource operasi yang berjalan lama di Batch dan Google Cloud API lainnya
hanya digunakan untuk memantau status permintaan yang memerlukan waktu lama untuk
selesai. Secara khusus, di Batch, satu-satunya permintaan yang
menampilkan resource operasi yang berjalan lama adalah menghapus tugas.
Untuk informasi selengkapnya tentang resource operasi yang berjalan lama untuk
Batch, lihat
dokumentasi referensi Batch API untuk resource REST projects.locations.operations
.
Alih-alih menggunakan resource operasi yang berjalan lama, Batch memiliki
resource tugas yang Anda lihat dan hapus untuk workload Anda.
Kedua, melihat detail beban kerja di Batch melibatkan operasi yang berbeda dengan Cloud Life Sciences. Anda dapat melihat tugas untuk melihat detail dan statusnya. Namun, setiap tugas pekerjaan juga memiliki detail dan statusnya sendiri yang dapat Anda lihat dengan melihat daftar tugas pekerjaan dan melihat detail tugas.
Untuk membantu Anda lebih memahami operasi dasar untuk Cloud Life Sciences versus Batch, bagian berikut memberikan contoh perintah Google Cloud CLI dan jalur permintaan API untuk beberapa operasi dasar ini.
Contoh perintah gcloud CLI
Untuk gcloud CLI, perintah Cloud Life Sciences dimulai dengan gcloud beta lifesciences
dan perintah Batch dimulai dengan gcloud batch
.
Misalnya, lihat perintah gcloud CLI berikut.
Contoh perintah gcloud CLI Cloud Life Sciences:
Menjalankan pipeline:
gcloud beta lifesciences pipelines run \ --project=PROJECT_ID \ --regions=LOCATION \ --pipeline-file=JSON_CONFIGURATION_FILE
Mendapatkan detail untuk operasi yang berjalan lama:
gcloud beta lifesciences operations describe OPERATION_ID
Ganti kode berikut:
PROJECT_ID
: Project ID project Anda.LOCATION
: lokasi untuk pipeline.JSON_CONFIGURATION_FILE
: file konfigurasi JSON untuk pipeline.OPERATION_ID
: ID untuk operasi yang berjalan lama, yang ditampilkan oleh permintaan untuk menjalankan pipeline.
Contoh perintah gcloud CLI batch:
Buat dan jalankan tugas:
gcloud batch jobs submit JOB_NAME \ --project=PROJECT_ID \ --location=LOCATION \ --config=JSON_CONFIGURATION_FILE
Melihat detail tugas:
gcloud batch jobs describe JOB_NAME \ --project=PROJECT_ID \ --location=LOCATION \
Melihat daftar tugas tugas:
gcloud batch tasks list \ --project=PROJECT_ID \ --location=LOCATION \ --job=JOB_NAME
Melihat detail tugas:
gcloud batch tasks describe TASK_INDEX \ --project=PROJECT_ID \ --location=LOCATION \ --job=JOB_NAME \ --task_group=TASK_GROUP
Menghapus (dan membatalkan) tugas:
gcloud batch jobs delete JOB_NAME \ --project=PROJECT_ID \ --location=LOCATION
Ganti kode berikut:
JOB_NAME
: nama tugas.PROJECT_ID
: Project ID project Anda.LOCATION
: lokasi tugas.JSON_CONFIGURATION_FILE
: jalur untuk file JSON dengan detail konfigurasi tugas.TASK_INDEX
: indeks tugas yang detailnya ingin Anda lihat. Dalam grup tugas, indeks tugas dimulai dari 0 untuk tugas pertama dan bertambah 1 dengan setiap tugas tambahan. Misalnya, grup tugas yang berisi empat tugas memiliki indeks0
,1
,2
, dan3
.TASK_GROUP_NAME
: nama grup tugas yang ingin Anda lihat detailnya. Nilai harus ditetapkan kegroup0
.
Contoh jalur permintaan API
Untuk API, Cloud Life Sciences menggunakan
jalur permintaan lifesciences.googleapis.com
dan Batch menggunakan
jalur permintaan batch.googleapis.com
.
Misalnya, lihat jalur permintaan API berikut. Tidak seperti Cloud Life Sciences, Batch tidak memiliki RPC API; hanya memiliki REST API.
Contoh jalur permintaan API Cloud Life Sciences:
Menjalankan pipeline:
POST https://lifesciences.googleapis.com/v2beta/projects/PROJECT_ID/locations/LOCATION/pipelines:run
Mendapatkan detail untuk operasi yang berjalan lama:
GET https://lifesciences.googleapis.com/v2beta/projects/PROJECT_ID/locations/LOCATION/operations/OPERATION_ID
Ganti kode berikut:
PROJECT_ID
: Project ID project Anda.LOCATION
: lokasi untuk pipeline.OPERATION_ID
: ID untuk operasi yang berjalan lama, yang ditampilkan oleh permintaan untuk menjalankan pipeline.
Contoh jalur permintaan API batch:
Buat dan jalankan tugas:
POST https://batch.googleapis.com/v1/projects/PROJECT_ID/locations/LOCATION/jobs?job_id=JOB_NAME
Melihat detail tugas:
GET https://batch.googleapis.com/v1/projects/PROJECT_ID/locations/LOCATION/jobs/JOB_NAME
Melihat daftar tugas tugas:
GET https://batch.googleapis.com/v1/projects/PROJECT_ID/locations/LOCATION/jobs/JOB_NAME/taskGroups/TASK_GROUP/tasks
Menghapus tugas
DELETE https://batch.googleapis.com/v1/projects/PROJECT_ID/locations/LOCATION/jobs/JOB_NAME
Periksa status permintaan penghapusan tugas:
GET https://batch.googleapis.com/v1/projects/PROJECT_ID/locations/LOCATION/operations/OPERATION_ID
Ganti kode berikut:
PROJECT_ID
: Project ID project Anda.LOCATION
: lokasi tugas.JOB_NAME
: nama tugas.TASK_GROUP_NAME
: nama grup tugas yang ingin Anda lihat detailnya. Nilai harus ditetapkan kegroup0
.OPERATION_ID
: ID untuk operasi yang berjalan lama, yang ditampilkan oleh permintaan untuk menghapus tugas.
Peran dan izin IAM
Bagian ini merangkum perbedaan peran dan izin Identity and Access Management untuk Cloud Life Sciences dan Batch. Untuk mengetahui informasi selengkapnya tentang peran dan izinnya, lihat Referensi peran dasar dan bawaan IAM.
Tabel berikut menjelaskan peran bawaan dan izinnya yang diperlukan untuk pengguna Cloud Life Sciences.
Peran Cloud Life Sciences | Izin |
---|---|
Salah satu dari berikut ini:
|
|
Cloud Life Sciences Viewer (roles/lifesciences.viewer ) di project |
|
Tabel berikut menjelaskan beberapa peran yang telah ditetapkan dan izinnya untuk Batch. Tidak seperti Cloud Life Sciences, Batch mengharuskan Anda memberikan izin kepada pengguna dan akun layanan untuk tugas. Untuk mengetahui informasi selengkapnya tentang persyaratan IAM, lihat Prasyarat untuk Batch.
Peran batch untuk pengguna | Izin |
---|---|
Batch Job Editor (roles/batch.jobsEditor ) di project |
|
Batch Job Viewer (roles/batch.jobsViewer ) di project |
|
Service Account User (roles/iam.serviceAccountUser ) di akun layanan tugas |
|
Peran batch untuk akun layanan | Izin |
Batch Agent Reporter (roles/batch.agentReporter ) di project |
|
Fitur yang sesuai
Tabel berikut menjelaskan fitur untuk Cloud Life Sciences, fitur yang setara untuk Batch, dan detail tentang perbedaan di antara keduanya.
Setiap fitur direpresentasikan oleh deskripsi dan sintaksis JSON-nya. Anda dapat menggunakan sintaksis JSON saat mengakses Batch melalui API atau saat menentukan file konfigurasi JSON melalui Google Cloud CLI. Namun, perlu diperhatikan bahwa Anda juga dapat menggunakan fitur Batch melalui metode lain—seperti melalui kolom konsol Google Cloud, flag gcloud CLI, dan library klien—yang dijelaskan dalam dokumentasi Batch.
Untuk informasi selengkapnya tentang setiap fitur dan sintaksis JSON-nya, lihat hal berikut:
Untuk Cloud Life Sciences, lihat dokumentasi referensi Cloud Life Sciences API untuk resource REST
projects.locations.pipelines
.Untuk Batch, lihat dokumentasi referensi Batch API untuk resource REST
projects.locations.jobs
.
Fitur Cloud Life Sciences | Fitur batch | Detail |
---|---|---|
pipeline (pipeline ) |
tugas (job ) dan tugasnya (taskGroups[] ) |
Tugas Batch terdiri dari array dari satu atau beberapa tugas yang masing-masing menjalankan semua runnable yang sama. Pipeline Cloud Life Sciences mirip dengan tugas Batch dengan satu tugas. Namun, Cloud Life Sciences tidak memiliki konsep yang setara untuk tugas (tugas dengan beberapa), yang agak mirip dengan pengulangan pipeline. Untuk mengetahui informasi selengkapnya tentang tugas dan tugas, lihat Ringkasan untuk Batch. |
tindakan (actions[] ) untuk pipeline |
runnable (runnables[] ) untuk tugas tugas |
Tindakan Cloud Life Sciences menjelaskan penampung, tetapi Batch yang dapat dijalankan dapat berisi penampung atau skrip. |
kredensial (credentials ) untuk tindakan |
untuk container yang dapat dijalankan: |
Di Cloud Life Sciences, kredensial tindakan harus berupa kamus terenkripsi Cloud Key Management Service dengan pasangan nilai kunci nama pengguna dan sandi. Di Batch, nama pengguna dan sandi untuk penampung yang dapat dijalankan berada di kolom terpisah. Kedua kolom dapat ditentukan dengan teks biasa atau dengan nama secret Secret Manager. |
untuk tindakan:
|
untuk lingkungan:
kemungkinan lingkungan:
|
Cloud Life Sciences memungkinkan Anda menentukan variabel lingkungan untuk tindakan yang diformat sebagai teks biasa atau sebagai kamus terenkripsi.
Di Batch, hal ini mirip dengan membuat lingkungan
untuk yang dapat dijalankan (kolom Namun, Batch juga memiliki lebih banyak opsi untuk menentukan variabel lingkungan:
Untuk mengetahui informasi selengkapnya, lihat Menggunakan variabel lingkungan. |
label untuk permintaan guna menjalankan pipeline (labels dalam isi permintaan) |
label untuk tugas (labels di resource tugas) |
Tidak seperti Cloud Life Sciences, Batch tidak menyertakan kolom label dalam permintaan untuk membuat tugas baru. Opsi terdekat untuk Batch adalah menggunakan label yang hanya dikaitkan dengan tugas. Batch memiliki beberapa jenis label
(kolom |
region (regions[] ) dan zona (zones[] ) untuk resource pipeline (resources ) |
lokasi yang diizinkan (allowedLocations ) untuk kebijakan lokasi resource tugas (locationPolicy ) |
Di Cloud Life Sciences, pipeline dijalankan di satu VM, yang dapat Anda tentukan region dan/atau zona yang diinginkan. Di Batch, opsi yang setara adalah lokasi yang diizinkan untuk tugas, yang dapat Anda tentukan sebagai satu atau beberapa region atau zona dan menentukan tempat VM untuk tugas dapat dibuat. Semua VM untuk satu tugas Batch termasuk dalam satu grup instance terkelola (MIG), yang ada di region tertentu; namun, setiap VM mungkin berada di zona yang berbeda di region tersebut. Secara khusus, menentukan kolom lokasi yang diizinkan untuk tugas bersifat opsional karena terpisah dari lokasi tugas. Tidak seperti lokasi tugas, lokasi yang diizinkan tidak memengaruhi lokasi yang digunakan untuk membuat tugas Batch dan menyimpan metadata tugas. Untuk mengetahui informasi selengkapnya, lihat Lokasi batch. |
untuk resource pipeline (
|
untuk kebijakan resource tugas (
|
Di Cloud Life Sciences, Anda dapat mengonfigurasi (satu) VM tempat pipeline berjalan. Di Batch,
opsi yang sama untuk VM tersedia di kolom
kebijakan alokasi resource tugas (
|
untuk tindakan:
|
untuk runnable:
|
Berbagai flag praktis dari Cloud Life Sciences ini setara di Batch, kecuali jika ditentukan untuk setiap yang dapat dijalankan (yang dapat berisi skrip atau penampung), bukan setiap tindakan (penampung). |
untuk tindakan:
|
opsi (options ) untuk container yang dapat dijalankan |
Opsi Cloud Life Sciences ini (dan lainnya) didukung di Batch melalui kolom opsi ( |
untuk tindakan:
|
tidak ada padanan |
Batch melakukan pengambilan data gambar dan memproses
output dari semua yang dapat dijalankan secara identik sesuai dengan kebijakan
log tugas ( |
opsi untuk memblokir jaringan eksternal (blockExternalNetwork ) untuk tindakan |
opsi untuk memblokir jaringan eksternal (blockExternalNetwork ) untuk container yang dapat dijalankan |
Opsi Cloud Life Sciences untuk memblokir jaringan eksternal untuk tindakan mirip dengan opsi Batch untuk memblokir jaringan eksternal untuk penampung. Batch juga memiliki banyak opsi jaringan lainnya, seperti untuk memblokir jaringan eksternal untuk semua VM tugas. Untuk informasi selengkapnya, lihat Ringkasan jaringan batch. |
pemasangan (mounts[] ) untuk tindakan |
volume untuk semua yang dapat dijalankan (volumes[] di taskSpec ) dan opsi volume untuk penampung (volumes[] di container ) |
Di Batch, Anda dapat menggunakan
kolom Selain itu, Batch
mendukung opsi volume eksplisit pada runnable penampung dengan menggunakan
kolom Untuk informasi selengkapnya tentang cara menggunakan volume penyimpanan dengan Batch, lihat Membuat dan menjalankan tugas yang menggunakan volume penyimpanan. |
opsi untuk mengaktifkan Cloud Storage FUSE (enableFuse ) untuk tindakan |
tidak ada padanan |
Batch menangani pemasangan volume penyimpanan apa pun,
seperti bucket Cloud Storage, yang Anda tentukan untuk tugas.
Akibatnya, Anda tidak mengaktifkan alat pemasangan seperti Cloud Storage FUSE untuk Batch; tetapi, Anda dapat menentukan opsi pemasangan untuk volume penyimpanan secara opsional menggunakan kolom Untuk informasi selengkapnya tentang cara menggunakan bucket Cloud Storage dengan Batch, lihat Membuat dan menjalankan tugas yang menggunakan volume penyimpanan. |
Topik Pub/Sub (pubSubTopic ) untuk permintaan guna menjalankan pipeline |
untuk konfigurasi notifikasi tugas (
|
Batch memungkinkan penyesuaian pembaruan status yang lebih besar daripada Cloud Life Sciences. Misalnya, pengguna Batch dapat diberi tahu tentang topik Pub/Sub saat setiap tugas mengubah status atau hanya saat keseluruhan tugas mengubah status. |
Layanan alur kerja
Jika Anda menggunakan layanan alur kerja dengan Cloud Life Sciences, proses migrasi Anda juga akan melibatkan konfigurasi layanan alur kerja agar dapat berfungsi dengan Batch. Bagian ini merangkum layanan alur kerja yang dapat Anda gunakan dengan Batch.
Batch mendukung Alur Kerja, yang merupakan layanan alur kerja dari Google Cloud. Jika Anda ingin menggunakan Workflows dengan Batch, lihat Menjalankan tugas Batch menggunakan Workflows. Jika tidak, tabel berikut menjelaskan layanan alur kerja lain yang mungkin Anda gunakan untuk Cloud Life Sciences yang juga dapat Anda gunakan dengan Batch. Tabel ini mencantumkan perbedaan utama untuk menggunakan setiap layanan alur kerja dengan Batch, bukan Cloud Life Sciences, dan detail tentang tempat mempelajari lebih lanjut cara menggunakan setiap layanan dengan Batch.
Layanan Alur Kerja | Perbedaan Utama | Detail |
---|---|---|
Cromwell |
Untuk menggunakan file konfigurasi Cromwell untuk Cloud Life Sciences API v2beta dengan Batch API, buat perubahan berikut:
|
Untuk mempelajari lebih lanjut cara menggunakan Batch dengan Cromwell, lihat dokumentasi Cromwell untuk Batch dan tutorial Cromwell untuk Batch. |
dsub |
Untuk menggunakan pipeline dsub untuk Cloud Life Sciences dengan Batch, lakukan perubahan berikut:
|
Untuk mempelajari lebih lanjut cara menggunakan Batch dengan dsub, lihat dokumentasi dsub untuk Batch. |
Nextflow |
Untuk menggunakan file konfigurasi Nextflow untuk Cloud Life Sciences dengan Batch, lakukan perubahan berikut:
|
Untuk mempelajari lebih lanjut cara menggunakan Batch dengan Nextflow, lihat tutorial Batch atau tutorial Nextflow Untuk informasi selengkapnya tentang opsi konfigurasi, lihat dokumentasi Nextflow. |
Snakemake |
Untuk menggunakan pipeline Snakemake untuk Cloud Life Sciences API v2beta dengan Batch API, lakukan perubahan berikut:
|
Untuk mempelajari lebih lanjut cara menggunakan Batch dengan Snakemake, lihat dokumentasi Snakemake untuk Batch. |
Langkah selanjutnya
- Untuk mengonfigurasi Batch bagi pengguna dan project baru, lihat Memulai.
- Untuk mempelajari cara menjalankan beban kerja menggunakan Batch, lihat Membuat tugas.