Aracılığıyla paylaş


Azure Databricks'te güvenilirlik

Azure Databricks , Microsoft Azure için iyileştirilmiş, işbirliğine dayalı bir Apache Spark tabanlı veri ve yapay zeka platformudur. Büyük veri ve yapay zeka iş yükleri için birleşik bir ortam sağlar ve veri mühendisliğini, veri bilimini ve makine öğrenmesini basitleştirmek için Databricks ve Azure'ın en iyilerini birleştirir.

Azure'ı kullandığınızda güvenilirlik paylaşılan bir sorumluluktır. Microsoft, dayanıklılık ve kurtarmayı desteklemek için çeşitli özellikler sunar. Bu özelliklerin kullandığınız tüm hizmetler içinde nasıl çalıştığını anlamak ve iş hedeflerinize ve çalışma süresi hedeflerinize ulaşmak için ihtiyacınız olan özellikleri seçmek sizin sorumluluğunuzdadır.

Bu makalede, Azure Databricks'in çeşitli olası kesintilere ve sorunlara karşı dayanıklılığı nasıl koruduğu ve gereksinimlerinizi karşılamak için dayanıklılığı nasıl yapılandırabileceğiniz açıklanmaktadır. Bu kılavuz geçici hataları, kullanılabilirlik alanı kesintilerini, bölge kesintilerini ve hizmet bakımını kapsar. Bu makalede ayrıca diğer sorunlardan kurtarmak için yedeklemelerin nasıl kullanılacağı açıklanır ve Azure Databricks hizmet düzeyi sözleşmesi (SLA) hakkındaki önemli bilgiler vurgulanır.

Üretim dağıtımı önerileri

Çözümünüzün güvenilirlik gereksinimlerini desteklemek için Azure Databricks'i dağıtmayı ve güvenilirliğin mimarinizin diğer yönlerini nasıl etkilediğini öğrenmek için bkz. Azure Databricks için mimari en iyi yöntemleri.

Güvenilirlik mimarisine genel bakış

Azure Databricks'teki her birincil bileşenin güvenilirliğini anlamanız gerekir:

  • Denetim düzlemi , çalışma alanı meta verilerini, kullanıcı erişimini, iş zamanlamasını ve küme yönetimini yöneten durum bilgisi olmayan hizmetlerden oluşan bir koleksiyondur. Bu hizmetler, desteklenen bölgelerdeki kullanılabilirlik alanları arasında çoğaltılan veritabanları tarafından desteklenir.

  • Databricks Dosya Sistemi (DBFS) kökü , bulut hesabınızda bir Azure Databricks çalışma alanı oluşturduğunuzda Azure Databricks'in otomatik olarak sağladığı bir depolama hesabıdır. DbFS kökünde veri depolamamanızı ve mümkünse bu depolama hesabını devre dışı bırakmanızı öneririz.

  • Unity Kataloğu depolama alanı, Unity Kataloğu verilerinizi bulut hesabınızda depolayan bir veya daha fazla depolama hesabı içerir. Daha fazla bilgi için bkz. Unity Kataloğuna genel bakış.

  • İşlem düzlemi , sanal makine kümelerini (VM) kullanarak veri işleme iş yüklerini çalıştırır. İşlem düzlemi geçici hataları işler ve başarısız düğümleri kullanıcı müdahalesi olmadan otomatik olarak değiştirir. Birden çok işlem kaynağı türü arasından seçim yapabilirsiniz. Daha fazla bilgi için bkz. İşlem.

    Çalışma alanı kullanılabilirliği, denetim düzleminin kullanılabilirliğine bağlıdır, ancak işlem kümeleri denetim düzlemi kesintileri sırasında bile işleri işlemeye devam edebilir.

Geçici hatalara dayanıklılık

Geçici hatalar, bileşenlerde kısa ve aralıklı hatalardır. Bunlar genellikle bulut gibi dağıtılmış bir ortamda gerçekleşir ve işlemlerin normal bir parçasıdır. Geçici hatalar kısa bir süre sonra kendilerini düzeltmektedir. Uygulamalarınızın genellikle etkilenen istekleri yeniden deneyerek geçici hataları işleyebileceği önemlidir.

