Tüm Ürünler
Search
Belge Merkezi

Realtime Compute for Apache Flink:İş kaynaklarını yapılandırma

Son Güncelleme:Oct 04, 2026

Bir iş başlamadan önce kaynaklarını yapılandırabilir veya iş çalışırken bu kaynakları değiştirebilirsiniz. Bu konuda, iş kaynaklarının nasıl yapılandırılacağı ve her mod için geçerli parametreler açıklanmaktadır.

Dikkat Edilecek Hususlar

Kaynakları yapılandırdıktan sonra değişikliklerin etkili olması için işi yeniden başlatmanız gerekir.

Yordam

  1. Kaynak yapılandırma sayfasına gidin.

    1. Realtime Compute for Apache Flink konsolu üzerinden oturum açın.

    2. Hedef çalışma alanının Actions sütununda Console seçeneğine tıklayın.

    3. O&M > Deployments sayfasında hedef işin adına tıklayın.

    4. Configuration sekmesinde, Resources bölümünün sağ tarafındaki Edit seçeneğine tıklayın.

  2. İş kaynak bilgilerini değiştirin.

    Kaynak modu

    Açıklama

    Ayrıntılar

    Basic

    Temel modda, her TaskManager için toplam kaynakları (CPU ve toplam JVM belleği) belirtirsiniz. Sistem daha sonra bu kaynakları taskmanager.numberOfTaskSlots ayarına göre tüm yuvalara eşit şekilde dağıtır. Bu mod, çoğu basit iş için yeterlidir.

    Temel mod (kaba taneli)

    Expert

    Uzman modda, her Slot Paylaşım Grubu (SSG) için kaynakları yapılandırırsınız. Flink daha sonra her yuva için gereken teknik özellikleri hesaplar ve kaynak havuzundan eşleşen TaskManager'ları ve yuvaları dinamik olarak ister. Kaba taneli tahsisin düşük kaynak kullanımına neden olabileceği karmaşık işlerde, her operatörü ince ayarlamak için ince taneli kaynak kontrolünü kullanabilirsiniz. Bu yaklaşım, kaynak kullanımını iyileştirir ve aktarım hızı gereksinimlerinin karşılanmasına yardımcı olur.

    Not

    Uzman mod yalnızca SQL işleri için desteklenir.

    Uzman mod (ince taneli)

    TaskManager, JobManager, Task ve yuva gibi kavramlar hakkında daha fazla bilgi için Apache Flink Architecture belgelerine bakın.

  3. Save seçeneğine tıklayın.

  4. İşi yeniden başlatın.

Temel mod (kaba taneli)


Parametre


Açıklama


Paralellik


İşin genel paralelliği.


Job Manager CPU


Kararlı çalışma için bir JobManager en az 0,5 çekirdek ve 2 GiB bellek gerektirir. Önerilen değer 1 çekirdek ve 4 GiB'dir. Maksimum değer 16 çekirdektir.


JobManager Belleği


Değer 2 ila 64 GiB arasında değişir.


Task Manager CPU


Kararlı çalışma için bir TaskManager en az 0,5 çekirdek ve 2 GiB bellek gerektirir. Önerilen değer 1 çekirdek ve 4 GiB'dir. Maksimum değer 16 çekirdektir.


TaskManager Belleği


Değer 2 ila 64 GiB arasında değişir.


TaskManager Slots


Her TaskManager için yuva sayısını belirtin.

TaskManager JVM Ek Yükü

Temel modda, TaskManager Belleği ayarlandığında sistem otomatik olarak bir kısmını JVM Ek Yükü olarak ayırır. Varsayılan olarak JVM Ek Yükü, toplam TaskManager belleğinin %10'unu oluşturur. Bu oran taskmanager.memory.jvm-overhead.fraction parametresi tarafından kontrol edilir (varsayılan: 0.1). Bu tahsisi ayarlamak için Running Parameters Configuration altındaki Other Configurations alanında taskmanager.memory.jvm-overhead.fraction değerini ayarlayın.

