Plánování úloh importu dat (Preview)

PLATÍ PRO:Rozšíření Azure CLI ml v2 (aktuální)Python SDK azure-ai-ml v2 (aktuální)

V tomto článku se dozvíte, jak programově naplánovat importy dat a pomocí uživatelského rozhraní plánu provést totéž. Plán můžete vytvořit na základě uplynulého času. Plány založené na čase se dají použít k péči o rutinní úlohy, jako je třeba pravidelné importování dat, aby byly aktuální. Po seznámení s vytvářením plánů se dozvíte, jak je načíst, aktualizovat a deaktivovat pomocí rozhraní příkazového řádku, sady SDK a uživatelského rozhraní studia.

Předpoklady

  • Abyste mohli používat službu Azure Machine Učení, musíte mít předplatné Azure. Pokud ještě nemáte předplatné Azure, vytvořte si napřed bezplatný účet. Vyzkoušejte si bezplatnou nebo placenou verzi služby Azure Machine Učení ještě dnes.

Naplánovat import dat

Pokud chcete data importovat opakovaně, musíte vytvořit plán. Přidruží Schedule akci importu dat a trigger. Triggerem může být cron buď použití výrazu cron k popisu čekání mezi spuštěními, nebo recurrence pomocí toho, jakou frekvenci se má úloha aktivovat. V každém případě musíte nejprve definovat definici importovaných dat. Pro tento postup funguje existující import dat nebo import dat, který je definovaný vložený. Informace o vytvoření importu dat v rozhraní příkazového řádku, sadě SDK a uživatelském rozhraní

Vytvoření plánu

Vytvoření časového plánu s opakováním

PLATÍ PRO:Rozšíření Azure CLI ml v2 (aktuální)

YAML: Plán importu dat se vzorem opakování

$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: Naplánování vložené definice importu dat se vzorem opakování ve spravovaném úložišti dat

$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

trigger obsahuje následující vlastnosti:

  • (Povinné)type určuje typ plánu, buď recurrence nebo cron. Další podrobnosti najdete v následující části.

Pak v rozhraní příkazového řádku spusťte tento příkaz:

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

Poznámka:

Tyto vlastnosti platí pro rozhraní příkazového řádku a sadu SDK:

  • (Povinné)frequency určuje jednotku času, která popisuje, jak často se plán aktivuje. Může obsahovat hodnoty minute, , dayhour, weeknebo month.

  • (Povinné)interval určuje, jak často se plán aktivuje na základě frekvence, což je počet časových jednotek, které mají čekat, dokud se plán znovu neaktivuje.

  • (Volitelné) schedule definuje způsob opakování, který obsahuje hoursminutes, a weekdays.

    • Když frequency se rovná day, vzor může určit hours a minutes.
    • Když frequency se rovná week a month, vzor může určit hours, minutes a weekdays.
    • hours musí být celé číslo nebo seznam v rozsahu od 0 do 23.
    • minutes by mělo být celé číslo nebo seznam v rozsahu od 0 do 59.
    • weekdaysřetězec nebo seznam v rozsahu od monday .sunday
    • Pokud schedule je vynechán, úlohy se aktivují podle logiky start_timefrequency a interval.
  • (Volitelné) start_time popisuje počáteční datum a čas s časovým pásmem. Pokud start_time tuto hodnotu vynecháte, start_time se rovná času vytvoření úlohy. V případě času spuštění v minulosti se první úloha spustí při příštím počítaném čase běhu.

  • (Volitelné) end_time popisuje koncové datum a čas s časovým pásmem. Pokud end_time tento plán vynecháte, bude plán nadále spouštět úlohy, dokud se plán ručně nezablokuje.

  • (Volitelné) time_zone určuje časové pásmo opakování. Pokud tento parametr vynecháte, výchozí časové pásmo je UTC. Další informace o hodnotách časového pásma najdete v dodatku k hodnotám časového pásma.

Vytvoření časového plánu pomocí výrazu cron

YAML: Naplánování importu dat pomocí výrazu cron

PLATÍ PRO:Rozšíření Azure CLI ml v2 (aktuální)

YAML: Naplánování importu dat pomocí výrazu cron (Preview)

$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: Plán definice importu dat vložený s výrazem cron (Preview)

$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

Oddíl trigger definuje podrobnosti plánu a obsahuje následující vlastnosti:

  • (Povinné)type určuje typ plánu je cron.
> az ml schedule create -f <file-name>.yml

