Schemalägga dataimportjobb (förhandsversion)
GÄLLER FÖR:Azure CLI ml extension v2 (current)Python SDK azure-ai-ml v2 (aktuell)
I den här artikeln får du lära dig hur du programmatiskt schemalägger dataimporter med hjälp av schemagränssnittet för att göra det. Du kan skapa ett schema baserat på förfluten tid. Tidsbaserade scheman kan hantera rutinuppgifter – till exempel regelbunden dataimport för att hålla dem uppdaterade. När du har lärt dig hur du skapar scheman får du lära dig hur du hämtar, uppdaterar och inaktiverar dem via CLI-, SDK- och studiogränssnittsresurser.
Förutsättningar
- Du behöver en Azure-prenumeration för att använda Azure Mašinsko učenje. Om du inte har någon Azure-prenumeration skapar du ett kostnadsfritt konto innan du börjar. Prova den kostnadsfria eller betalda versionen av Azure Mašinsko učenje i dag.
Installera Azure CLI och
ml
tillägget. Följ installationsstegen i Installera, konfigurera och använd CLI (v2).Skapa en Azure Mašinsko učenje-arbetsyta om du inte har någon. Information om hur du skapar arbetsytor finns i Installera, konfigurera och använda CLI (v2).
Schemalägga dataimport
Om du vill importera data regelbundet måste du skapa ett schema. En Schedule
associerar en dataimportåtgärd med en utlösare. Utlösaren kan antingen vara cron
, som använder ett cron-uttryck för att beskriva fördröjningen mellan körningar eller en recurrence
, som anger frekvensen för att utlösa ett jobb. I varje fall måste du först skapa en importdatadefinition. En befintlig dataimport, eller en dataimport som har definierats infogat, fungerar för detta. Mer information finns i Skapa en dataimport i CLI, SDK och användargränssnitt.
Skapa en tidsplan
Skapa ett tidsbaserat schema med upprepningsmönster
GÄLLER FÖR: Azure CLI ml-tillägget v2 (aktuellt)
YAML: Schema för dataimport med upprepningsmönster
$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: Schemalägg för dataimportdefinition infogat med upprepningsmönster i hanterat datalager
$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
A trigger
innehåller följande egenskaper:
- (Krävs)
type
anger schematypen, antingenrecurrence
ellercron
. I följande avsnitt finns mer information.
Kör sedan det här kommandot i CLI:
> az ml schedule create -f <file-name>.yml
Kommentar
Dessa egenskaper gäller för CLI och SDK:
(Krävs)
frequency
anger den tidsenhet som beskriver hur ofta schemat utlöses. Kan ha värdenminute
hour
day
week
month
(Krävs)
interval
anger hur ofta schemat utlöses baserat på frekvensen, vilket är antalet tidsenheter som ska vänta tills schemat utlöses igen.(Valfritt)
schedule
definierar upprepningsmönstret, som innehållerhours
,minutes
ochweekdays
.- När
frequency
ärday
lika med kan ett mönster angehours
ochminutes
. - När
frequency
ärweek
lika med ochmonth
kan ett mönster angehours
,minutes
ochweekdays
. hours
vara ett heltal eller en lista mellan 0 och 23.minutes
bör vara ett heltal eller en lista mellan 0 och 59.weekdays
en sträng eller lista som sträcker sig frånmonday
tillsunday
.- Om
schedule
utelämnas utlöser jobben eld enligt logikenstart_time
i ,frequency
ochinterval
.
- När
(Valfritt)
start_time
beskriver startdatum och tid med en tidszon. Omstart_time
utelämnas är start_time lika med jobbskapandetiden. För en tidigare starttid körs det första jobbet vid nästa beräknade körningstid.(Valfritt)
end_time
beskriver slutdatum och tid med en tidszon. Omend_time
utelämnas fortsätter schemat att utlösa jobb tills schemat inaktiveras manuellt.(Valfritt)
time_zone
anger tidszonen för upprepningen. Om den utelämnas är standardtidszonen UTC. Mer information om tidszonsvärden finns i bilaga för tidszonsvärden.
Skapa ett tidsbaserat schema med cron-uttryck
YAML: Schemalägg för en dataimport med cron-uttryck
GÄLLER FÖR: Azure CLI ml-tillägget v2 (aktuellt)
YAML: Schemalägg för dataimport med cron-uttryck (förhandsversion)
$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: Schemalägg för dataimportdefinition infogat med cron-uttryck (förhandsversion)
$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
Avsnittet trigger
definierar schemainformationen och innehåller följande egenskaper:
- (Krävs)
type
angercron
schematypen.
> az ml schedule create -f <file-name>.yml
Listan fortsätter här:
(Krävs)
expression
använder ett standarduttryck för crontab för att uttrycka ett återkommande schema. Ett enda uttryck består av fem blankstegsavgränsade fält:MINUTES HOURS DAYS MONTHS DAYS-OF-WEEK
Ett enda jokertecken (
*
), som täcker alla värden för fältet. En*
, i dagar, innebär alla dagar i månaden (som varierar med månad och år).I
expression: "15 16 * * 1"
exemplet ovan avses 16:15 varje måndag.I den här tabellen visas giltiga värden för varje fält:
Fält Intervall Kommentar MINUTES
0-59 - HOURS
0-23 - DAYS
- Stöds ej. Värdet ignoreras och behandlas som *
.MONTHS
- Stöds ej. Värdet ignoreras och behandlas som *
.DAYS-OF-WEEK
0-6 Noll (0) betyder söndag. Namn på dagar accepteras också. Mer information om crontab-uttryck finns i Wiki-resursen Crontab Expression på GitHub.
Viktigt!
DAYS
ochMONTH
stöds inte. Om du skickar något av dessa värden ignoreras det och behandlas som*
.(Valfritt)
start_time
anger startdatum och tid med schemats tidszon. Innebär till exempelstart_time: "2022-05-10T10:15:00-04:00"
att schemat börjar från 10:15:00 den 2022-05-10 i TIDSZONEN UTC-4. Omstart_time
utelämnas är detstart_time
lika med tiden då schemat skapades. För en tidigare starttid körs det första jobbet vid nästa beräknade körningstid.(Valfritt)
end_time
beskriver slutdatum och tid med en tidszon. Omend_time
utelämnas fortsätter schemat att utlösa jobb tills schemat inaktiveras manuellt.(Valfritt)
time_zone
anger tidszonen för uttrycket. Omtime_zone
utelämnas är tidszonen UTC som standard. Mer information om tidszonsvärden finns i bilaga för tidszonsvärden.
Begränsningar:
- Schemaläggning av Azure Mašinsko učenje v2 stöder för närvarande inte händelsebaserade utlösare.
- Använd Azure Mašinsko učenje SDK/CLI v2 för att ange ett komplext upprepningsmönster som innehåller flera tidsstämplar för utlösare. Användargränssnittet visar bara det komplexa mönstret och stöder inte redigering.
- Om du anger upprepningen som den 31:a dagen i varje månad utlöser schemat inte jobb under månader med mindre än 31 dagar.
Lista scheman på en arbetsyta
GÄLLER FÖR: Azure CLI ml-tillägget v2 (aktuellt)
az ml schedule list
Kontrollera schemainformation
GÄLLER FÖR: Azure CLI ml-tillägget v2 (aktuellt)
az ml schedule show -n simple_cron_data_import_schedule
Uppdatera ett schema
GÄLLER FÖR: Azure CLI ml-tillägget v2 (aktuellt)
az ml schedule update -n simple_cron_data_import_schedule --set description="new description" --no-wait
Kommentar
Om du vill uppdatera mer än bara taggar/beskrivningar rekommenderar vi att du använder az ml schedule create --file update_schedule.yml
Inaktivera ett schema
GÄLLER FÖR: Azure CLI ml-tillägget v2 (aktuellt)
az ml schedule disable -n simple_cron_data_import_schedule --no-wait
Aktivera ett schema
GÄLLER FÖR: Azure CLI ml-tillägget v2 (aktuellt)
az ml schedule enable -n simple_cron_data_import_schedule --no-wait
Ta bort ett schema
Viktigt!
Ett schema måste inaktiveras innan du kan ta bort det. Borttagning är en permanent, oåterkallelig åtgärd. När ett schema har tagits bort kan du aldrig komma åt eller återställa det.
GÄLLER FÖR: Azure CLI ml-tillägget v2 (aktuellt)
az ml schedule delete -n simple_cron_data_import_schedule
Stöd för RBAC (rollbaserad åtkomstkontroll)
Scheman används vanligtvis för produktion. För att förhindra problem kan arbetsyteadministratörer vilja begränsa schemaskapande och hanteringsbehörigheter på en arbetsyta.
Det finns för närvarande tre åtgärdsregler relaterade till scheman och du kan konfigurera dem i Azure-portalen. Mer information finns i hur du hanterar åtkomst till en Azure Mašinsko učenje-arbetsyta..
Åtgärd | beskrivning | Regel |
---|---|---|
Lästa | Hämta och lista scheman i Mašinsko učenje arbetsyta | Microsoft.MachineLearningServices/workspaces/schedules/read |
Skriva | Skapa, uppdatera, inaktivera och aktivera scheman i Mašinsko učenje arbetsyta | Microsoft.MachineLearningServices/workspaces/schedules/write |
Delete | Ta bort ett schema i Mašinsko učenje arbetsyta | Microsoft.MachineLearningServices/workspaces/schedules/delete |
Nästa steg
- Läs mer om YAML-schemat för CLI-dataimportschemat (v2).
- Lär dig hur du hanterar importerade datatillgångar.