Not

Bir TaskManager işlemi için bildirilen Resident Set Size (RSS), Sayfa Önbelleğini (Page Cache) içermez. TaskManager ve işletim sistemi bellek için yarıştığında yetersiz bellek (OOM) hataları oluşabilir. İşletim Sistemi Sayfa Önbelleği kullanımını karşılamak için planlanan TaskManager belleğinin üzerine en az 400 MB ek bellek ayırın.

Önemli

JobManager belleği önerileri ve OOM sorun giderme adımları:

  • Önerilen minimum yapılandırma — Kararlı çalışmayı sağlamak için JobManager'a en az 0,5 çekirdek ve 2 GiB bellek yapılandırın. Üretim iş yükleri için 1 çekirdek ve 4 GiB önerilir.

  • OOM risk eşiği — JobManager bellek kullanımı sürekli olarak yaklaşık %80 seviyesinde kalıyorsa iş, OOM hatası riski altındadır. Bu riski azaltmak için ayrılan belleği artırın.

  • Paimon senkronizasyon senaryosu (Direct Buffer Memory OOM) — İşiniz büyük miktarda veriyi Paimon'a senkronize ediyor ve JobManager Direct Buffer Memory OOM hatası alıyorsanız, jobmanager.memory.off-heap.size değerini varsayılan 128 MB'tan 512 MB veya daha fazlasına çıkarın. Bu parametreyi Running Parameters Configuration altındaki Other Configurations alanında ayarlayın.

Kaynak gereksinimlerini hesaplamak için aşağıdaki formülleri kullanabilirsiniz:

  • CU Sayısı = MAKS(JobManager ve TaskManager'lar için Toplam CPU, JobManager ve TaskManager'lar için Toplam Bellek / 4)

  • Gerçek TaskManager sayısı = tavan(Paralellik / TaskManager Başına Yuva)

  • TaskManager başına gerçek yuva sayısı = Paralellik / Gerçek TaskManager sayısı

Not
  • Bölme sonuçlarını en yakın tam sayıya yukarı yuvarlayın.

  • Kaynak yapılandırmaları varsayılan maksimum sınırları aşamaz. Bu sınırları artırmak için destek talebi oluşturun.

  • Ayrıca, işin Configuration sekmesindeki Parameters bölümü içindeki Other Configuration alanında numberOfTaskSlots parametresini ayarlayabilirsiniz. Bu ayar, TaskManager Slots alanıyla aynı etkiye sahiptir ancak önceliklidir.

Örneğin, paralelliği 12 ve TaskManager başına yuva sayısını 4 olarak ayarladığınızı varsayalım.

Bu örnekte Job Manager CPU 2 çekirdek, JobManager Belleği 4 GiB, Task Manager CPU 2 çekirdek ve TaskManager Belleği 4 GiB'dir.

Realtime Compute for Apache Flink konsolunda gerçek TaskManager sayısı 3'tür ve her TaskManager'ın 4 yuvası vardır.

Gerçek TaskManager sayısı ve TaskManager başına yuva sayısı aşağıdaki gibi hesaplanır:

  1. Gerçek TaskManager sayısı = tavan(Yapılandırılan paralellik / Yapılandırılan TaskManager başına yuva) = tavan(12 / 4) = 3.

  2. TaskManager başına gerçek yuva sayısı = Paralellik / Gerçek TaskManager sayısı = 12 / 3 = 4.

Uzman mod (ince taneli)

Not
  • Uzman mod yalnızca SQL işleri için desteklenir.

  • Bir iş dağıtıldıktan sonra SQL veya kaynak yapılandırmasını değiştirirseniz, işin düzgün başlamasını sağlamak için kaynak planı grafiğini yeniden getirmeniz gerekir.

Temel kaynakları yapılandırma


Parametre


