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 Databricks Uygulamalarını geliştirmeye ve çalıştırmaya yönelik önemli en iyi yöntemler listeleniyor. Bu yönergeler güvenlik, performans ve platform gereksinimlerine odaklanır.
Genel en iyi uygulamalar
Veri işleme için Azure Databricks-native özelliklerini kullanın. Uygulama hesaplaması, kullanıcı arabirimi işleme için optimize edilmiştir. Sorgular ve veri kümeleri için Databricks SQL, toplu işleme için Lakeflow İşleri ve yapay zeka çıkarım iş yükleri için Model Sunma kullanın. Performans sorunlarını önlemek için ağır veri işlemeyi bu hizmetlere boşaltabilirsiniz. Uygulamanızın gereksinimlerinizi karşıladığını doğrulamak için beklenen yükleme koşulları altında test edin.
Düzgün kapatma işlemesi uygulayın. Uygulamanız bir
SIGTERMsinyali aldıktan sonra 15 saniye içinde kapanmalıdır, aksi takdirdeSIGKILLile zorla sonlandırılır.Ayrıcalıklı işlemlerden kaçının. Uygulamalar ayrıcalıklı olmayan kullanıcılar olarak çalışır ve kök erişim gibi yükseltilmiş izinler gerektiren eylemler gerçekleştiremez. ,
apt-getveyayumgibiapkpaket yöneticilerini kullanarak sistem düzeyinde paketler yükleyemezsiniz. Bunun yerine, uygulama bağımlılıklarınızı yönetmek için PyPI'den Python paketlerini veya npm'den Node.js paketlerini kullanın.Platform tarafından yönetilen ağı anlama. İstekler ters ara sunucu üzerinden iletilir, bu nedenle uygulamanız isteklerin kaynağına bağlı olamaz. Azure Databricks TLS sonlandırmasını işler ve uygulamaların HTTP/2 cleartext (H2C) desteğine ihtiyacı vardır. Özel TLS işlemesi uygulamayın.
Doğru ana bilgisayara ve bağlantı noktasına bağlayın. Uygulamanızın
0.0.0.0üzerinde dinlemesi veDATABRICKS_APP_PORTortam değişkeninde belirtilen bağlantı noktasını kullanması gerekir. Ayrıntılar için ortam değişkenlerine bakın.Kapsayıcı başlatma süresini en aza indirin. Başlatma mantığını basit tutarak soğuk başlatma gecikme süresini azaltın. Başlatma sırasında büyük bağımlılık yüklemeleri veya dış API çağrıları gibi işlemleri engellemekten kaçının. Ağır kaynakları yalnızca gerektiğinde yükleyin.
stdout ve stderr'a oturum açın. Azure Databricks, standart çıkış ve hata akışlarından günlükleri yakalar. Günlüklerin Azure Databricks kullanıcı arabiriminde görünür olduğundan emin olmak için bunları tüm günlüklerde kullanın. Günlükleri yerel dosyalara yazmaktan kaçının.
Beklenmeyen hataları düzgün bir şekilde işleyin. Kontrol edilmeyen hatalardan kaynaklanan kilitlenmeleri önlemek için küresel istisna yönetimini uygulayın. Yığın izlemelerini veya hassas verileri göstermeden uygun HTTP hata yanıtlarını döndür.
Bağımlılık sürümlerini sabitleyin. Derlemeler arasında tutarlı ortamlar sağlamak için dosyanızdaki
requirements.txttam sürüm numaralarını kullanın. Paketlerin sabitlenmemiş veya en son sürümlerini kullanmaktan kaçının.Kullanıcı girişini doğrulama ve temizleme. İç kullanıma yönelik uygulamalarda bile ekleme saldırılarını veya hatalı biçimlendirilmiş girişleri önlemek için gelen verileri her zaman doğrulayın ve temizleyin.
Pahalı işlemler için bellek içi önbelleğe alma kullanın. Gecikme süresini azaltmak ve yedekli işlemeyi önlemek için sorgu sonuçları veya API yanıtları gibi sık kullanılan verileri önbelleğe alın. Çok kullanıcılı uygulamalarda
functools.lru_cacheve benzer kitaplıkları,cachetoolsönbelleklerini dikkatle kapsamlayarak kullanın.Uzun süre çalışan işlemler için zaman uyumsuz istek desenleri kullanın. İşlemlerin tamamlanmasını bekleyen ve zaman aşımına neden olabilecek zaman uyumlu isteklerden kaçının. Bunun yerine, işlemi başlatmak için bir ilk istek gönderin, ardından tamamlanma durumunu denetlemek için kaynak durumunu veya uç noktayı düzenli aralıklarla sorgulayın.
En iyi güvenlik uygulamaları
En az ayrıcalık ilkesini izleyin. Yalnızca her kullanıcı veya grup için gerekli izinleri verin. Tam denetim gerekmediği sürece yerine
CAN USEkullanınCAN MANAGE. bkz. İzinler için en iyi yöntemler.Kimlik doğrulama yöntemlerini dikkatle seçin. Kaynaklara ve verilere erişim uygulamanın tüm kullanıcıları için aynı olduğunda hizmet sorumlularını kullanın. Yalnızca güvenilen uygulama yazarları ve eşler tarafından gözden geçirilmiş uygulama kodlarının bulunduğu çalışma alanlarında, arayan kullanıcının izinlerine uyması gerektiğinde kullanıcı kimlik doğrulamasını uygulayın.
Her uygulama için ayrılmış hizmet sorumlularını kullanın. Hizmet sorumlusu kimlik bilgilerini uygulamalar veya kullanıcılar arasında paylaşmayın. Gereken en düşük izinleri yalnızca
CAN USEveyaCAN QUERYgibi verin. Uygulama oluşturucuları kuruluşunuzdan ayrıldığında hizmet sorumlusu kimlik bilgilerini yenileyin. Bkz. Kaynaklara uygulama erişimini yönetme.Uygulama ortamlarını yalıtma. Geliştirme, hazırlama ve üretim uygulamalarını ayırmak için farklı çalışma alanları kullanın. Bu, geliştirme ve test sırasında üretim verilerine yanlışlıkla erişimi engeller.
Uygun işlem aracılığıyla verilere erişin. Uygulamanızı verilere doğrudan erişecek veya verileri işecek şekilde yapılandırmayın. Sorgular için SQL ambarlarını, yapay zeka çıkarımı için Model Sunma'yı ve toplu işlem için Lakeflow İşleri'ni kullanın.
Gizli dizileri yönetme. Ortam değişkenlerinde ham gizli değerleri hiçbir zaman gösterme. Uygulama yapılandırmanızda
valueFromkullanın ve özellikle ekip rolleri değiştiğinde gizli bilgileri düzenli olarak değiştirin. Bkz. En iyi yöntemler.Kapsamları en aza indirin ve kullanıcı eylemlerini kaydedin. Kullanıcı yetkilendirmesini kullanırken yalnızca uygulamanızın ihtiyaç duyduğu kapsamları isteyin ve yapılandırılmış denetim kayıtlarıyla tüm kullanıcı eylemlerini günlüğe alın. Bkz. Kullanıcı yetkilendirmesi için en iyi yöntemler.
Giden ağ erişimini kısıtlayın. Yalnızca paket depoları ve dış API'ler gibi uygulamanızın ihtiyaç duyduğu etki alanlarına izin verin. Yapılandırmanızı doğrulamak için kuru çalıştırma modunu ve reddetme günlüklerini kullanın. Bkz. Ağ ilkelerini yapılandırmak için en iyi yöntemler.
Güvenli kodlama uygulamalarını izleyin. Ekleme saldırılarını önlemek için SQL sorgularını parametreleştirin ve giriş doğrulama ve hata işleme gibi genel güvenli geliştirme yönergelerini uygulayın. Bkz Bildirim Yürütme API'si: Ambarlarda SQL çalıştırma.
Şüpheli etkinliği izleyin. Olağan dışı erişim düzenleri veya yetkisiz eylemler için denetim günlüklerini düzenli olarak gözden geçirin. Kritik güvenlik olayları için uyarılar ayarlayın.