Aracılığıyla paylaş


Databricks Varlık Paketleri geliştirme

Bu makalede Databricks Varlık Paketi geliştirme ve yaşam döngüsü açıklanmaktadır. Databricks Varlık Paketleri hakkında genel bilgi için bkz . Databricks Varlık Paketleri nedir?.

Bir paketin yaşam döngüsü

Paketleri etkili bir şekilde kullanmayı anlamak için bir paketin temel yaşam döngüsünü anlamanız gerekir:

  1. Paket iskeleti bir projeye göre oluşturulur .
  2. Paket projesi yerel olarak geliştirilmiştir. Paket, dağıtım hedefleri gibi altyapı ve çalışma alanı ayarlarını, işler ve işlem hatları gibi Databricks kaynaklarının ayarlarını ve kaynak dosyaları ve diğer yapıtları tanımlayan yapılandırma dosyalarını içerir.
  3. Paket projesi doğrulanır. Doğrulama, paketin Databricks'e dağıtılabilir olduğundan emin olmak için paket yapılandırmasındaki ayarları ve kaynak tanımlarını ilgili nesne şemalarına göre doğrular.
  4. Paket bir hedef çalışma alanına dağıtılır. En yaygın olarak bir paket, test için önce kullanıcının kişisel geliştirme çalışma alanına dağıtılır. Paketin testi tamamlandıktan sonra paket hazırlamaya ve ardından üretim hedeflerine dağıtılabilir.
  5. Dağıtılan pakette tanımlanan iş akışı kaynakları çalıştırılabilir. Örneğin, bir iş çalıştırabilirsiniz.
  6. Paket artık kullanılmıyorsa kalıcı olarak yok edilebilir.

Databricks CLI paket komutlarını, aşağıdaki bölümlerde açıklandığı gibi paketleri oluşturmak, doğrulamak, dağıtmak, çalıştırmak ve yok etmek için kullanırsınız.

1. Adım: Paket oluşturma

Paket oluşturmaya başlamanın üç yolu vardır:

  1. Varsayılan paket şablonunu kullanın.
  2. Özel paket şablonu kullanın.
  3. El ile paket oluşturun.

Varsayılan paket şablonunu kullanma

Azure Databricks varsayılan paket şablonunu kullanarak daha sonra özelleştirebileceğiniz bir başlangıç paketi oluşturmak için Databricks CLI sürüm 0.218.0 veya üzerini kullanarak komutu çalıştırın bundle init ve kullanılabilir şablonlar listesinden seçim yapabilirsiniz. Bkz. Proje şablonundan paket oluşturma.

databricks bundle init

Varsayılan paket şablonlarının kaynağını databricks/cli ve databricks/mlops-stacks Github genel depolarında görüntüleyebilirsiniz.

2. Adım: Paket yapılandırma dosyalarını doldurma bölümüne geçin.

Özel paket şablonu kullanma

Azure Databricks varsayılan paket şablonu dışında bir paket şablonu kullanmak için yerel yolu veya uzak paket şablonu konumunun URL'sini bilmeniz gerekir. Komutu aşağıdaki gibi çalıştırmak için Databricks CLI sürüm 0.218.0 veya üzerini bundle init kullanın:

databricks bundle init <project-template-local-path-or-url>

Bu komut hakkında daha fazla bilgi için bkz . Databricks Varlık Paketi proje şablonları. Belirli bir paket şablonu hakkında bilgi için paket şablonu sağlayıcısının belgelerine bakın.

2. Adım: Paket yapılandırma dosyalarını doldurma bölümüne geçin.

El ile paket oluşturma

Paket şablonu kullanmak yerine el ile paket oluşturmak için yerel makinenizde bir proje dizini veya üçüncü taraf Git sağlayıcısına sahip boş bir depo oluşturun.

Dizininizde veya deponuzda giriş olarak bir veya daha fazla paket yapılandırma dosyası oluşturun. Bu dosyalar YAML biçiminde ifade edilir. adlı databricks.ymlen az bir (ve yalnızca bir) paket yapılandırma dosyası olmalıdır. Ek paket yapılandırma dosyalarına dosyanın eşlemesinde include databricks.yml başvurulmalıdır.

