Databricks Uygulamaları nedir?
Önemli
Databricks Uygulamaları Genel Önizleme aşamasındadır.
Databricks Uygulamaları, geliştiricilerin Databricks platformunda güvenli veri ve yapay zeka uygulamaları oluşturmasına ve bu uygulamaları kullanıcılarla paylaşmasına olanak tanır.
Daha önce Databricks çalışma alanı tarafından yönetilen verileri ve Databricks platformunun veri analizi özelliklerini kullanan veri ve yapay zeka uygulamaları oluşturmak için uygulamaları barındırmak için ayrı altyapı dağıtılması, veri idaresi denetimleriyle uyumluluğun sağlanması, kimlik doğrulaması ve yetkilendirme gibi uygulama güvenliğinin yönetilmesi gerekiyordu. Databricks Uygulamaları ile Databricks uygulamalarınızı barındırdığından ek altyapı yapılandırmanız veya dağıtmanız gerekmez.
Uygulamalarınız, Databricks platformunun kaynakları ve özelliklerini kullanabilir; bunlara yönetim için Unity Kataloğu, verileri sorgulamak için Databricks SQL, model sunma gibi yapay zeka özellikleri, ETL için Databricks İşleri ve uygulamanız tarafından kullanılan verilere erişimi denetleyen kurallar da dahil olmak üzere çalışma alanında zaten yapılandırılmış güvenlik kuralları dahildir. Kimlik doğrulaması ve yetkilendirme, OAuth ve hizmet sorumluları dahil olmak üzere mevcut Azure Databricks işlevselliğini kullanır.
Databricks, geliştiriciler için Databricks Uygulamalarını tasarladı. Uygulamalarınızı Python'da Dash, Streamlit veya Gradio gibi herhangi bir çerçeve kullanarak geliştirirsiniz. Uygulamalarınız taşınabilir olduğundan, bunları yerel olarak oluşturup hatalarını ayıklayabilir, bunları bir Databricks çalışma alanına dağıtabilir ve sonra başka bir çalışma alanına taşıyabilirsiniz.
Gereksinim -leri
Çalışma alanı gereksinimleri
Azure Databricks çalışma alanınızda uygulama dağıtmak ve çalıştırmak için çalışma alanının aşağıdaki gereksinimleri karşılaması gerekir:
- Güvenlik duvarınızın etki alanını
*.databricksapps.com
engellemediğinden emin olmanız gerekir. - Databricks çalışma alanınız desteklenen bir bölgede olmalıdır. Bkz. sunucusuz özellik kullanılabilirliği.
Geliştirme ortamı gereksinimleri
Yerel olarak uygulama oluşturmak ve bu uygulamaları Azure Databricks çalışma alanınıza dağıtmak için geliştirme ortamınızın aşağıdaki gereksinimleri karşılaması gerekir:
Python 3.11 veya üzeri.
Databricks çalışma alanınıza erişecek şekilde yapılandırılmış, sürüm v0.229.0 veya üzeri databricks komut satırı arabirimi (Databricks CLI). Databricks CLI'yı yüklemek veya güncelleştirmek ve yapılandırmak için bkz. databricks CLI yükleme veya güncelleştirme
ve Databricks CLIiçin kimlik doğrulamasını . Python için Databricks SDK'sı. SDK'yi ile
pip3
yükleyebilirsiniz:pip3 install databricks-sdk
Bkz. Python için Databricks SDK'sı.
(İsteğe bağlı) Uygulamanızın Databricks SQL'e erişmesi gerekiyorsa Python için Databricks SQL Bağlayıcısı'nı yükleyin. Bağlayıcıyı ile
pip3
yükleyebilirsiniz:pip3 install databricks-sql-connector
Databricks uygulamasını nerede geliştirebilirim?
PyCharm, IntelliJ IDEA veya Visual Studio Code gibi Python'ı destekleyen herhangi bir IDE'de uygulama yazabilir ve test edebilirsiniz. Databricks, Visual Studio Code ve Visual Studio Code için Databricks uzantısını kullanarak uygulamalarınızı geliştirmenizi önerir, ancak kodunuzu doğrudan Databricks çalışma alanınızda düzenlemek için Databricks not defterini ve dosya düzenleyicisini de kullanabilirsiniz.
Databricks uygulaması geliştirmek ve dağıtmak Nasıl yaparım??
Bir uygulamayı yerel olarak geliştirmek için tipik bir iş akışı aşağıda verilmiştir:
- Uygulamanızı Visual Studio Code gibi tercih ettiğiniz IDE'de geliştirin.
- Uygulamanızı komut satırında yerel olarak çalıştırın ve tarayıcınızda görüntüleyin.
- Kod tamamlanıp test edildiğinde kodu ve gerekli yapıtları Databricks çalışma alanınıza taşıyın.
Bkz. Databricks Apps kullanmaya başlama.
Kullanıcı arabiriminde uygulama oluşturmak veya önceden oluşturulmuş bir örnek kullanmak için bkz. Databricks Apps kullanıcı arabiriminde uygulama oluşturma Nasıl yaparım??
Databricks uygulamamla Python çerçevelerini kullanabilir miyim?
Uygulamanızı Dash, Streamlit veya Gradio gibi sık kullandığınız Python çerçevelerini kullanarak geliştirebilirsiniz. Popüler Python çerçevelerini kullanan örnekleri Databricks Uygulamaları kullanıcı arabiriminde görebilirsiniz. Bkz. Databricks Apps kullanıcı arabiriminde uygulama oluşturma Nasıl yaparım?.
Databricks Apps yetkilendirmeyi nasıl yönetir?
Databricks Apps yetkilendirme modeli, uygulamaya erişen kullanıcıyı ve uygulamaya atanmış bir Azure Databricks yönetilen hizmet sorumlusunu içerir:
Bir uygulamaya erişmek için kullanıcının uygulamada CAN_USE veya CAN_MANAGE izinleri olmalıdır. Bir uygulamaya izin atama hakkında daha fazla bilgi edinmek için bkz . Databricks uygulamanız için izinleri yapılandırma.
Bir uygulama oluşturulduğunda, Databricks Uygulamaları otomatik olarak bir Azure Databricks yönetilen hizmet sorumlusu oluşturur ve bu hizmet sorumlusunu uygulamaya atar. Bu hizmet sorumlusu yalnızca uygulamanın oluşturulduğu çalışma alanına erişime sahiptir ve SQL ambarları, model sunum uç noktaları veya Unity Kataloğu'ndaki güvenli kılınabilir nesneler gibi çalışma alanı içindeki kaynaklara erişimi doğrulamak ve yetkilendirmek için kullanılır. Bir uygulamanın verilere veya diğer çalışma alanı kaynaklarına tüm erişimi, uygulama sahibi veya kullanıcı adına değil hizmet sorumlusu adına gerçekleştirilir.
Databricks Apps, uygulamayı dağıtan kullanıcının bu kaynaklar üzerinde izni varsa, uygulamaya
CAN MANAGE
atanan kaynaklara otomatik olarak hizmet sorumlusu izinleri verir. Hizmet sorumlusunun diğer kaynaklara (örneğin, tablolara veya çalışma alanı dosyalarına) erişmesi gerekiyorsa, hesap veya çalışma alanı yöneticisinin bu kaynaklara hizmet sorumlusu erişimi vermesi gerekir. Databricks, kaynaklara erişim izni verirken en düşük ayrıcalık ilkesinin izlenmesini ve hizmet sorumlusuna yalnızca gereken en düşük izinlerin verilmesini önerir. Bkz. Hizmet sorumlularını yönetme.Hizmet asıl adı, Uygulama kaynakları kartındaki uygulama ayrıntıları sayfasında bulunabilir. Hizmet sorumlusu uygulama adını içerir; örneğin, adlı
my-hello-world-app
bir uygulama için hizmet asıl adı şeklindedirapp-22ixod my-hello-world-app
.
Databricks uygulamalarını kimler oluşturabilir?
Çalışma alanında bulunan tüm kullanıcılar uygulama oluşturabilir. Ancak, bir uygulamaya atanan hizmet sorumlusunun izinlerini yönetmek için bir hesap veya çalışma alanı yöneticisi olmanız gerekir.
Databricks uygulamamı Nasıl yaparım? yapılandırdım?
Databricks Uygulamaları, uygulamanızın erişebileceği çeşitli ortam değişkenlerini (örneğin, uygulamanızın üzerinde çalıştığı Databricks konağı) otomatik olarak ayarlar. YaML dosyası kullanarak özel parametreler de ayarlayabilirsiniz. Bkz. Databricks Apps yapılandırması.
Databricks uygulamamı Azure Databricks hizmetleriyle tümleştirme Nasıl yaparım??
Uygulamalarınız verileri sorgulamak için Databricks SQL gibi Databricks platform özelliklerini, veri alımı ve işleme için Databricks İşleri'ni, üretken yapay zeka modellerine erişmek için Mozaik Yapay Zeka Modeli Sunma'yı ve hassas bilgileri yönetmek için Databricks gizli dizilerini kullanabilir. Uygulamanızı yapılandırırken bu Databricks platformu özellikleri kaynak olarak adlandırılır.
Ancak, uygulamalar taşınabilir olacak şekilde tasarlandığından Databricks, uygulamaların belirli kaynaklara bağımlı olmamasını önerir. Örneğin, uygulamanız belirli bir SQL ambarını kullanacak şekilde sabit kodlanmamalıdır. Bunun yerine, bir uygulama oluştururken veya güncelleştirirken Databricks Uygulamaları kullanıcı arabiriminde SQL ambarını yapılandırın.
Ayrıca, uygulamalar en az gerekli ayrıcalıklarla çalışacak şekilde yapılandırıldığından, yeni kaynaklar oluşturmamalıdır. Bunun yerine, mevcut bağımlı hizmetleri çözümlemek için Databricks platformuna güvenmeleri gerekir. Her uygulamanın atanmış bir Databricks hizmet sorumlusu vardır. Uygulama oluşturma veya güncelleştirme sırasında hizmet sorumlusuna tanımlı kaynak bağımlılıkları üzerinde gerekli izinler verilir.
Databricks platform özelliklerini uygulama kaynakları olarak ekleme hakkında daha fazla bilgi edinmek için bkz . Databricks uygulamasına Databricks platformu özellikleri atama.
Databricks uygulamalarım için denetim günlüklerini nerede bulabilirim?
Uygulamaların denetim olaylarını bulmak için Azure Databricks sistem tablolarını kullanın. Sorgulamak için sistem tablolarını kullanabilirsiniz:
- Bir uygulamada oturum açar. Bkz . Databricks uygulamasında hangi kullanıcılar oturum açtı?.
- Uygulamalarda izin veya paylaşım değişiklikleri. Uygulamanın diğer kullanıcılar veya gruplarla nasıl paylaşıldığını değiştirmek için hangi Databricks uygulamalarının güncelleştirildiğini görün.
Databricks Uygulamalarının maliyeti nedir?
Databricks Uygulamalarının fiyatlandırması hakkında bilgi için bkz . Uygulamalar için İşlem.
Databricks Apps sistem ortamı
Not
Ortam değişkenleri ve yüklü paketler de dahil olmak üzere belirli bir uygulamanın ortamını görüntülemek için uygulamanın ayrıntılar sayfasındaki Ortam sekmesine gidin. Bkz . Databricks uygulamasının ayrıntılarını görüntüleme.
Aşağıda, uygulamalarınızın çalıştığı sistem ortamı, uygulamanız için kullanılabilir kaynaklar ve yüklü uygulama ve kitaplıkların sürümleri açıklanmaktadır.
- İşletim Sistemi: Ubuntu 22.04 LTS
-
Python: 3.11.0. Uygulamalarınız bir Python sanal ortamında çalışır. Otomatik olarak yüklenen kitaplıklar ve yüklediğiniz kitaplıklar (örneğin, bir
requirements.txt
dosyayla) dahil olmak üzere tüm bağımlılıklar bu sanal ortama yüklenir. - Sistem kaynakları: Uygulamalarınız en fazla iki sanal CPU (vCPU) ve 6 GB bellek kullanabilir. Uygulamanız ayrılan kaynakları aşarsa yeniden başlatılabilir.
Yüklü Python kitaplıkları
Kitaplık | Sürüm |
---|---|
databricks-sql-connector | 3.4.0 |
databricks-sdk | 0.33.0 |
mlflow-skinny | 2.16.2 |
gradio | 4.44.0 |
streamlit | 1.38.0 |
parlak | 1.1.0 |
dash | 2.18.1 |
Şişe | 3.0.3 |
fastapi | 0.115.0 |
uvicorn[standard] | 0.30.6 |
gunicorn | 23.0.0 |
dash-ag-grid | 31.2.0 |
dash-mantine-components | 0.14.4 |
dash-bootstrap-components | 1.6.0 |
çizim | 5.24.1 |
plotly-resampler | 0.10.0 |
Sınırlamalar
Databricks çalışma alanında 50 uygulama sınırı vardır.
Bir uygulama tarafından kullanılan dosyaların boyutu 10 MB'ı aşamaz. Uygulamanızın dizinindeki bir dosya bu sınırı aşarsa, uygulama dağıtımı bir hatayla başarısız olur.
Databricks Uygulamaları HIPAA, PCI veya FedRAMP uyumluluk standartlarını karşılamaz.
Bir uygulama tarafından oluşturulan günlükler, uygulamayı barındıran Azure Databricks işlemi sonlandırıldığında kalıcı olmaz. Bkz . Databricks uygulamanızdan günlüğe kaydetme.
OAuth'u desteklemedikleri için Databricks Uygulamaları ile eski bölgesel URL'leri kullanamazsınız.