Halaman ini menjelaskan cara melakukan migrasi dari Cloud Life Sciences ke Batch.
Pada 17 Juli 2023, Google Cloud mengumumkan bahwa Cloud Life Sciences, yang dalam versi beta, tidak digunakan lagi. Layanan ini tidak akan tersedia lagi di Google Cloud setelah 8 Juli 2025. Namun, Batch tersedia secara umum dan merupakan penerus komprehensif yang mendukung semua kasus penggunaan untuk Cloud Life Sciences.
Pelajari lebih lanjut Batch, Cloud Life Sciences, dan tahap peluncuran produk.
Cloud Life Sciences versus Batch
Migrasi dari Cloud Life Sciences ke Batch terutama melibatkan pemahaman bagaimana Anda dapat 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 (container) yang akan dijalankan dan lingkungan tempat container 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 (container dan/atau skrip) yang akan dijalankan. Setiap tugas untuk tugas mewakili satu eksekusi dari urutan runnable-nya.
Pipeline Cloud Life Sciences dapat dinyatakan sebagai tugas Batch tugas tunggal.
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, dengan Batch, Anda dapat otomatis menjadwalkan beberapa eksekusi beban kerja. Anda menunjukkan frekuensi yang diinginkan untuk mengeksekusi urutan runnable suatu tugas dengan menentukan jumlah tugas. Jika tugas memiliki beberapa tugas, tentukan cara yang Anda inginkan untuk memvariasikan setiap eksekusi dengan merujuk indeks tugas di runnable Anda. Selain itu, Anda dapat mengonfigurasi jadwal relatif untuk tugas suatu tugas—misalnya, apakah akan mengizinkan beberapa tugas berjalan secara paralel atau mengharuskan tugas dijalankan secara berurutan dan satu per satu. Batch mengelola penjadwalan tugas tugas: saat tugas selesai, tugas tersebut akan otomatis memulai tugas berikutnya, jika ada.
Misalnya, lihat tugas Batch berikut. Tugas contoh ini memiliki 100 tugas yang dijalankan pada 10 instance virtual machine (VM) Compute Engine, sehingga ada sekitar 10 tugas yang berjalan secara paralel pada satu 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 ditetapkan.
{
"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 yang 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. |
|
|
Lihat detail dan status beban kerja. |
|
|
Hentikan dan hapus beban kerja. |
|
|
Operasi dasar untuk Cloud Life Sciences dan Batch memiliki beberapa perbedaan utama.
Pertama, resource operasi yang berjalan lama tidak memiliki peran yang sama dalam Batch seperti di Cloud Life Sciences.
Resource operasi yang berjalan lama (LRO) 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 penyelesaian yang lama. Secara khusus, dalam Batch, satu-satunya permintaan yang
menampilkan resource operasi yang berjalan lama adalah menghapus tugas.
Untuk mengetahui informasi selengkapnya tentang resource operasi yang berjalan lama untuk
Batch, lihat
Dokumentasi referensi Batch API untuk resource REST projects.locations.operations
.
Batch memiliki resource tugas yang Anda lihat dan hapus untuk beban kerja, bukan menggunakan resource operasi
yang berjalan lama.
Kedua, melihat detail beban kerja dalam Batch melibatkan operasi yang berbeda dari Cloud Life Sciences. Anda dapat melihat pekerjaan untuk melihat detail dan statusnya. Namun, setiap tugas pekerjaan juga memiliki detail dan statusnya sendiri yang dapat Anda lihat dengan melihat daftar tugas dan detail tugas.
Untuk membantu Anda lebih memahami operasi dasar Cloud Life Sciences versus Batch, bagian berikut memberikan contoh perintah Google Cloud CLI dan jalur permintaan API untuk beberapa operasi dasar tersebut.
Contoh perintah CLI gcloud
Untuk gcloud CLI, perintah Cloud Life Sciences dimulai dengan gcloud beta lifesciences
dan perintah Batch diawali dengan gcloud batch
.
Misalnya, lihat perintah gcloud CLI berikut.
Contoh perintah CLI gcloud untuk Cloud Life Sciences:
Jalankan 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 batch perintah gcloud CLI:
Membuat dan menjalankan tugas:
gcloud batch jobs submit JOB_NAME \ --project=PROJECT_ID \ --location=LOCATION \ --config=JSON_CONFIGURATION_FILE
Melihat detail pekerjaan:
gcloud batch jobs describe JOB_NAME \ --project=PROJECT_ID \ --location=LOCATION \
Melihat daftar tugas dari sebuah pekerjaan:
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) pekerjaan:
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 ingin Anda lihat detailnya. Dalam grup tugas, indeks tugas dimulai dari 0 untuk tugas pertama dan meningkat 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:
Jalankan 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 contoh batch:
Membuat dan menjalankan tugas:
POST https://batch.googleapis.com/v1/projects/PROJECT_ID/locations/LOCATION/jobs?job_id=JOB_NAME
Melihat detail pekerjaan:
GET https://batch.googleapis.com/v1/projects/PROJECT_ID/locations/LOCATION/jobs/JOB_NAME
Melihat daftar tugas dari sebuah pekerjaan:
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 Identity and Access Management dan izin untuk Cloud Life Sciences dan Batch. Untuk mengetahui informasi lebih lanjut tentang peran apa pun dan izinnya, baca 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 ) dalam 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 suatu tugas. Untuk mengetahui informasi lebih lanjut tentang persyaratan IAM, lihat Prasyarat untuk Batch.
Peran batch untuk pengguna | Izin |
---|---|
Batch Job Editor (roles/batch.jobsEditor ) pada 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 perbedaan di antara fitur-fitur tersebut.
Setiap fitur diwakili 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, perhatikan bahwa Anda juga dapat menggunakan fitur Batch melalui metode lain, misalnya melalui kolom Google Cloud Console, flag gcloud CLI, dan library klien, yang dijelaskan dalam Dokumentasi batch.
Untuk mengetahui informasi selengkapnya tentang setiap fitur dan sintaksis JSON-nya, lihat artikel 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 yang memiliki satu tugas. Namun, Cloud Life Sciences tidak memiliki konsep yang setara untuk (tugas dengan banyak) tugas, yang agak mirip dengan pengulangan pipeline. Untuk informasi selengkapnya tentang tugas dan tugas, lihat Ringkasan Batch. |
tindakan (actions[] ) untuk pipeline |
runnable (runnables[] ) untuk tugas suatu tugas |
Tindakan Cloud Life Sciences menjelaskan container, tetapi Batch runnable dapat berisi container atau skrip. |
kredensial (credentials ) untuk tindakan |
untuk container yang dapat dijalankan: |
Dalam Cloud Life Sciences, kredensial tindakan harus berupa kamus terenkripsi Cloud Key Management Service dengan key-value pair nama pengguna dan sandi. Dalam Batch, nama pengguna dan sandi untuk container yang dapat dijalankan berada di kolom terpisah. Salah satu kolom dapat ditentukan dengan teks biasa atau dengan nama rahasia Secret Manager. |
untuk tindakan:
|
untuk lingkungan:
lingkungan yang mungkin:
|
Dengan Cloud Life Sciences, Anda dapat menentukan variabel lingkungan untuk tindakan yang diformat sebagai teks biasa atau kamus terenkripsi.
Dalam Batch, hal ini mirip dengan memiliki lingkungan
untuk runnable (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 pada satu VM, yang dapat Anda tentukan untuk region dan/atau zona yang diinginkan. Dalam Batch, opsi yang setara adalah lokasi yang diizinkan untuk tugas, yang dapat Anda tetapkan 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, tetapi setiap VM mungkin berada di zona yang berbeda dari region tersebut. Secara khusus, menentukan kolom lokasi yang diizinkan untuk tugas bersifat opsional karena terpisah dari lokasi pekerjaan. Tidak seperti lokasi tugas, lokasi yang diizinkan tidak memengaruhi lokasi yang digunakan untuk membuat tugas Batch dan menyimpan metadata tugas. Untuk informasi selengkapnya, lihat Lokasi batch. |
untuk resource pipeline (
|
untuk kebijakan resource tugas (
|
Di Cloud Life Sciences, Anda dapat mengonfigurasi (satu) VM yang dijalankan oleh pipeline. Dalam Batch, opsi yang sama untuk VM tersedia di kolom kebijakan alokasi resource tugas (
|
untuk tindakan:
|
untuk runnable:
|
Berbagai flag kemudahan dari Cloud Life Sciences ini setara dalam Batch, kecuali ditentukan untuk setiap runnable (yang dapat berisi skrip atau container), bukan setiap tindakan (container). |
untuk tindakan:
|
opsi (options ) untuk container yang dapat dijalankan |
Opsi Cloud Life Sciences ini (dan lainnya) didukung dalam
Batch melalui kolom opsi ( |
untuk tindakan:
|
tidak ada padanan |
Batch pengambilan data gambar dan proses
output dari semua runnable secara identik sesuai dengan kebijakan
log tugas ( |
opsi untuk memblokir jaringan eksternal (blockExternalNetwork ) untuk tindakan |
opsi untuk memblokir jaringan eksternal (blockExternalNetwork ) bagi container yang dapat dijalankan |
Opsi Cloud Life Sciences untuk memblokir jaringan eksternal untuk suatu tindakan serupa dengan opsi Batch untuk memblokir jaringan eksternal untuk sebuah container. Batch juga memiliki banyak opsi jaringan lainnya, seperti untuk memblokir jaringan eksternal untuk semua VM tugas. Untuk mengetahui informasi selengkapnya, lihat Ringkasan jaringan batch. |
dudukan (mounts[] ) untuk tindakan |
volume untuk semua runnable (volumes[] dalam taskSpec ) dan opsi volume untuk container (volumes[] dalam container ) |
Dalam Batch, Anda dapat menggunakan kolom Selain itu, Batch mendukung opsi volume eksplisit pada container yang dapat dijalankan menggunakan kolom Untuk mengetahui informasi selengkapnya tentang penggunaan volume penyimpanan dengan Batch, lihat Membuat dan menjalankan tugas yang menggunakan volume penyimpanan. |
opsi guna 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 suatu tugas.
Akibatnya, Anda tidak mengaktifkan alat pemasangan apa pun seperti Cloud Storage FUSE for Batch. Namun, Anda dapat secara opsional menentukan opsi pemasangan untuk volume penyimpanan menggunakan kolom Untuk mengetahui informasi selengkapnya tentang penggunaan bucket Cloud Storage dengan Batch, lihat Membuat dan menjalankan tugas yang menggunakan volume penyimpanan. |
Topik Pub/Sub (pubSubTopic ) untuk permintaan menjalankan pipeline |
untuk konfigurasi notifikasi tugas (
|
Batch memungkinkan penyesuaian update status yang lebih besar daripada Cloud Life Sciences. Misalnya, pengguna Batch dapat menerima notifikasi mengenai topik Pub/Sub ketika masing-masing tugas berubah status atau hanya ketika tugas keseluruhan berubah status. |
Layanan alur kerja
Jika Anda menggunakan layanan alur kerja dengan Cloud Life Sciences, proses migrasi juga melibatkan konfigurasi layanan alur kerja agar berfungsi dengan Batch. Bagian ini merangkum layanan alur kerja yang dapat Anda gunakan dengan Batch. Selain layanan alur kerja yang tercantum di bagian ini, Batch juga berencana untuk mendukung lebih banyak layanan alur kerja dari waktu ke waktu.
Batch mendukung Workflows, 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 akan 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 dalam menggunakan setiap layanan alur kerja dengan Batch, bukan Cloud Life Sciences, serta detail tentang tempat untuk mempelajari lebih lanjut cara menggunakan setiap Batch tugas.
Layanan Alur Kerja | Perbedaan Utama | Detail |
---|---|---|
Nextflow |
Agar dapat 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 mengetahui informasi selengkapnya tentang opsi konfigurasi, lihat dokumentasi Nextflow. |
Cromwell |
Untuk menggunakan file konfigurasi Cromwell untuk Cloud Life Sciences API v2beta dengan Batch API, lakukan perubahan berikut:
|
Untuk mempelajari lebih lanjut cara menggunakan Batch dengan Cromwell, lihat dokumentasi Cromwell untuk Batch dan tutorial Crromwell untuk Batch. |
CANNOT TRANSLATE |
Untuk menggunakan pipeline dsub jalankan dari Cloud Life Sciences API dengan Batch, buat perubahan berikut:
|
Untuk mempelajari lebih lanjut cara menggunakan Batch dengan dsub, lihat dokumentasi dsub untuk Batch. |
Langkah selanjutnya
- Guna mengonfigurasi Batch untuk pengguna dan project baru, lihat Memulai.
- Untuk mempelajari cara menjalankan beban kerja menggunakan Batch, lihat Membuat tugas.