Açıklama


Job Manager CPU


Kararlı çalışma için bir JobManager en az 0,5 çekirdek ve 2 GiB bellek gerektirir.


JobManager Belleği


Birim: GiB. Örneğin, 4 GiB. Minimum değer 2 GiB, maksimum değer 64 GiB'dir.


TaskManager Slots


Uygulanamaz.

Yuva kaynaklarını yapılandırma

  1. Expert alanında kaynak planı grafiğini getirmek için Get Plan Now seçeneğine tıklayın.

  2. Bir yuva kutusundaki Düzenle Edit simgesine tıklayın. Oluşturulan kaynak planı grafiği, her biri VERTEX operatör bilgileri ve bir PARALLELISM değeri içeren birden çok slot kutusu görüntüler.

  3. Yuva yapılandırmasını değiştirin. İletişim kutusunda CPU, Heap Memory, Off-Heap Memory ve parallelism parametrelerini yapılandırabilirsiniz.

    Burada ayarladığınız paralellik, bu Slot Paylaşım Grubu içindeki tüm operatörlere uygulanır. Yapılandırmayı kaydettikten sonra sistem otomatik olarak:

    • Bu Slot Paylaşım Grubundaki tüm operatörler için aynı paralelliği ayarlar.

    • İşin hesaplama mantığına göre durum arka ucu, Python ve operatörler için gereken belleği ayırır. Bu tahsis otomatiktir.

    • Not
      • Bir Source düğümü için bölme sayısıyla orantılı bir paralellik ayarlamanız önerilir. Diğer bir deyişle, paralellik bölme sayısının bir böleni olmalıdır. Örneğin, bir Kafka konusunun 16 bölmesi varsa veri eğriliğini önlemek için paralelliği 16, 8 veya 4 olarak ayarlayın.

      • Bir Source düğümünün paralelliğini çok düşük ayarlamak bir darboğaza neden olabilir çünkü tek bir Source çok fazla veri okuyarak iş aktarım hızını düşürebilir.

      • Diğer düğümler için veri trafiğine göre paralelliği ayarlayın ve daha fazla trafiği olan düğümlere daha yüksek paralellik atayın.

    Not

    Uzman modda, yuva yapılandırma iletişim kutusu manuel yapılandırma için CPU, Heap Memory ve Off-Heap Memory seçeneklerini sunar. JVM Ek Yükü, ağ arabellekleri ve çerçeve belleği dahil diğer bellek bileşenleri, varsayılan oranlarında sistem tarafından otomatik olarak ayrılır. Bu bileşenler, TaskManager başladığında önceden ayrılır ve iş yürütme sırasında dinamik olarak ayarlanmaz.

    Bu otomatik olarak ayrılan bileşenlerden kaynaklanan yetersiz bellek hatalarıyla karşılaşırsanız Running Parameters Configuration altındaki Other Configurations alanında aşağıdaki parametreleri yapılandırın:

    • taskmanager.memory.jvm-overhead.fraction: Toplam TaskManager belleğinin bir kesri olarak JVM Ek Yükü boyutu. Varsayılan: 0.1 (%10).

    • taskmanager.memory.jvm-overhead.max: JVM Ek Yükü için maksimum boyut.

    • taskmanager.memory.jvm-overhead.min: JVM Ek Yükü için minimum boyut.

  4. OK seçeneğine tıklayın.

Operatör kaynaklarını yapılandırma

