Aracılığıyla paylaş


Microsoft Fabric için Apache Spark'ta eşzamanlılık sınırları ve kuyruğa alma

Şunlar için geçerlidir: Microsoft Fabric'te Veri Madenciliği ve Veri Bilimi

Microsoft Fabric, belirli bir zamanda kullanılabilen ayrılmış bir kaynak kümesi olan kapasite aracılığıyla işlem birimlerinin ayrılmasına olanak tanır. Kapasite, bir kaynağın etkinlik gerçekleştirme veya çıkış oluşturma becerisini tanımlar. Farklı öğeler belirli bir zamanda farklı kapasite tüketir. Microsoft Fabric, Doku SKU'ları ve denemeleri aracılığıyla kapasite sunar. Daha fazla bilgi için bkz . Kapasite nedir?.

Kullanıcılar Azure'da bir Microsoft Fabric kapasitesi oluşturduğunuzda analiz iş yükü boyutlarına göre bir kapasite boyutu seçer. Apache Spark'ta kullanıcılar, SKU'larının bir parçası olarak ayırdıkları her kapasite birimi için iki Apache Spark sanal çekirdeği alır.

Bir Kapasite Birimi = İki Spark Sanal Çekirdeği

Yöneticiler kapasiteyi satın aldıktan sonra Microsoft Fabric'te kapasite içinde çalışma alanları oluşturabilir. Kapasiteyle ilişkili Spark sanal çekirdekleri, bu çalışma alanlarında oluşturulan not defterleri, Apache Spark iş tanımları ve lakehouse'lar gibi tüm Apache Spark tabanlı öğeler arasında paylaşılır.

Eşzamanlılık azaltma ve kuyruğa alma

Spark for Fabric, kullanıcıların satın alınan Doku kapasitesi SKU'larına göre iş gönderebildiği çekirdek tabanlı bir azaltma ve kuyruğa alma mekanizması uygular. Kuyruğa alma mekanizması, kullanılabilir iş yuvalarını denetleyen ve kapasite kullanılabilir duruma geldikten sonra işleri otomatik olarak yeniden denenen basit bir FIFO tabanlı kuyruktır. Kullanıcılar, satın aldıkları Doku kapasitesi SKU'su için kullanılabilir olan tüm Spark sanal çekirdeklerini kullanarak eşzamanlı çalışan işlerden dolayı kapasiteleri en yüksek kullanımda olduğunda Tabloya Yükle gibi not defteri veya lakehouse işleri gönderdiğinde, iletiyle kısıtlanırlar

HTTP Yanıt kodu 430: Spark işlem veya API hız sınırına bastığınız için bu Spark işi çalıştırılamıyor. Bu Spark işini çalıştırmak için İzleme hub'ı aracılığıyla etkin bir Spark işini iptal edin veya daha büyük bir kapasite SKU'su seçin veya daha sonra yeniden deneyin.

Kuyruğa alma etkinleştirildiğinde, işlem hatlarından ve iş zamanlayıcıdan tetiklenen not defteri işleri ve Spark iş tanımları kuyruğa eklenir ve kapasite boşaltıldığında otomatik olarak yeniden denenür. Kuyruk süre sonu, iş gönderme zamanından itibaren 24 saat olarak ayarlanır. Bu süreden sonra işlerin yeniden yayımlanması gerekir.

Doku kapasiteleri, bir iş yükünün yürütülmesini hızlandırmak için satın alınanların ötesinde fazladan işlem çekirdeği kullanmanıza olanak tanıyan seri artış ile etkinleştirilir. Apache Spark iş yüklerinde ani artış, kullanıcıların satın alınan Spark sanal çekirdeklerinin toplam 3 katını içeren işleri göndermesine olanak tanır.

Not

Ani artış faktörü, eşzamanlılığa yardımcı olmak için yalnızca toplam Spark sanal çekirdek sayısını artırır, ancak iş başına maksimum çekirdeği artırmaz. Kullanıcılar, Doku kapasitelerinin sunduğundan daha fazla çekirdek gerektiren bir iş gönderemez.

Aşağıdaki bölümde, Microsoft Fabric kapasite SKU'larını temel alan Spark iş yükleri için çekirdek tabanlı çeşitli sınırlar listelanmaktadır:

Doku kapasitesi SKU'su Eşdeğer Power BI SKU'su Spark Sanal Çekirdekleri Burst Factor ile Maksimum Spark Sanal Çekirdekleri Kuyruk sınırı
F2 - 4 20 4
F4 - 8 24 4
F8 - 16 48 8
F16 - 32 96 16
F32 - 64 192 32
F64 P1 128 384 64
F128 P2 Kategori 256 768 128
F256 P3 512 1536 Kategori 256
F512 P4 1024 3072 512
F1024 - 2048 6144 1024
F2048 - 4096 12288 2048
Deneme Kapasitesi P1 128 128 NA

Örnek hesaplama: F64 SKU 128 Spark sanal çekirdeği sunar. F64 SKU'su için uygulanan seri artış faktörü 3'tür ve toplam 384 Spark sanal çekirdeği verir. Seri artış faktörü yalnızca eşzamanlılık konusunda yardımcı olmak için uygulanır ve tek bir Spark işi için kullanılabilir maksimum çekirdek sayısını artırmaz. Başka bir deyişle , tek bir Not Defteri veya Spark iş tanımı veya lakehouse işi en fazla 128 sanal çekirdek içeren bir havuz yapılandırması kullanabilir ve aynı yapılandırmaya sahip 3 iş eşzamanlı olarak çalıştırılabilir. Not defterleri daha küçük bir işlem yapılandırması kullanıyorsa, maksimum kullanım 384 SparkVcore sınırına ulaşana kadar eşzamanlı olarak çalıştırılabilir.

Not

İşlerin 24 saatlik bir kuyruk süre sonu süresi vardır ve bu süre sonunda iptal edilir ve kullanıcıların iş yürütme için bunları yeniden göndermesi gerekir.

Doku için Spark azaltma, isteğe bağlı iş tabanlı sınırları zorunlu kılmaz ve azaltma yalnızca satın alınan Doku kapasitesi SKU'su için izin verilen çekirdek sayısına bağlıdır. varsayılan olarak iş kabulü, işlerin minimum çekirdek gereksinimine göre kabul edildiği iyimser bir erişim denetimi olacaktır. İyimser iş kabulü İş Kabulü ve Yönetimi hakkında daha fazla bilgi edinin Çalışma alanı için varsayılan havuz (Başlangıç Havuzu) seçeneği belirlenmişse, aşağıdaki tabloda en yüksek eşzamanlılık iş sınırları listelenmektedir.

Yapı Kapasitesi SKU'su Başlangıç Havuzlarını Yapılandırma'ya göre varsayılan başlangıç havuzu yapılandırmaları hakkında daha fazla bilgi edinin.

İş düzeyinde ani artış

Yöneticiler Apache Spark havuzlarını kapasitenin tamamı için kullanılabilir seri artış faktörüne sahip maksimum Spark çekirdeğini kullanacak şekilde yapılandırabilir. Örneğin, çalışma alanı F64 Fabric kapasitesine bağlı olan bir çalışma alanı yöneticisi artık Spark havuzunu (Başlangıç havuzu veya Özel havuz) 384 Spark sanal çekirdeğine yapılandırabilir; burada Başlangıç havuzlarının maksimum düğümleri 48 olarak ayarlanabilir veya yöneticiler en fazla 6 düğüme sahip bir XX Büyük düğüm boyutu havuzu ayarlayabilir.