Bagikan melalui


Menjadwalkan pekerjaan impor data (pratinjau)

BERLAKU UNTUK:Ekstensi ml Azure CLI v2 (saat ini)Python SDK azure-ai-ml v2 (saat ini)

Dalam artikel ini, Anda akan mempelajari cara menjadwalkan impor data secara terprogram, menggunakan antarmuka pengguna jadwal untuk melakukannya. Anda dapat membuat jadwal berdasarkan waktu yang berlalu. Jadwal berbasis waktu dapat menangani tugas rutin - misalnya, impor data reguler untuk selalu memperbaruinya. Setelah mempelajari cara membuat jadwal, Anda akan mempelajari cara mengambil, memperbarui, dan menonaktifkannya melalui sumber daya CLI, SDK, dan UI studio.

Prasyarat

Menjadwalkan impor data

Untuk mengimpor data secara berulang, Anda harus membuat jadwal. Mengaitkan Schedule tindakan impor data dengan pemicu. Pemicunya bisa berupa cron, yang menggunakan ekspresi cron untuk menjelaskan penundaan antara eksekusi, atau recurrence, yang menentukan frekuensi untuk memicu pekerjaan. Dalam setiap kasus, Anda harus terlebih dahulu membangun definisi data impor. Impor data yang ada, atau impor data yang ditentukan sebaris, berfungsi untuk ini. Untuk informasi selengkapnya, kunjungi Membuat impor data di CLI, SDK, dan UI.

Membuat jadwal

Membuat jadwal berbasis waktu dengan pola pengulangan

BERLAKU UNTUK: Ekstensi ml Azure CLI v2 (saat ini)

YAML: Jadwal impor data dengan pola pengulangan

$schema: https://azuremlschemas.azureedge.net/latest/schedule.schema.json
name: simple_recurrence_import_schedule
display_name: Simple recurrence import schedule
description: a simple hourly recurrence import schedule

trigger:
  type: recurrence
  frequency: day #can be minute, hour, day, week, month
  interval: 1 #every day
  schedule:
    hours: [4,5,10,11,12]
    minutes: [0,30]
  start_time: "2022-07-10T10:00:00" # optional - default will be schedule creation time
  time_zone: "Pacific Standard Time" # optional - default will be UTC

import_data: ./my-snowflake-import-data.yaml

YAML: Menjadwalkan definisi impor data sebaris dengan pola pengulangan pada datastore terkelola

$schema: https://azuremlschemas.azureedge.net/latest/schedule.schema.json
name: inline_recurrence_import_schedule
display_name: Inline recurrence import schedule
description: an inline hourly recurrence import schedule

trigger:
  type: recurrence
  frequency: day #can be minute, hour, day, week, month
  interval: 1 #every day
  schedule:
    hours: [4,5,10,11,12]
    minutes: [0,30]
  start_time: "2022-07-10T10:00:00" # optional - default will be schedule creation time
  time_zone: "Pacific Standard Time" # optional - default will be UTC

import_data:
  type: mltable
  name: my_snowflake_ds
  path: azureml://datastores/workspacemanagedstore
  source:
    type: database
    query: select * from TPCH_SF1.REGION
    connection: azureml:my_snowflake_connection

Berisi trigger properti ini:

  • (Diperlukan) type menentukan jenis jadwal, baik recurrence atau cron. Bagian berikut ini memiliki informasi selengkapnya.

Selanjutnya, jalankan perintah ini di CLI:

> az ml schedule create -f <file-name>.yml

Catatan