Varsayılan olarak tüm operatörler tek bir Slot Paylaşım Grubunu paylaşır; bu da kaynaklarını ayrı ayrı yapılandırmanızı engeller. Belirli bir operatör için kaynakları yapılandırmak üzere Multiple SSG özelliğini etkinleştirin. Bu özellik, her operatöre bağımsız bir yuva atayarak kaynaklarını o yuvada yapılandırmanıza olanak tanır.

  1. Configuration sekmesinde, Resources bölümündeki Edit seçeneğine tıklayın ve Mode değerini Expert olarak ayarlayın.

  2. (İsteğe bağlı) Kaynak planı görüntülenmiyorsa Get Plan Now seçeneğine tıklayın.

    Varsayılan olarak, oluşturulan kaynak planı grafiği tüm operatörleri tek bir slot kutusu içinde gösterir.

  3. Multiple SSG anahtarını açın ve ardından Re-fetch seçeneğine tıklayın.

    Bu işlem, paylaşım grubundaki operatörleri bireysel yuvalara böler.

  4. Hedef operatöre karşılık gelen yuva kutusundaki Düzenle Edit simgesine tıklayın ve ardından operatör kaynaklarını değiştirin.

    Modify slot iletişim kutusunda CPU, Heap Memory, Off-Heap Memory ve parallelism parametrelerini yapılandırabilirsiniz.

  5. OK seçeneğine tıklayın.

Not

Tipik senaryo: Sink operatöründe yüksek Busy ölçümü upstream geri baskıya neden olur

İş topolojisinde sink operatörünün Busy ölçümü yüksek kalıyorsa ve upstream operatörlerde geri baskı görülüyorsa yazma darboğazı iş gecikme süresini artırır. Önceki adımları izleyerek Mode değerini Expert olarak ayarlayın, Multiple SSG özelliğini açın ve yalnızca sink operatörüne karşılık gelen yuvanın CPU ve belleğini artırın. Örneğin, yazmaları hızlandırmak ve geri baskıyı azaltmak için CPU'yu 0,5 çekirdekten 2 çekirdeğe ve belleği 2 GiB'den 4 GiB'ye çıkarın. İnce ayardan sonra O&M > Deployments sayfasına gidin ve sink operatörünün Busy ölçümünün ve upstream geri baskının iyileşip iyileşmediğini kontrol edin. Bu örnekteki değerler yalnızca referans amaçlıdır ve işiniz için aynı sonucu garanti etmez.

Operatör paralelliği, zincirleme stratejisi ve Durum Son Kullanma Süresi Ayarları

Not

State Expiration Time Settings yapılandırması yalnızca Ververica Runtime (VVR) 8.0.7 ve sonraki sürümlerde desteklenir.

Tek tek operatörler için paralellik, zincirleme stratejisi ve State Expiration Time Settings yapılandırabilirsiniz.

  1. Hedef VERTEX kutusundaki Genişlet image simgesine tıklayın.

    Genişletmeden sonra VERTEX kutusu her operatör düğümünü, PARALLELISM değerini ve her operatörün yanındaki bir Düzenle simgesini görüntüler.

    Not

    Bir VERTEX üzerindeki Düzenle Edit simgesine tıklayarak o VERTEX içindeki tüm operatörlerin paralelliğini toplu olarak ayarlayabilirsiniz.

  2. Operatör için Düzenle image simgesine tıklayın.

  3. Operatör kaynaklarını yapılandırın.

    Aşağıdaki tabloda parametreler açıklanmaktadır.

    Parametre

    Açıklama

    Paralellik

    Operatör için paralellik.

    Zincirleme stratejisi

    Zincirleme, birden çok operatörü tek bir görevde birleştirerek veri aktarımını ve serileştirme ek yükünü azaltıp performansı iyileştirir. Ancak, yürütme akışı üzerinde daha hassas kontrol sağlamak için bir zinciri kırabilirsiniz. Aşağıdaki stratejiler kullanılabilir:

    • ALWAYS (Varsayılan): Operatör her zaman upstream ve downstream operatörlerle zincirlenebilir.

    • HEAD: Geçerli operatör bir zincirin başı olarak hareket eder. Upstream operatörlerle zincirlenmez ancak downstream operatörlerle zincirlenmeye devam eder.

    • NEVER: Geçerli operatör herhangi bir upstream veya downstream operatörle zincirlenmez.

    State Expiration Time Settings

    Son kullanma süresini saniye, dakika, saat veya gün cinsinden ayarlayabilirsiniz. Varsayılan olarak operatör, işin durum son kullanma süresini devralır; bu süre varsayılan olarak 1,5 gündür. İş düzeyindeki son kullanma süresini yapılandırmak için bkz. Çalışma parametrelerini yapılandırma.

    Not
    • Bu özellik yalnızca Ververica Runtime (VVR) 8.0.7 ve sonraki sürümlerde desteklenir.

    • TTL yapılandırması yalnızca durum bilgisi tutan operatörler için desteklenir.

    • Durum sona erme, yaklaşık bir temizleme mekanizmasıdır. Sistem, TTL süresi dolduktan sonra süresi dolmuş durumun hemen kaldırılacağını garanti etmez. Gerçek temizleme süresi, arka plandaki duruma erişim kalıplarına ve temizleme ilkelerine bağlıdır.

  4. OK seçeneğine tıklayın.

