Aracılığıyla paylaş


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, program aracılığıyla veri içeri aktarmaları zamanlamayı ve aynı işlemi yapmak için zamanlama kullanıcı arabirimini kullanmayı öğreneceksiniz. Geçen süreyi temel alan bir zamanlama oluşturabilirsiniz. Zaman tabanlı zamanlamalar, verileri güncel tutmak için düzenli olarak içeri aktarma gibi rutin görevleri yerine getirmek için kullanılabilir. Zamanlama oluşturma hakkında bilgi edindikten sonra CLI, SDK ve studio kullanıcı arabirimi 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ğiniz olmalıdı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.

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 ve tetikleyiciyi ilişkilendirir. Tetikleyici, çalıştırmalar arasındaki beklemeyi açıklamak için cron ifadesi kullanan veya recurrence işi tetikleme sıklığını kullanan bir tetikleyici olabilircron. Her durumda, önce bir içeri aktarma veri tanımı tanımlamanı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. Bkz. CLI, SDK ve kullanıcı arabiriminde veri içeri aktarma oluşturma.

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

trigger aşağıdaki özellikleri içerir:

  • (Gerekli) type veya recurrence cronzamanlama türünü belirtir. Diğer ayrıntılar için aşağıdaki bölüme bakın.

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. , , hour, dayweekveya monthdeğerlerine minutesahip olabilir.

  • (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 , minutesve weekdaysiçeren hoursyinelenme desenini tanımlar.

    • eşit dayolduğundafrequency, bir desen ve minutesbelirtebilirhours.
    • ve montheşit olduğunda week frequency, bir desen , minutes ve weekdaysbelirtebilirhours.
    • 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 bir monday sundaydize veya liste.
    • Atlanırsaschedule, işler ve mantığına start_timefrequency intervalgöre tetikler.
  • (İsteğe bağlı) start_time başlangıç tarihini ve saatini saat dilimiyle açıklar. Atlanırsa start_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ırsa end_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 edinmek için bkz . saat dilimi değerleri için ek.

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 aşağıdaki özellikleri içerir:

  • (Gerekli) type zamanlama türünün olduğunu cronbelirtir.
> 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.

    • Sonraki 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 edinmek için GitHub'da Crontab İfadesi wiki'sine bakın.

    Önemli

    DAYS ve MONTH 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ırsa start_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ırsa end_time , zamanlama el ile devre dışı bırakılana kadar işleri tetiklemeye devam eder.

  • (İsteğe bağlı) time_zoneifadenin saat dilimini belirtir. Atlanırsa, saat dilimi varsayılan olarak UTC'dir. Saat dilimi değerleri için eke bakın.

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, 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 edinmek için bkz . Azure Machine Learning çalışma alanına erişimi yönetme.

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

Sonraki adımlar

  • CLI (v2) veri içeri aktarma zamanlaması YAML şeması hakkında daha fazla bilgi edinin.
  • İçeri aktarılan veri varlıklarını yönetmeyi öğrenin.