Seznam pokračuje tady:

  • (Povinné)expression používá standardní výraz crontab k vyjádření opakujícího se plánu. Jeden výraz se skládá z pěti polí oddělených mezerami:

    MINUTES HOURS DAYS MONTHS DAYS-OF-WEEK

    • Jeden zástupný znak (*), který pokrývá všechny hodnoty pole. A *, ve dnech, znamená všechny dny v měsíci (které se liší podle měsíce a roku).

    • Výše expression: "15 16 * * 1" uvedený vzorek znamená každou pondělí 16:15.

    • V další tabulce jsou uvedeny platné hodnoty pro každé pole:

      Pole Rozsah Komentář
      MINUTES 0-59 -
      HOURS 0-23 -
      DAYS - Nepodporováno Hodnota je ignorována a považována za *.
      MONTHS - Nepodporováno Hodnota je ignorována a považována za *.
      DAYS-OF-WEEK 0-6 Nula (0) znamená neděli. Byly přijaty také názvy dnů.
    • Další informace o výrazech crontab najdete na wikiwebu Crontab Expression na GitHubu.

    Důležité

    DAYS a MONTH nejsou podporovány. Pokud předáte jednu z těchto hodnot, bude ignorována a považována za *.

  • (Volitelné) start_time určuje počáteční datum a čas s časovým pásmem plánu. Například znamená, start_time: "2022-05-10T10:15:00-04:00" že plán začíná od 10:15:00 do 10.2022-05-10 v časovém pásmu UTC-4. Pokud start_time tento parametr vynecháte, start_time rovná se času vytvoření plánu. V případě času spuštění v minulosti se první úloha spustí při příštím počítaném čase běhu.

  • (Volitelné) end_time popisuje koncové datum a čas s časovým pásmem. Pokud end_time tento plán vynecháte, bude plán nadále spouštět úlohy, dokud se plán ručně nezablokuje.

  • (Volitelné) time_zoneurčuje časové pásmo výrazu. Pokud tento parametr vynecháte, časové pásmo je ve výchozím nastavení UTC. Viz dodatek k hodnotám časového pásma.

Omezení:

  • V současné době plánování služby Azure Machine Učení v2 nepodporuje triggery založené na událostech.
  • Pomocí sady Azure Machine Učení SDK/CLI v2 určete složitý způsob opakování, který obsahuje více časových razítek triggerů. Uživatelské rozhraní zobrazuje jenom složitý vzor a nepodporuje úpravy.
  • Pokud nastavíte opakování jako 31. den každého měsíce, plán neaktivuje úlohy v měsících s méně než 31 dny.

Výpis plánů v pracovním prostoru

PLATÍ PRO:Rozšíření Azure CLI ml v2 (aktuální)

az ml schedule list

Kontrola podrobností plánu

PLATÍ PRO:Rozšíření Azure CLI ml v2 (aktuální)

az ml schedule show -n simple_cron_data_import_schedule

Aktualizace plánu

PLATÍ PRO:Rozšíření Azure CLI ml v2 (aktuální)

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

Poznámka:

Pokud chcete aktualizovat více než jen značky nebo popis, doporučujeme použít az ml schedule create --file update_schedule.yml

Zakázání plánu

PLATÍ PRO:Rozšíření Azure CLI ml v2 (aktuální)

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

Povolení plánu

PLATÍ PRO:Rozšíření Azure CLI ml v2 (aktuální)

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

Odstranění plánu

Důležité

Před odstraněním musí být zakázán plán. Odstranění je neopravitelná akce. Po odstranění plánu se k němu nikdy nedostanete ani ho neobnovíte.

PLATÍ PRO:Rozšíření Azure CLI ml v2 (aktuální)

az ml schedule delete -n simple_cron_data_import_schedule

Podpora řízení přístupu na základě role (RBAC)

Plány se obvykle používají pro produkční prostředí. Aby se zabránilo problémům, můžou správci pracovního prostoru chtít omezit oprávnění k vytváření plánů a správě v rámci pracovního prostoru.

V současné době existují tři pravidla akcí související s plány a můžete je nakonfigurovat na webu Azure Portal. Přečtěte si, jak spravovat přístup k pracovnímu prostoru Azure Machine Učení. Další informace.

Akce Popis Pravidlo
Čtení Získání a výpis plánů v pracovním prostoru Machine Učení Microsoft.Machine Učení Services/workspaces/schedules/read
Zapsat Vytvoření, aktualizace, zakázání a povolení plánů v pracovním prostoru machine Učení Microsoft.Machine Učení Services/workspaces/schedules/write
Odstranění Odstranění plánu v pracovním prostoru Učení počítače Microsoft.Machine Učení Services/workspaces/schedules/delete

Další kroky