Bulutta barındırılan tüm uygulamalar, bulutta barındırılan API'ler, veritabanları ve diğer bileşenlerle iletişim kurarken Azure geçici hata işleme yönergelerini izlemelidir. Daha fazla bilgi için bkz Geçici hataları ele alma önerileri.

Geçici hatalardan kurtulmaya yardımcı olmak için Lakeflow İşleri içindeki görevlerin tekrar denemelerini kontrol edebilirsiniz.

Azure Databricks üzerinde çalışan uygulamalar için Depolama, Azure SQL Veritabanı veya Azure Event Hubs gibi dış hizmetlere veya Azure hizmetlerine bağlandığınızda üstel geri alma ile yeniden deneme mantığını uygulayın. Databricks Runtime birçok Azure hizmeti için yerleşik dayanıklılık içerir, ancak uygulama kodunuz hizmete özgü geçici hataları işlemelidir.

Kullanılabilirlik alanı hatalarına dayanıklılık

Kullanılabilirlik alanları , bir Azure bölgesi içindeki veri merkezlerinin fiziksel olarak ayrı gruplarıdır. Bir bölge başarısız olduğunda hizmetler kalan bölgelerden birine devredilebilir.

Azure Databricks, her bileşen için alanlar arası yedekliliği destekler:

  • Kontrol düzlemi: Kullanılabilirlik alanlarını destekleyen bölgelerde, denetim düzlemi birden çok kullanılabilirlik alanında çalışır. Kontrol düzlemi, bölge hatalarını en az etkiyle ve kullanıcı müdahalesine gerek olmadan otomatik olarak işler.

    Denetim düzlemi çalışma alanı verileri veritabanlarında depolanır. Kullanılabilirlik alanlarını destekleyen bölgelerde, veritabanları bölgedeki birden çok bölgede çoğaltılır. Databricks Runtime görüntülerine hizmet veren depolama hesapları da bölge içinde yedeklidir. Birincil depolama hesabı kapalı olduğunda tüm bölgeler kullanılan ikincil depolama hesaplarına sahiptir.

  • DBFS kökü: Kullanılabilirlik alanlarını destekleyen bölgelerde, DBFS kökü için depolama hesabını alanlar arası yedekli depolama (ZRS) kullanacak şekilde yapılandırabilirsiniz. Kullanılabilirlik alanlarını destekleyen eşleştirilmiş bölgelerde isteğe bağlı olarak coğrafi alanlar arası yedekli depolama (GZRS) kullanabilirsiniz.

  • İşlem düzlemi: Databricks, işlem kaynakları için otomatik bölge dağıtımını destekler; bu da kaynaklarınızın birden çok kullanılabilirlik alanına dağıtıldığı anlamına gelir. Bu dağıtım, üretim iş yüklerinizin bölge kesintilerine karşı dayanıklılık elde etmelerine yardımcı olur.

    Sunucusuz işlem kullandığınızda, işlem için bölgeleri açıkça seçemezsiniz. Databricks, bölge kesintileri nedeniyle kaybolabilecek VM'lerin bölge seçimini ve vm'lerin değiştirilmesini yönetir.

Gereksinimler

Azure Databricks'te kullanılabilirlik alanı desteğini kullanmak için aşağıdaki gereksinimlere ihtiyacınız vardır:

  • Bölge desteği: Azure Databricks kullanılabilirlik alanı desteği, Azure Databricks'i destekleyen ve kullanılabilirlik alanları sağlayan tüm Azure bölgelerinde kullanılabilir. Azure Databricks'i destekleyen bölgelerin listesi için bkz. Bölgeye göre kullanılabilir ürünler. Kullanılabilirlik alanlarını destekleyen bölgelerin tam listesi için bkz. Kullanılabilirlik alanlarını destekleyen Azure bölgeleri.

  • Depolama çoğaltması: Çalışma alanı depolama hesaplarını ZRS veya GZRS kullanacak şekilde yapılandırın (varsa).

  • İşlem kapasitesi: Hedef bölgenizdeki birden çok bölgede yeterli işlem kapasitesinin mevcut olduğundan emin olun. Azure Databricks küme düğümlerini bölgeler arasında otomatik olarak dağıtır, ancak seçtiğiniz örnek türlerinin tüm hedef bölgelerde kullanılabilir olduğunu doğrulamanız gerekir.

