SPARK PROGRAMLAMA - İLERİ EĞİTİMİ

Spark programlamada ustalaş

Dataset ve encoder, accumulator/broadcast değişkenler, özel partitioner, ileri pencere ve karmaşık tiplerle Spark programlamada ileri seviyeye geçin.

Spark programlamayı ileri tekniklerle derinleştiren ileri seviye eğitim: tip güvenli Dataset ve encoder, aggregateByKey/combineByKey ve özel partitioner ile ileri RDD, broadcast değişken ve accumulator, mapPartitions, nested array/map/struct ve higher-order f…

4 gün İleri Seviye Online / Yüz Yüze / Hibrit Sertifikalı

Eğitim Hakkında

Dataset/encoder, ileri RDD, paylaşımlı değişkenler ve karmaşık dönüşümler

Bu ileri seviye eğitim, Spark programlamayı ileri tekniklerle derinleştirir. Katılımcılar tip güvenli Dataset API'sini, encoder'ları ve case class şemalarını; ileri RDD işlemlerini (aggregateByKey, combineByKey, cogroup, özel partitioner) uygular. Paylaşımlı değişkenler (broadcast variable, accumulator), partition bazlı işlem (mapPartitions), karmaşık tiplerle (array, map, struct, nested) çalışma ve higher-order fonksiyonlar (transform, filter, aggregate) işlenir. İleri pencere fonksiyonları, pivot/unpivot, pandas UDF, ileri join desenleri ve iteratif algoritma tasarımı ele alınır. Eğitim, karmaşık bir veri dönüşümünün ileri tekniklerle verimli ve tip güvenli biçimde yazılmasıyla tamamlanır.

Süre ve Format

4 Gün. Her gün dört modül; Dataset ve ileri RDD'den paylaşımlı değişkenlere, karmaşık tiplere ve ileri desenlere ilerlenir.

Seviye

İleri Seviye — İleri Spark programlama teknikleri: Dataset/encoder, ileri RDD, paylaşımlı değişkenler, özel partitioner ve ileri DataFrame desenleri.

Öğrenme Metodu

Katılımcılar ileri API'leri ve desenleri gerçek veri üzerinde kod yazarak uygular, çözümleri tip güvenliği ve performans açısından karşılaştırır.

Neden Bu Eğitim?

🧬Tip Güvenliği

Dataset ve encoder ile tip güvenli, bakımı kolay kod yazarsınız.

🔧İleri RDD

aggregateByKey ve özel partitioner ile düşük seviye kontrol kazanırsınız.

🧩Karmaşık Veri

Nested tipler ve higher-order fonksiyonlarla karmaşık veriyi işlersiniz.

Anahtar Konular

spark ileri programlamaspark datasetaggregatebykeyözel partitionerbroadcast accumulatormappartitionshigher order fonksiyonlarnested veri sparkpandas udfileri pencere fonksiyonları
“İleri Spark programlama, karmaşık veriyi basit koda değil; doğru soyutlamaya indirgeyebilmektir.”

Ön Koşullar

Eğitimden verim almak için faydalı olacak bilgi ve ortam gereksinimleri

1
Spark Temeli

RDD ve DataFrame ile programlama deneyimi güçlü biçimde faydalıdır.

2
Programlama

Scala veya Python'da sağlam kod yazabilme beklenir.

3
SQL/Analitik

Pencere fonksiyonları ve join kavramlarına aşinalık faydalıdır.

4
Çalışma Ortamı

Spark kurulu bir ortam veya Databricks/Jupyter erişimi.

Eğitim İçeriği

Programın gün gün akışı aşağıdadır. Bir güne tıklayarak o günün modüllerini ve içeriklerini görebilirsiniz.

Günün hedefiKatılımcı, Dataset ve ileri RDD işlemlerini tip güvenli biçimde kullanabilir.
Modül 1
Dataset ve Encoder
  • Dataset'in tip güvenli yapısı
  • case class / bean ile şema
  • Encoder mekanizması
  • DataFrame ve Dataset dönüşümü
  • Typed dönüşümler (map, filter)
  • Tip güvenliğinin bakım avantajı