Properti ini berlaku untuk CLI dan SDK:

  • (Diperlukan) frequency menentukan satuan waktu yang menjelaskan seberapa sering jadwal diaktifkan. Dapat memiliki nilai

    • minute
    • hour
    • day
    • week
    • month
  • (Diperlukan) interval menentukan seberapa sering jadwal diaktifkan berdasarkan frekuensi, yang merupakan jumlah unit waktu untuk menunggu hingga jadwal diaktifkan lagi.

  • (Opsional) schedule mendefinisikan pola pengulangan, yang berisi hours, minutes, dan weekdays.

    • Ketika frequency sama dengan day, pola dapat menentukan hours dan minutes.
    • Ketika frequency sama dengan week dan month, pola dapat menentukan hours, minutes dan weekdays.
    • hours harus berupa bilangan bulat atau daftar, berkisar antara 0 dan 23.
    • minutes harus berupa bilangan bulat atau daftar, berkisar antara 0 dan 59.
    • weekdays string atau daftar mulai dari monday hingga sunday.
    • Jika schedule dihilangkan, pekerjaan memicu kebakaran sesuai dengan logika start_time, frequency dan interval.
  • (Opsional) start_time menjelaskan tanggal dan waktu mulai, dengan zona waktu. Jika start_time dihilangkan, start_time sama dengan waktu pembuatan pekerjaan. Untuk waktu mulai di masa lalu, pekerjaan pertama berjalan pada waktu proses terhitung berikutnya.

  • (Opsional) end_time menjelaskan tanggal dan waktu akhir dengan zona waktu. Jika end_time dihilangkan, jadwal terus memicu pekerjaan hingga jadwal dinonaktifkan secara manual.

  • (Opsional) time_zone menentukan zona waktu pengulangan. Jika dihilangkan, zona waktu default adalah UTC. Untuk informasi selengkapnya tentang nilai zona waktu, kunjungi lampiran untuk nilai zona waktu.

Membuat jadwal berbasis waktu dengan ekspresi cron

YAML: Menjadwalkan impor data dengan ekspresi cron

BERLAKU UNTUK: Ekstensi ml Azure CLI v2 (saat ini)

YAML: Jadwal impor data dengan ekspresi cron (pratinjau)

$schema: https://azuremlschemas.azureedge.net/latest/schedule.schema.json
name: simple_cron_import_schedule
display_name: Simple cron import schedule
description: a simple hourly cron import schedule

trigger:
  type: cron
  expression: "0 * * * *"
  start_time: "2022-07-10T10:00:00" # optional - default will be schedule creation time
  time_zone: "Pacific Standard Time" # optional - default will be UTC

import_data: ./my-snowflake-import-data.yaml

YAML: Menjadwalkan definisi impor data sebaris dengan ekspresi cron (pratinjau)

$schema: https://azuremlschemas.azureedge.net/latest/schedule.schema.json
name: inline_cron_import_schedule
display_name: Inline cron import schedule
description: an inline hourly cron import schedule

trigger:
  type: cron
  expression: "0 * * * *"
  start_time: "2022-07-10T10:00:00" # optional - default will be schedule creation time
  time_zone: "Pacific Standard Time" # optional - default will be UTC

import_data:
  type: mltable
  name: my_snowflake_ds
  path: azureml://datastores/workspaceblobstore/paths/snowflake/${{name}}
  source:
    type: database
    query: select * from TPCH_SF1.REGION
    connection: azureml:my_snowflake_connection

Bagian trigger menentukan detail jadwal dan berisi properti ini:

  • (Diperlukan) type cron menentukan jenis jadwal.
> az ml schedule create -f <file-name>.yml

Daftar berlanjut di sini:

  • (Diperlukan) expression menggunakan ekspresi crontab standar untuk mengekspresikan jadwal berulang. Ekspresi tunggal terdiri dari lima bidang yang dibatasi spasi:

    MINUTES HOURS DAYS MONTHS DAYS-OF-WEEK

    • Wildcard tunggal (*), yang mencakup semua nilai untuk bidang tersebut. A *, dalam hari, berarti semua hari dalam sebulan (yang bervariasi menurut bulan dan tahun).

    • expression: "15 16 * * 1" dalam sampel di atas artinya pukul 16:15 setiap hari Senin.

    • Tabel ini mencantumkan nilai yang valid untuk setiap bidang:

      Bidang Rentang Komentar
      MINUTES 0-59 -
      HOURS 0-23 -
      DAYS - Tidak didukung. Nilai diabaikan dan diperlakukan sebagai *.
      MONTHS - Tidak didukung. Nilai diabaikan dan diperlakukan sebagai *.
      DAYS-OF-WEEK 0-6 Nol (0) berarti Minggu. Nama hari juga diterima.
    • Untuk informasi selengkapnya tentang ekspresi crontab, kunjungi sumber daya wiki Ekspresi Crontab di GitHub.

    Penting

    DAYS dan MONTH tidak didukung. Jika Anda meneruskan salah satu nilai ini, nilai tersebut akan diabaikan dan diperlakukan sebagai *.

  • (Opsional) start_time menentukan tanggal dan waktu mulai dengan zona waktu jadwal. Misalnya, start_time: "2022-05-10T10:15:00-04:00" berarti jadwal dimulai dari pukul 10:15:00 pada 2022-05-10 dalam zona waktu UTC-4. Jika start_time dihilangkan, sama start_time dengan waktu pembuatan jadwal. Untuk waktu mulai di masa lalu, pekerjaan pertama berjalan pada waktu proses terhitung berikutnya.

  • (Opsional) end_time menjelaskan tanggal akhir, dan waktu dengan zona waktu. Jika end_time dihilangkan, jadwal terus memicu pekerjaan hingga jadwal dinonaktifkan secara manual.

  • (Opsional) time_zone menentukan zona waktu ekspresi. Jika time_zone dihilangkan, zona waktu adalah UTC secara default. Untuk informasi selengkapnya tentang nilai zona waktu, kunjungi lampiran untuk nilai zona waktu.