Değerlendirmeler

Azure Databricks, küme düğümlerini kullanılabilirlik alanları arasında otomatik olarak dağıtır. Dağıtım, her bölgedeki kullanılabilir kapasiteye bağlıdır. Yüksek talep dönemlerinde küme düğümleri daha az bölgede yoğunlaşmış olabilir. Sunucusuz işlem kullandığınızda Azure Databricks, bölge seçimi ve bölge kesintileri nedeniyle kaybolabilecek VM'lerin değiştirilmesini yönetir.

Maliyet

Kullanılabilirlik alanı yerleşimlerinden bağımsız olarak aynı sayıda VM için ödeme yaptığınız için bölge dağıtımı işlem maliyetlerini etkilemez. Daha fazla bilgi için bkz. Azure Databricks işlem fiyatlandırması.

Yönetilen depolama hesabı veya DBFS kökü için varsayılan yedeklilik coğrafi olarak yedekli depolamadır (GRS). ZRS veya GZRS olarak değiştirmek depolama maliyetlerinizi etkileyebilir. Daha fazla bilgi için Azure Blob Depolama fiyatlandırması bölümüne bakın.

Kullanılabilirlik alanı desteğini yapılandırma

  • Kontrol düzlemi: Denetim düzlemi, kullanılabilirlik alanları olan bölgelerde alanlar arası yedekliliği otomatik olarak destekler. Hiçbir şeyi yapılandırmanız gerekmez.

  • DBFS kökü: Yeni bir çalışma alanı oluşturduğunuzda veya var olan bir çalışma alanını değiştirdiğinizde DBFS kök depolaması için bölge yedekliliğini yapılandırabilirsiniz:

    • Alanlar arası yedekli DBFS Kök depolama alanı ile yeni çalışma alanı oluşturun: Yeni bir Azure Databricks çalışma alanı oluşturduğunuzda, isteğe bağlı olarak ilişkili depolama hesabını varsayılan GRS yerine ZRS veya GZRS kullanacak şekilde yapılandırabilirsiniz. Daha fazla bilgi için bkz. Çalışma alanı depolama yedekliliği seçeneklerini değiştirme.

    • DBFS kök depolama alanında alanlar arası yedekliliği etkinleştirin: Mevcut çalışma alanları için, çalışma alanı depolama hesabının yedeklilik yapılandırmasını ZRS veya GZRS olarak değiştirebilirsiniz. Alanlar arası yedekliliği etkinleştirme hakkında daha fazla bilgi için bkz. Depolama hesabının çoğaltma ayarlarını değiştirme.

  • İşlem düzlemi: Küme düğümleri, kullanılabilirlik alanları arasında otomatik olarak dağıtılır. Bölge dağıtımı için müşteri yapılandırması gerekmez.

Tüm bölgeler sağlıklı olduğunda davranış

Bu bölümde, bir çalışma alanı kullanılabilirlik alanı desteğiyle yapılandırıldığında ve tüm kullanılabilirlik alanları çalışır durumda olduğunda neler bekleyebileceğiniz açıklanmaktadır.

  • Bölgeler arasında veri çoğaltma: DBFS kökü bir ZRS veya GZRS hesabı kullandığında, çalışma alanı depolaması için veri çoğaltma, bölgeler arasında zaman uyumlu olarak gerçekleşir. Bu yaklaşım, en düşük performans etkisiyle güçlü tutarlılık sağlar.

  • Bölgeler arasında trafik yönlendirme: Azure Databricks, küme oluşturma sırasında küme düğümlerini bölgeler arasında otomatik olarak dağıtır. Hizmet, en iyi performans için veri yerelliğini korurken bölgeler arasında işlem yükünü dengeler.