Databricks Varlık Paketi yapılandırma söz dizimine uyan YAML dosyalarını daha kolay ve hızlı bir şekilde oluşturmak için Visual Studio Code, PyCharm Professional veya IntelliJ IDEA Ultimate gibi YAML dosyaları ve JSON şema dosyaları için destek sağlayan bir aracı aşağıdaki gibi kullanabilirsiniz:

Visual Studio Code

  1. Örneğin Visual Studio Code Market'ten YAML uzantısını yükleyerek Visual Studio Code'a YAML dil sunucusu desteği ekleyin.

  2. Databricks CLI sürüm 0.218.0 veya üzerini kullanarak Databricks Varlık Paketi yapılandırma JSON şema dosyasını oluşturarak komutu çalıştırın bundle schema ve çıkışı bir JSON dosyasına yönlendirin. Örneğin, aşağıdaki gibi geçerli dizinde adlı bundle_config_schema.json bir dosya oluşturun:

    databricks bundle schema > bundle_config_schema.json
    
  3. Geçerli dizinde bir paket yapılandırma dosyası oluşturmak veya açmak için Visual Studio Code'u kullanın. Bu dosya olarak adlandırılmalıdır databricks.yml.

  4. Paket yapılandırma dosyanızın başına aşağıdaki açıklamayı ekleyin:

    # yaml-language-server: $schema=bundle_config_schema.json
    

    Not

    Önceki açıklamadaki Databricks Varlık Paketi yapılandırma JSON şema dosyanız farklı bir yoldaysa değerini şema dosyanızın tam yoluyla değiştirin bundle_config_schema.json .

  5. Daha önce eklediğiniz YAML dil sunucusu özelliklerini kullanın. Daha fazla bilgi için YAML dil sunucunuzun belgelerine bakın.

PyCharm Professional

  1. Databricks CLI sürüm 0.218.0 veya üzerini kullanarak Databricks Varlık Paketi yapılandırma JSON şema dosyasını oluşturarak komutu çalıştırın bundle schema ve çıkışı bir JSON dosyasına yönlendirin. Örneğin, aşağıdaki gibi geçerli dizinde adlı bundle_config_schema.json bir dosya oluşturun:

    databricks bundle schema > bundle_config_schema.json
    
  2. PyCharm'ı paket yapılandırması JSON şema dosyasını tanıyacak şekilde yapılandırın ve ardından Özel JSON şeması yapılandırma başlığındaki yönergeleri izleyerek JSON şema eşlemesini tamamlayın.

  3. Paket yapılandırma dosyası oluşturmak veya açmak için PyCharm kullanın. Bu dosya olarak adlandırılmalıdır databricks.yml. Siz yazarken, PyCharm JSON şeması söz dizim ve biçimlendirmesini denetler ve kod tamamlama ipuçları sağlar.

IntelliJ IDEA Ultimate

  1. Databricks CLI sürüm 0.218.0 veya üzerini kullanarak Databricks Varlık Paketi yapılandırma JSON şema dosyasını oluşturarak komutu çalıştırın bundle schema ve çıkışı bir JSON dosyasına yönlendirin. Örneğin, aşağıdaki gibi geçerli dizinde adlı bundle_config_schema.json bir dosya oluşturun:

    databricks bundle schema > bundle_config_schema.json
    
  2. IntelliJ IDEA'yı paket yapılandırması JSON şema dosyasını tanıyacak şekilde yapılandırın ve ardından Özel JSON şeması yapılandırma başlığındaki yönergeleri izleyerek JSON şema eşlemesini tamamlayın.

  3. Paket yapılandırma dosyası oluşturmak veya açmak için IntelliJ IDEA kullanın. Bu dosya olarak adlandırılmalıdır databricks.yml. Siz yazarken IntelliJ IDEA, JSON şeması söz dizim ve biçimlendirmesini denetler ve kod tamamlama ipuçları sağlar.

2. Adım: Paket yapılandırma dosyalarını doldurma

Paket yapılandırma dosyaları çalışma alanı ayrıntıları, yapıt adları, dosya konumları, iş ayrıntıları ve işlem hattı ayrıntıları gibi ayarları belirterek Azure Databricks iş akışlarınızı tanımlar. Paket yapılandırması genellikle geliştirme, hazırlama ve üretim dağıtım hedeflerini de içerir. Paket yapılandırma dosyaları hakkında ayrıntılı bilgi için bkz . Databricks Varlık Paketi yapılandırması.