Modül 2
İleri Pair RDD
  • reduceByKey ve aggregateByKey farkı
  • combineByKey ile esnek toplama
  • foldByKey kullanımı
  • groupByKey'in maliyeti ve kaçınma
  • Anahtar bazlı toplama tasarımı
  • Pair RDD performansı
Modül 3
Birleştirme İşlemleri
  • join, cogroup ve fullOuterJoin (RDD)
  • subtractByKey ve çıkarma
  • Anahtar hizalama
  • cogroup ile çok kaynaklı birleştirme
  • RDD join maliyeti
  • DataFrame join'e göre kullanım
Modül 4
Özel Partitioner
  • HashPartitioner ve RangePartitioner
  • Özel partitioner yazımı
  • partitionBy ile uygulama
  • Partitioner'ın shuffle'a etkisi
  • Co-partitioning avantajı
  • Partitioner ile join optimizasyonu
Günün hedefiKatılımcı, paylaşımlı değişkenleri ve partition bazlı işlemleri verimli kullanabilir.
Modül 1
Broadcast Değişkenler
  • Broadcast variable kavramı
  • Küçük veri setinin dağıtımı
  • Lookup tablolarının broadcast'i
  • Broadcast ile zenginleştirme
  • Broadcast ömrü ve temizliği
  • Broadcast'ın shuffle'dan kaçınması
Modül 2
Accumulator
  • Accumulator ile dağıtık sayaç
  • Yerleşik ve özel accumulator
  • Metrik ve hata sayımı
  • Accumulator garantileri (at-least-once)
  • Action içinde güvenilir kullanım
  • Accumulator sınırları
Modül 3
mapPartitions
  • map ve mapPartitions farkı
  • Partition başına kaynak açma (bağlantı)
  • Toplu işleme avantajı
  • mapPartitionsWithIndex
  • Bellek dikkati
  • Dış sistem çağrısında verim
Modül 4
İteratif İşlemler
  • cache ile yinelemeli algoritma
  • checkpoint ile lineage kesme
  • Uzun lineage'ın riski
  • İteratif hesaplama tasarımı
  • Yakınsama kontrolü
  • İteratif işte performans
Günün hedefiKatılımcı, karmaşık ve iç içe veriyi higher-order fonksiyonlarla işleyebilir.
Modül 1
Karmaşık Tipler
  • array, map, struct oluşturma
  • İç içe (nested) şema
  • explode ve inline
  • struct alan erişimi ve güncelleme
  • Karmaşık tip G/Ç (JSON)
  • Nested veride performans
Modül 2
Higher-Order Fonksiyonlar
  • transform ile dizi dönüştürme
  • filter ve exists ile dizi filtreleme
  • aggregate ile dizi toplama
  • zip_with ile iki diziyi birleştirme
  • map_filter ve harita HOF'ları
  • HOF ile explode'dan kaçınma
Modül 3
İleri String ve Tarih
  • regexp_extract ve regexp_replace
  • split ve dizi oluşturma
  • Tarih/zaman fonksiyonları
  • Zaman dilimi işleme
  • format ve parse
  • Metin ayrıştırma desenleri
Modül 4
Pivot ve Yeniden Şekillendirme
  • pivot ile çapraz tablo
  • unpivot (stack) deseni
  • Geniş-uzun format dönüşümü
  • Çoklu agregasyonla pivot
  • Dinamik pivot kolonları
  • Şekillendirmenin performansı
Günün hedefiKatılımcı, ileri desenlerle karmaşık dönüşümleri verimli ve tip güvenli yazabilir.
Modül 1
İleri Join Desenleri
  • Broadcast join hint
  • Range join ve koşullu join
  • Self join desenleri
  • Anti/semi join kullanımı
  • Skew join yönetimi
  • Join sonucu boyut kontrolü
Modül 2
İleri Pencere
  • Çoklu pencere tanımı
  • rangeBetween ile zaman çerçevesi
  • Kümülatif ve hareketli metrik
  • İlk/son değer (first_value/last_value)
  • Pencere içinde koşullu agregasyon
  • Pencere performansı