Bölge hatası sırasındaki davranış

Bu bölümde, bir çalışma alanı kullanılabilirlik alanı desteğiyle yapılandırıldığında ve kullanılabilirlik alanı kesintisi olduğunda neler bekleyebileceğiniz açıklanmaktadır.

  • Algılama ve yanıt: Microsoft bölge hatalarını otomatik olarak algılar ve yanıt yordamlarını başlatır. Bölge düzeyinde yük devretme için herhangi bir işlem yapmanız gerekmez.

  • Bildirim: Microsoft, bir bölge kapatıldığında sizi otomatik olarak bilgilendirmez. Ancak tüm temel Azure Databricks hizmetlerine genel bir bakış görmek için Azure Databricks durum sayfasını kullanabilirsiniz. Ayrıca, tek tek hizmet bileşenlerindeki durum güncelleştirmelerine abone olabilir ve abone olduğunuz hizmetin durumu değiştiğinde bir uyarı alabilirsiniz.

  • Etkin istekler: Çalışan kümeler, etkilenen bölgedeki düğümleri kaybedebilir. Küme yöneticisi, kalan bölgelerden otomatik olarak yeni düğümler istemektedir. Sürücü düğümü kaybolursa küme ve iş tamamen yeniden başlatılır.

  • Beklenen veri kaybı:

    • Kontrol düzlemi: Bölge kesintisi sırasında veri kaybı olmamasını bekleyebilirsiniz.

    • DBFS kökü: Çalışma alanı verileri ZRS veya GZRS depolama yapılandırmaları kullanıyorsa kullanılabilir durumda kalır.

    • İşlem düzlemi: VM'lerde önbelleğe alınan veriler kısa ömürlüdür. Bölge hatası sırasında VM'lerden kaybolan tüm veriler depolama alanından kurtarılır. Sürücü düğümü kaybolursa, iş yeniden başlatılır ve sonuçlar yeniden hesaplanır.

  • Beklenen kapalı kalma süresi:

    • Kontrol düzlemi: Databricks kontrol düzlemi, yaklaşık 15 dakika içinde sağlıklı bölgelere otomatik yük devretme gerçekleştirir.

    • DBFS kökü: ZRS veya GZRS kullanan depolama hesapları için kesinti beklemeyin.

    • İşlem düzlemi: Vm'leri etkilenen kullanılabilirlik alanında bulunduğundan düğümler kaybolursa, Azure küme yöneticisi Azure işlem sağlayıcısından yeni düğümler istemektedir. Kalan iyi durumdaki bölgelerin isteği yerine getirmek için yeterli kapasitesi varsa işlem sağlayıcısı, kayıp düğümleri değiştirmek için iyi durumdaki bölgelerden düğümleri çeker. Bu işlem birkaç dakika sürebilir.

      Bölge hatası nedeniyle sürücü düğümü kaybolursa, kümenin tamamı yeniden başlatılır ve bu da çalışan düğümlerini kaybetmeye kıyasla daha uzun kurtarma sürelerine neden olabilir. İş zamanlama ve izleme stratejilerinizde bu davranışı planlayın.

      Bu süreyi azaltmak için sunucusuz veya örnek havuzları kullanabilirsiniz.

  • Trafik yeniden yönlendirme:

    • Kontrol düzlemi: Databricks kontrol düzlemi, yaklaşık 15 dakika içinde sağlıklı bölgelere otomatik yük devretme gerçekleştirir.

    • DBFS kökü: Azure Depolama, istekleri otomatik olarak iyi durumdaki bölgelerdeki depolama kümelerine yönlendirir.

    • İşlem düzlemi: Küme yöneticisi, iyi durumdaki bölgelerdeki düğümlere otomatik olarak geçiş yapar.

Bölge kurtarma

Başarısız kullanılabilirlik alanı kurtarıldığında Azure Databricks tüm bölgelerdeki normal işlemleri otomatik olarak sürdürür. Küme yöneticisi sonraki düğüm oluşturma işlemleri sırasında düğüm dağıtımını yeniden dengelese de, mevcut düğümler sonlandırılana kadar geçerli bölgelerinde çalışmaya devam eder.

