Veri içeri aktarma işlerini zamanlama (önizleme)
ŞUNLAR IÇIN GEÇERLIDIR: Azure CLI ml uzantısı v2 (geçerli)
Python SDK azure-ai-ml v2 (geçerli)
Bu makalede, bunu yapmak için zamanlama kullanıcı arabirimini kullanarak program aracılığıyla veri içeri aktarmaları zamanlamayı öğreneceksiniz. Geçen süreyi temel alan bir zamanlama oluşturabilirsiniz. Zamana bağlı zamanlamalar rutin görevleri işleyebilir; örneğin, güncel kalmalarını sağlamak için normal veri içeri aktarma işlemleri. Zamanlama oluşturma hakkında bilgi edindikten sonra CLI, SDK ve studio kullanıcı arabirimi kaynakları aracılığıyla bunları nasıl alacağınızı, güncelleştireceğinizi ve devre dışı bırakacağınızı öğreneceksiniz.
Önkoşullar
- Azure Machine Learning'i kullanmak için bir Azure aboneliğine ihtiyacınız vardır. Azure aboneliğiniz yoksa başlamadan önce ücretsiz bir hesap oluşturun. Azure Machine Learning'in ücretsiz veya ücretli sürümünü bugün deneyin.
Azure CLI'yi ve uzantıyı
ml
yükleyin. CLI'yı (v2) yükleme, ayarlama ve kullanma makalesindeki yükleme adımlarını izleyin.Azure Machine Learning çalışma alanınız yoksa oluşturun. Çalışma alanı oluşturmak için bkz . CLI'yi (v2) yükleme, ayarlama ve kullanma.
Veri içeri aktarmayı zamanlama
Verileri yinelenen olarak içeri aktarmak için bir zamanlama oluşturmanız gerekir. bir Schedule
veri içeri aktarma eylemini tetikleyiciyle ilişkilendirir. Tetikleyici cron
, çalıştırmalar arasındaki gecikmeyi tanımlamak için bir cron ifadesi kullanan veya bir işi tetikleme sıklığını belirten bir recurrence
olabilir. Her durumda, önce bir içeri aktarma veri tanımı oluşturmanız gerekir. Var olan bir veri içeri aktarma veya satır içinde tanımlanan bir veri içeri aktarma işlemi bunun için çalışır. Daha fazla bilgi için CLI, SDK ve kullanıcı arabiriminde veri içeri aktarma oluşturma makalesini ziyaret edin.
Bir zamanlama oluşturma
Yineleme deseniyle zamana dayalı zamanlama oluşturma
ŞUNLAR IÇIN GEÇERLIDIR: Azure CLI ml uzantısı v2 (geçerli)
YAML: Yinelenme deseniyle veri içeri aktarma zamanlaması
$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: Yönetilen veri deposunda yinelenenlik deseni ile satır içi veri içeri aktarma tanımını zamanlama
$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
şu özellikleri içerir:
- (Gerekli)
type
veyarecurrence
cron
zamanlama türünü belirtir. Aşağıdaki bölümde daha fazla bilgi bulunmaktadır.
Ardından, CLI'da şu komutu çalıştırın:
> az ml schedule create -f <file-name>.yml
Not
Bu özellikler CLI ve SDK için geçerlidir:
(Gerekli)
frequency
zamanlamanın ne sıklıkta tetiklendiğini açıklayan zaman birimini belirtir. Değerleri olabilirminute
hour
day
week
month
(Gerekli)
interval
zamanlamanın sıklık temelinde ne sıklıkta tetiklendiği belirtir. Bu, zamanlama yeniden başlatılana kadar bekleyebileceğiniz zaman birimi sayısıdır.(İsteğe bağlı)
schedule
,minutes
veweekdays
içerenhours
yinelenme desenini tanımlar.- eşit
day
olduğundafrequency
, bir desen veminutes
belirtebilirhours
. - ve
month
eşit olduğundaweek
frequency
, bir desen ,minutes
veweekdays
belirtebilirhours
. hours
0 ile 23 arasında bir tamsayı veya liste olmalıdır.minutes
0 ile 59 arasında bir tamsayı veya liste olmalıdır.weekdays
ile arasında birmonday
sunday
dize veya liste.- Atlanırsa
schedule
, işler ve mantığınastart_time
frequency
interval
göre tetikler.
- eşit
(İsteğe bağlı)
start_time
başlangıç tarihini ve saatini saat dilimiyle açıklar. Atlanırsastart_time
, start_time iş oluşturma zamanına eşittir. Geçmişteki bir başlangıç zamanı için, ilk iş bir sonraki hesaplanmış çalışma zamanında çalışır.(İsteğe bağlı)
end_time
bir saat dilimiyle bitiş tarihini ve saatini açıklar. Atlanırsaend_time
, zamanlama el ile devre dışı bırakılana kadar işleri tetiklemeye devam eder.(İsteğe bağlı)
time_zone
yinelenmenin saat dilimini belirtir. Belirtilmezse varsayılan saat dilimi UTC'dir. Saat dilimi değerleri hakkında daha fazla bilgi için saat dilimi değerleri için ek bölümünü ziyaret edin.
Cron ifadesiyle zamana dayalı zamanlama oluşturma
YAML: Cron ifadesiyle veri içeri aktarma zamanlaması
ŞUNLAR IÇIN GEÇERLIDIR: Azure CLI ml uzantısı v2 (geçerli)
YAML: Cron ifadesiyle veri içeri aktarma zamanlaması (önizleme)
$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: Cron ifadesiyle satır içi veri içeri aktarma tanımını zamanlama (önizleme)
$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
trigger
bölümü zamanlama ayrıntılarını tanımlar ve şu özellikleri içerir:
- (Gerekli)
type
cron
zamanlama türünü belirtir.
> az ml schedule create -f <file-name>.yml
Liste burada devam eder:
(Gerekli)
expression
yinelenen bir zamanlamayı ifade etmek için standart bir crontab ifadesi kullanır. Tek bir ifade, boşlukla ayrılmış beş alandan oluşur:MINUTES HOURS DAYS MONTHS DAYS-OF-WEEK
Alanın tüm değerlerini kapsayan tek bir joker karakter (
*
).*
gün olarak, ayın tüm günleri anlamına gelir (ay ve yıla göre değişir).expression: "15 16 * * 1"
Yukarıdaki örnekteki değeri, her Pazartesi günü saat 23:15 anlamına gelir.Bu tabloda her alan için geçerli değerler listelenir:
Alan Aralık Yorum MINUTES
0-59 - HOURS
0-23 - DAYS
- Desteklenmiyor. Değer yoksayılır ve olarak *
değerlendirilir.MONTHS
- Desteklenmiyor. Değer yoksayılır ve olarak *
değerlendirilir.DAYS-OF-WEEK
0-6 Sıfır (0), Pazar anlamına gelir. Gün adları da kabul edilir. Crontab ifadeleri hakkında daha fazla bilgi için GitHub'da Crontab expression wiki kaynağını ziyaret edin.
Önemli
DAYS
veMONTH
desteklenmez. Bu değerlerden birini geçirirseniz, yoksayılır ve olarak*
değerlendirilir.(İsteğe bağlı)
start_time
zamanlamanın saat dilimiyle başlangıç tarihini ve saatini belirtir. Örneğin,start_time: "2022-05-10T10:15:00-04:00"
zamanlamanın UTC-4 saat diliminde 2022-05-10'da 10:15:00'ten itibaren başlayacağı anlamına gelir. Atlanırsastart_time
,start_time
zamanlama oluşturma zamanına eşittir. Geçmişteki bir başlangıç zamanı için, ilk iş bir sonraki hesaplanmış çalışma zamanında çalışır.(İsteğe bağlı)
end_time
bitiş tarihini ve saat dilimini açıklar. Atlanırsaend_time
, zamanlama el ile devre dışı bırakılana kadar işleri tetiklemeye devam eder.(İsteğe bağlı)
time_zone
ifadenin saat dilimini belirtir. Atlanırsatime_zone
, saat dilimi varsayılan olarak UTC'dir. Saat dilimi değerleri hakkında daha fazla bilgi için saat dilimi değerleri için ek bölümünü ziyaret edin.
Sınırlamalar:
- Şu anda Azure Machine Learning v2 zamanlaması olay tabanlı tetikleyicileri desteklememektedir.
- Birden çok tetikleyici zaman damgası içeren karmaşık bir yineleme deseni belirtmek için Azure Machine Learning SDK/CLI v2'yi kullanın. Kullanıcı arabirimi yalnızca karmaşık deseni görüntüler ve düzenlemeyi desteklemez.
- Yinelenmeyi her ayın 31. günü olarak ayarlarsanız, zamanlama 31 günden az olan aylarda işleri tetiklemez.
Çalışma alanında zamanlamaları listeleme
ŞUNLAR IÇIN GEÇERLIDIR: Azure CLI ml uzantısı v2 (geçerli)
az ml schedule list
Zamanlama ayrıntılarını denetleme
ŞUNLAR IÇIN GEÇERLIDIR: Azure CLI ml uzantısı v2 (geçerli)
az ml schedule show -n simple_cron_data_import_schedule
Zamanlamayı güncelleştirme
ŞUNLAR IÇIN GEÇERLIDIR: Azure CLI ml uzantısı v2 (geçerli)
az ml schedule update -n simple_cron_data_import_schedule --set description="new description" --no-wait
Not
Yalnızca etiketlerden/açıklamalardan fazlasını güncelleştirmek için az ml schedule create --file update_schedule.yml
Zamanlamayı devre dışı bırakma
ŞUNLAR IÇIN GEÇERLIDIR: Azure CLI ml uzantısı v2 (geçerli)
az ml schedule disable -n simple_cron_data_import_schedule --no-wait
Zamanlamayı etkinleştirme
ŞUNLAR IÇIN GEÇERLIDIR: Azure CLI ml uzantısı v2 (geçerli)
az ml schedule enable -n simple_cron_data_import_schedule --no-wait
Zamanlamayı silme
Önemli
Silme işleminden önce zamanlama devre dışı bırakılmalıdır. Silme işlemi kalıcı ve kurtarılamaz bir eylemdir. Bir zamanlama silindikten sonra, zamanlamaya asla erişemez veya bu zamanlamadan kurtaramazdınız.
ŞUNLAR IÇIN GEÇERLIDIR: Azure CLI ml uzantısı v2 (geçerli)
az ml schedule delete -n simple_cron_data_import_schedule
RBAC (Rol tabanlı erişim denetimi) desteği
Zamanlamalar genellikle üretim için kullanılır. Çalışma alanı yöneticileri, sorunları önlemek için çalışma alanı içinde zamanlama oluşturma ve yönetim izinlerini kısıtlamak isteyebilir.
Şu anda zamanlamalarla ilgili üç eylem kuralı vardır ve bunları Azure portalında yapılandırabilirsiniz. Daha fazla bilgi için Azure Machine Learning çalışma alanına erişimi yönetme bölümünü ziyaret edin..
Eylem | Açıklama | Kural |
---|---|---|
Okundu | Machine Learning çalışma alanında zamanlamaları alma ve listeleme | Microsoft.MachineLearningServices/workspaces/schedules/read |
Write | Machine Learning çalışma alanında zamanlama oluşturma, güncelleştirme, devre dışı bırakma ve etkinleştirme | Microsoft.MachineLearningServices/workspaces/schedules/write |
Sil | Machine Learning çalışma alanında zamanlama silme | Microsoft.MachineLearningServices/workspaces/schedules/delete |