Batasan:

  • Saat ini, penjadwalan Azure Pembelajaran Mesin v2 tidak mendukung pemicu berbasis peristiwa.
  • Gunakan Azure Pembelajaran Mesin SDK/CLI v2 untuk menentukan pola pengulangan kompleks yang berisi beberapa tanda waktu pemicu. UI hanya menampilkan pola kompleks dan tidak mendukung pengeditan.
  • Jika Anda menetapkan pengulangan sebagai hari ke-31 setiap bulan, jadwal tidak akan memicu pekerjaan dalam bulan dengan kurang dari 31 hari.

Mencantumkan jadwal di ruang kerja

BERLAKU UNTUK: Ekstensi ml Azure CLI v2 (saat ini)

az ml schedule list

Periksa detail jadwal

BERLAKU UNTUK: Ekstensi ml Azure CLI v2 (saat ini)

az ml schedule show -n simple_cron_data_import_schedule

Memperbarui jadwal

BERLAKU UNTUK: Ekstensi ml Azure CLI v2 (saat ini)

az ml schedule update -n simple_cron_data_import_schedule  --set description="new description" --no-wait

Catatan

Untuk memperbarui lebih dari sekadar tag/deskripsi, sebaiknya gunakan az ml schedule create --file update_schedule.yml

Menonaktifkan jadwal

BERLAKU UNTUK: Ekstensi ml Azure CLI v2 (saat ini)

az ml schedule disable -n simple_cron_data_import_schedule --no-wait

Mengaktifkan jadwal

BERLAKU UNTUK: Ekstensi ml Azure CLI v2 (saat ini)

az ml schedule enable -n simple_cron_data_import_schedule --no-wait

Menghapus jadwal

Penting

Jadwal harus dinonaktifkan sebelum penghapusan. Penghapusan adalah tindakan permanen yang tidak dapat dipulihkan. Setelah jadwal dihapus, Anda tidak pernah dapat mengakses atau memulihkannya.

BERLAKU UNTUK: Ekstensi ml Azure CLI v2 (saat ini)

az ml schedule delete -n simple_cron_data_import_schedule

Dukungan RBAC (Kontrol akses berbasis peran)

Jadwal umumnya digunakan untuk produksi. Untuk mencegah masalah, admin ruang kerja mungkin ingin membatasi pembuatan jadwal dan izin manajemen dalam ruang kerja.

Saat ini ada tiga aturan tindakan yang terkait dengan jadwal, dan Anda dapat mengonfigurasinya di portal Azure. Untuk informasi selengkapnya, kunjungi cara mengelola akses ke ruang kerja Azure Pembelajaran Mesin..

Tindakan Deskripsi Aturan
Read Mendapatkan dan mencantumkan jadwal di ruang kerja Pembelajaran Mesin Microsoft.MachineLearningServices/workspaces/schedules/read
Write Membuat, memperbarui, menonaktifkan, dan mengaktifkan jadwal di ruang kerja Pembelajaran Mesin Microsoft.MachineLearningServices/workspaces/schedules/write
Hapus Menghapus jadwal di ruang kerja Pembelajaran Mesin Microsoft.MachineLearningServices/workspaces/schedules/delete

Langkah berikutnya