Komutunu kullanarak bundle generate çalışma alanında var olan bir kaynak için paket yapılandırmasını otomatik olarak oluşturabilir ve ardından bundle deployment bind paket yapılandırmasını çalışma alanında bulunan kaynağa bağlayarak bunları eşitlenmiş durumda tutabilirsiniz. Bkz . Paket yapılandırma dosyası oluşturma ve Paket kaynaklarını bağlama.

3. Adım: Paket yapılandırma dosyalarını doğrulama

Yapıtları dağıtmadan veya bir iş veya işlem hattı çalıştırmadan önce, paket yapılandırma dosyalarınızdaki tanımların geçerli olduğunu doğrulamanız gerekir. Bunu yapmak için paket projesi kök dizininden komutunu çalıştırın bundle validate . Bkz . Paketi doğrulama.

databricks bundle validate

Doğrulama başarılı olursa paket kimliğinin özeti ve bir onay iletisi döndürülür. Şemanın çıktısını almak için komutunu kullanın databricks bundle schema . Bkz . Paket yapılandırma şemasını görüntüleme.

4. Adım: Paketi dağıtma

Paketi dağıtmadan önce uzak çalışma alanında çalışma alanı dosyalarının etkinleştirildiğinden emin olun. Bkz . Çalışma alanı dosyaları nedir?.

Bir paketi uzak bir çalışma alanına dağıtmak için Paket dağıtma bölümünde açıklandığı gibi paket kökünden komutunu çalıştırınbundle deploy. Databricks CLI, paket yapılandırma dosyaları içinde bildirilen hedef çalışma alanına dağıtılır. Hedefleri görün.

databricks bundle deploy

Bir paketin benzersiz kimliği adı, hedefi ve dağıtanın kimliğiyle tanımlanır. Bu öznitelikler farklı paketlerde aynıysa, bu paketlerin dağıtımı birbiriyle karışacaktır. Ek ayrıntılar için bkz . Paket dağıtma.

İpucu

Ortam değişkenini ayarlayarak BUNDLE_ROOT komutları paket kökü dışında çalıştırabilirsinizdatabricks bundle. Bu ortam değişkeni ayarlanmadıysa, databricks bundle komutlar geçerli çalışma dizininde arama yaparak paket kökünü bulmaya çalışır.

5. Adım: Paketi çalıştırma

Belirli bir işi veya işlem hattını çalıştırmak için paket kökünden komutunu çalıştırın bundle run ve paket yapılandırma dosyalarında bildirilen işi veya işlem hattı anahtarını Paket çalıştırma bölümünde açıklandığı gibi belirtin. Kaynak anahtarı, kaynağın YAML bloğunun en üst düzey öğesidir. bir iş veya işlem hattı anahtarı belirtmezseniz, kullanılabilir kaynaklar listesinden çalıştırılacak kaynağı seçmeniz istenir. -t Seçenek belirtilmezse, paket yapılandırma dosyalarında bildirilen varsayılan hedef kullanılır. Örneğin, varsayılan hedef bağlamında anahtarla hello_job bir iş çalıştırmak için:

databricks bundle run hello_job

adlı devbir hedef bağlamında anahtarla hello_job bir iş çalıştırmak için:

databricks bundle run -t dev hello_job

6. Adım: Paketi yok etme

Paketinizle işiniz bittiyse ve daha önce dağıtılan işleri, işlem hatlarını ve yapıtları silmek istiyorsanız, komutunu paket kökünden çalıştırın bundle destroy . Bu komut, paket yapılandırma dosyalarında tanımlanan önceden dağıtılan tüm işleri, işlem hatlarını ve yapıtları siler. Bkz . Paketi yok etme.

databricks bundle destroy

Varsayılan olarak, önceden dağıtılan işlerin, işlem hatlarının ve yapıtların kalıcı olarak silinmesini onaylamanız istenir. Bu istemleri atlamak ve otomatik kalıcı silme gerçekleştirmek için komutuna bundle destroy seçeneğini ekleyin--auto-approve.