Modül 3
pandas UDF ve Vektörleştirme
  • Scalar ve grouped pandas UDF
  • Arrow ile hızlı aktarım
  • applyInPandas kullanımı
  • UDF ile yerleşik fonksiyon dengesi
  • Vektörleştirmenin kazancı
  • pandas UDF hata ayıklama
Modül 4
Verimli Kod ve Teşhis
  • explain() ile plan kontrolü
  • Gereksiz shuffle/collect'ten kaçınma
  • Tip güvenli ve okunabilir kod
  • Karmaşık dönüşümün parçalanması
  • Performans ve okunabilirlik dengesi
  • Uçtan uca karmaşık dönüşümün tamamlanması

Eğitim Kazanımları

Program sonunda katılımcılar:

✅
Dataset

Tip güvenli Dataset ve encoder ile kod yazarsınız.

✅
İleri RDD

aggregateByKey/combineByKey ve özel partitioner kullanırsınız.

✅
Broadcast/Accumulator

Paylaşımlı değişkenlerle verimli ve ölçülebilir kod yazarsınız.

✅
mapPartitions

Partition bazlı işleme ile kaynak kullanımını optimize edersiniz.

✅
Karmaşık Tip

Nested array/map/struct veriyi higher-order fonksiyonlarla işlersiniz.

✅
Yeniden Şekil

pivot/unpivot ile veriyi dönüştürürsünüz.

✅
İleri Pencere

Çoklu ve çerçeveli pencere fonksiyonları yazarsınız.

✅
Verimli Kod

pandas UDF ve plan analiziyle karmaşık dönüşümü verimli yazarsınız.

Kimler İçin Uygundur?

  • Spark programlama temeli olan
  • ileri teknikler ile karmaşık dönüşümleri verimli yazmak isteyen veri mühendisleri ve geliştiriciler için uygundur

Sıkça Sorulan Sorular

Bu eğitim kimler için uygundur?
Spark programlama temeli olan ve ileri teknikler ile karmaşık dönüşümleri verimli yazmak isteyen veri mühendisleri ve geliştiriciler için uygundur.
Dataset'i ne zaman tercih etmeliyim?
Derleme zamanı tip güvenliği ve case class ile net şema isteniyorsa (özellikle Scala'da) Dataset tercih edilir; eğitim DataFrame ile dengeyi gösterir.
Özel partitioner ne işe yarar?
Verinin node'lara nasıl dağılacağını kontrol ederek co-partitioning ve join optimizasyonu sağlar, gereksiz shuffle'ı azaltır; eğitim yazımını ve kullanımını ele alır.
Higher-order fonksiyonlar neden önemli?
Dizi/harita gibi karmaşık tipleri explode ile satıra açmadan transform/filter/aggregate ile işlemeyi sağlar; bu, hem daha performanslı hem daha okunabilir koddur.
Eğitim sonunda sertifika veriliyor mu?
Katılım ve değerlendirme sonrası Digital Vizyon Akademi Katılım ve Başarı Sertifikası verilir.

Sertifikalandırma

Bu eğitim Digital Vizyon Akademi Başarı Sertifikası ile tamamlanır.

Eğitim başında “Ön Test”, bitiminde “Son Test” uygulanarak gelişim ölçümlenir. Değerlendirme formunu dolduran katılımcılar sertifikalarını alır. Sertifikanızın geçerliliğini Sertifika Sorgulama sayfasından doğrulayabilirsiniz.

Örnek Sertifika d Digital Vizyon AKADEMİ KATILIM SERTİFİKASI Bu sertifika [Katılımcı Adı Soyadı] adlı katılımcının aşağıdaki eğitim programını başarıyla tamamladığını belgeler. Spark Programlama - İleri Eğitimi Sertifika Kodu DV-2026XX00 Tarih 26.10.2026 Yetkili İmza DV AKADEMİ

Eğitim Bilgileri

Süre4 gün
Seviyeİleri Seviye
FormatOnline / Yüz Yüze / Hibrit
Sertifika✓ Var
Hemen Bilgi Al
İlgili Eğitimler

Bu Eğitimle Birlikte Tercih Edilenler

+90 (501) 369 40 14 WhatsApp [email protected] LinkedIn