SSS

Paralelliği ayarlamak aynı sayıda CU tüketmek anlamına mı gelir?

Hayır. Paralellik, bir işte çalışan eşzamanlı görevlerin sayısını ifade eder. CU (Compute Unit), Realtime Compute for Apache Flink tarafından kullanılan faturalandırma ve kaynak birimidir. Bunlar 1:1 ilişki içinde değildir.

Toplam CU tüketimi aşağıdaki formülle hesaplanır:

Toplam CU tüketimi = Paralellik × Görev başına CU

Her görevin tükettiği CU, iş için yapılandırılan yuva başına kaynak teknik özelliklerine göre belirlenir. Paralelliği artırmak toplam CU tüketimini artırır ancak artış, görev başına CU teknik özelliklerine orantılıdır; basit bir 1:1 oranı değildir.

SQL işlerinde SET 'parallelism.default' neden etkili olmuyor?

SQL iş deyimlerinde doğrudan SET 'parallelism.default' = 'N'; kullanımı Realtime Compute for Apache Flink'te etkili değildir. Paralelliği yapılandırmak için aşağıdaki yöntemlerden birini kullanın:

  1. İlgili SQL deyiminin WITH yan tümcesinde paralelliği ayarlayın.

  2. O&M > Deployments sayfasındaki kaynak yapılandırma düzenleme arayüzünde paralelliği değiştirin.

Print Sink veya Join operatörü yetersiz kaynağa veya düşük performansa neden olduğunda ne yapmalıyım?

Uygun eylem belirli semptoma bağlıdır:

  • Print Sink, TaskManager kaynak kıtlığına neden oluyor — Bu sorun yalnızca parametre ayarıyla çözülemez. Gerçek veri hacmine göre kaynak gereksinimlerinizi değerlendirin, kaynak tablo alan türlerinin doğru tanımlandığından emin olun (örneğin, uygun olduğunda STRING yerine BIGINT kullanın) ve Print Sink'in hata ayıklama ek yükünü desteklemek için yeterli TaskManager kaynağı ayırın.

  • Düşük bellek kullanımına rağmen Join performansı kötü — CU sayısını artırın. Ancak temel neden veri eğriliğiyse daha fazla kaynak eklemek sorunu çözmeyebilir. Önce veri eğriliği sorununu çözün, ardından ek kaynağa ihtiyaç olup olmadığını değerlendirin.

  • İş sık sık yeniden başlıyor ve uçtan uca gecikme süresi yüksek — İş, durumsuz bir yeniden başlatmanın ardından tam durum senkronizasyon aşamasındaysa yuva sayısını 1'e ayarlamayı, paralelliği ayrı olarak yapılandırmayı ve 1 çekirdek 4 GiB TaskManager teknik özellikleriyle orta düzeyde eşzamanlılık (örneğin, 10) kullanarak performansı test edip optimize etmeyi deneyin.

İlgili belgeler