Not
Bu sayfaya erişim yetkilendirme gerektiriyor. Oturum açmayı veya dizinleri değiştirmeyi deneyebilirsiniz.
Bu sayfaya erişim yetkilendirme gerektiriyor. Dizinleri değiştirmeyi deneyebilirsiniz.
Bu sayfada Bildirim temelli Otomasyon Paketleri dağıtım modlarının söz dizimi açıklanmaktadır. Paketler, Azure Databricks iş akışlarının programlı yönetimini sağlar. Bkz. Bildirim temelli Otomasyon Paketleri nedir?
CI/CD iş akışlarında geliştiriciler genellikle çözümleri çeşitli aşamalarda veya modlarda kodlar, test eder, dağıtır ve çalıştırır. Örneğin, en basit mod kümesinde üretim öncesi doğrulama için geliştirme modu ve ardından doğrulanmış teslim edilebilirler için bir üretim modu bulunur. Bildirim temelli Otomasyon Paketleri, bu modların her birine karşılık gelen isteğe bağlı bir varsayılan davranış koleksiyonu sağlar.
Dağıtım modları isteğe bağlıdır. Bir mode ayarlamadan veya presets yapılandırmadan paket dağıtabilirsiniz. Dağıtım modları, yaygın olarak kullanılan bir grup ayarı aynı anda uygulamak için kolaylık sağlar.
Geliştirme modu
Paketinizi geliştirme modunda dağıtmak için, hedefe mode eşlemeyi development olarak ayarlayarak ekleyin. Bkz . paket yapılandırma hedefleri eşlemesi. Örneğin, adlı dev bu hedef bir geliştirme hedefi olarak değerlendirilir:
targets:
dev:
mode: development
Komutunu çalıştırarak geliştirme modunda bir hedefi dağıtmakdatabricks bundle deploy -t <target-name>, ön ayarlar kullanılarak özelleştirilebilen aşağıdaki davranışları uygular:
- Dosya veya not defteri olarak dağıtılmayan tüm kaynaklara ön ek
[dev ${workspace.current_user.short_name}]ekler ve dağıtılan her işi ve işlem hattını birdevAzure Databricks etiketiyle etiketler. - İlgili dağıtılan Lakeflow Spark Bildirimli İşlem Hatlarını
development: trueolarak işaretler. - İlgili paket yapılandırma dosyasında önceden belirtilmiş olan tüm mevcut küme tanımlarını geçersiz kılan
--cluster-id <cluster-id>komutuna yönelik ilgili çağrılardabundle deploykullanımını etkinleştirir.--cluster-id <cluster-id>komutuna yapılan ilgili çağrılardabundle deploykullanmak yerine,cluster_ideşlemesini burada veyabundleeşlemesinin alt eşlemesi olarak, kullanılacak kümenin kimliğine ayarlayabilirsiniz. - İşler veya kalite izleyicileri gibi dağıtılan kaynaklarda tüm zamanlamaları ve tetikleyicileri duraklatır.
schedule.pause_statusöğesiniUNPAUSEDolarak ayarlayarak, tek bir iş için zamanlamaları ve tetikleyicileri devam ettirin. - Daha hızlı yineleme için dağıtılan tüm işlerde eşzamanlı çalıştırmaların yapılmasını etkinleştirir.
max_concurrent_runsöğesini1olarak ayarlayarak tek bir iş için eşzamanlı çalıştırmaları devre dışı bırakın. - Daha hızlı yineleme için dağıtım kilidini devre dışı bırakır. Bu kilit, geliştirme modunda gerçekleşme olasılığı düşük olan dağıtım çakışmalarını önler.
bundle.deployment.lock.enableddeğerinitrueolarak ayarlayarak kilidi yeniden etkinleştirin.
Üretim modu
Paketinizi üretim modunda dağıtmak için mode eşlemeyi, production olarak ayarlayarak hedefe ekleyin. Bkz . paket yapılandırma hedefleri eşlemesi. Örneğin, adlı prod bu hedef bir üretim hedefi olarak değerlendirilir:
targets:
prod:
mode: production
komutunu çalıştırarak bir hedefi üretim modunda dağıtmak databricks bundle deploy -t <target-name> aşağıdaki davranışları uygular:
Tüm ilgili dağıtılmış Lakeflow Spark Deklaratif Boru Hatlarının
development: falseolarak işaretlendiğini doğrular.Geçerli Git dalın hedefte belirtilen Git dalı ile eşit olduğunu doğrular. Hedefte bir Git dalı belirtmek isteğe bağlıdır ve aşağıdaki gibi ek
gitbir özellik ile yapılabilir:git: branch: mainBu doğrulama, dağıtım sırasında belirtilerek
--forcegeçersiz kılınabilir.Databricks, üretim dağıtımları için hizmet sorumlularını kullanmanızı önerir. Bunu bir hizmet sorumlusuna ayarlayarak
run_asetkinleştirebilirsiniz. Bkz. Hizmet sorumluları ve Bildirim temelli Otomasyon Paketleri iş akışı için bir çalıştırma kimliği belirtme. Hizmet sorumlularını kullanmıyorsanız aşağıdaki ek davranışları not edin:-
artifact_path,file_path, veyaroot_pathstate_patheşlemelerinin belirli bir kullanıcıya geçersiz kılınmadığını doğrular. - Dağıtımlara belirli izinlere sahip olan kimliklerin netleştirilmesi için
run_asvepermissionseşlemelerinin belirtildiğini doğrular.
-
Önceki davranışın aksine, eşlemeyi
mode'tendevelopment'e ayarlamak, eşlemeyimode'eproductionolarak belirlemek, örneğin--compute-id <cluster-id>seçeneği veyacompute_ideşlemesini ilgili paket yapılandırma dosyasında belirtilen mevcut küme tanımlarının üzerine yazılmasına izin vermez.
Özel ön ayarlar
Bildirim temelli Otomasyon Paketleri, hedefler için yapılandırılabilir ön ayarları destekler ve bu sayede hedefler için davranışları özelleştirebilirsiniz. Kullanılabilir ön ayarlar için yapılandırma başvurusuna bakın.
Not
Belirli bir ön ayar için bir istisna belirtilmediği sürece, hem mode, hem de presets ayarlanmışsa, ön ayarlar varsayılan mod davranışını geçersiz kılar ve bireysel kaynakların ayarları ön ayarları geçersiz kılar. Örneğin:
-
max_concurrent_runsİş için değeri 10 ise ancakjobs_max_concurrent_runsön ayar 20 olarak ayarlanmışsa, işin en fazla eş zamanlı çalıştırma sayısı 10'dur. - Zamanlama
UNPAUSEDolarak ayarlanırsa, ancaktrigger_pause_statusön ayarPAUSEDolarak ayarlanırsa, zamanlama devam ettirilecektir.
Aşağıdaki örnekte adlı devhedef için özel ön ayarlar yapılandırması gösterilmektedir:
targets:
dev:
presets:
name_prefix: 'testing_' # prefix all resource names with testing_
pipelines_development: true # set development to true for pipelines
trigger_pause_status: PAUSED # set pause_status to PAUSED for all triggers and schedules
jobs_max_concurrent_runs: 10 # set max_concurrent runs to 10 for all jobs
tags:
department: finance