Failback işlemleri için herhangi bir işlem yapmanız gerekmez. Yeni küme dağıtımları için normal bölge dağıtımı sürdürülür.

Bölge hataları için test

Azure Databricks, Microsoft'un bölge yük devretmesini otomatik olarak işlediği ve düzenli bölge aşağı testlerini yaptığı yönetilen bir hizmettir. Hizmetin kendisi için bölge hatası senaryolarını test etmeniz gerekmez.

Azure Databricks'te çalışan uygulamalarınız için sürücü düğümü hatalarını benzeterek ve küme yeniden başlatma davranışını izleyerek iş dayanıklılığını test edin. Veri işleme görevlerinizin, küme yeniden başlatmalarını işleyip uygun denetim noktalarından devam ettirebildiğini doğrulayın.

Bölge genelindeki hatalara dayanıklılık

Azure Databricks tek bölgeli bir hizmettir. Bölge kullanılamıyorsa, çalışma alanınız da kullanılamaz. Çok bölgeli dağıtımlara ihtiyacınız varsa bkz. Azure Databricks olağanüstü durum kurtarma.

Dayanıklılık için özel çok bölgeli çözümler

Azure Databricks yerleşik çok bölgeli özellikler sağlamaz. Analiz iş yüklerinizin çok bölgeli kapsamlı koruması için kendi yaklaşımınızı uygulamanız gerekir.

Tipik çok bölgeli çözümler iki veya daha fazla çalışma alanı içerir. Etkin-pasif ve aktif-etkin mimariler de dahil olmak üzere çeşitli stratejiler arasından seçim yapabilirsiniz.

Bir mimari seçmek için aşağıdaki faktörleri göz önünde bulundurun:

  • İş yükünün işletmeniz için kritikliği
  • Kesintinin olası süresi (saatler veya muhtemelen tam bir gün)
  • Çalışma alanını tamamen çalışır duruma getirmek için gereken çaba
  • Birincil bölgeyi geri yüklemek veya yeniden çalıştırmak için gereken çaba

Çok bölgeli koruma gerektiren iş yükleri için bkz. Azure Databricks olağanüstü durum kurtarma.

Yedekleme ve kurtarma

Azure Databricks, hizmetin yönetilen işlemlerinin bir parçası olarak veritabanlarını otomatik olarak yedekler. Bu işlem not defteri içeriğini, iş tanımlarını, küme yapılandırmalarını ve erişim denetimi ayarlarını içerir.

Uyarı

Bir bölge hatası oluşursa Azure Databricks veri kaybı beklemez.

Verilerinizi Unity Kataloğu depolama alanında depolamanızı öneririz. Depolama replikasyonu veya delta kopyalama yoluyla veri çoğaltabilirsiniz.

Çalışma alanı düzeyinde yedekleme ve geri yükleme özellikleri doğrudan kullanılamaz. Eşitleme işlemlerinizden gelen yapılandırmaları, kullanıcıları ve erişim denetimlerini geri yüklemeyi içeren çalışma alanı yeniden oluşturma prosedürlerini planlayın.

Hizmet bakımına dayanıklılık

Azure Databricks, güvenlik güncelleştirmelerini uygulamak, yeni özellikler dağıtmak ve hizmet güvenilirliğini artırmak için otomatik platform bakımı gerçekleştirir. Üretim iş yüklerinizi etkileyen bakım olasılığını azaltmak için kümenizin bakım pencerelerini yapılandırabilirsiniz. Daha fazla bilgi için bkz. Otomatik küme güncelleştirme.

Hizmet düzeyi sözleşmesi

Azure hizmetleri için hizmet düzeyi sözleşmesi (SLA), her hizmetin beklenen kullanılabilirliğini ve bu kullanılabilirlik beklentisini elde etmek için çözümünüzün karşılaması gereken koşulları açıklar. Daha fazla bilgi için çevrimiçi hizmetler için SLA'lar sayfasına bakın.