Microsoft Fabric içinde veri işleme için üç güçlü araç var: Dataflow Gen2, Data Pipeline ve Notebook. Bu yazıda amacım her birinin ne işe yaradığını ve hangi senaryoda parladığını sade bir dille anlatmak.
Dataflow Gen2: Görsel ve kolay veri hazırlığı
Dataflow Gen2, Power Query’nin Fabric versiyonu gibi çalışıyor. Yüzlerce kaynaktan veriyi çekip, sürükle-bırak arayüzle dönüştürebiliyorsun. Kod yazmayı sevmeyen ya da hızlı bir ön analiz yapmak isteyen ekipler için biçilmiş kaftan.
Üstelik Copilot entegrasyonu ile artık doğal dilde “sadece Avrupa müşterilerini getir” diyerek veri hazırlayabiliyorsun. Performans tarafında Spark motoru sayesinde büyük veri kümelerinde de gayet akıcı.
Data Pipeline: Süreçlerin yöneticisi
Data Pipeline, Fabric’in orkestrasyon aracı. Farklı kaynaklardan veri taşımak, bunları sırayla çalıştırmak, hata durumlarını yönetmek gibi işler için kullanılıyor.
Biraz low-code, biraz da script dostu bir yapısı var. Yani hem sürükle bırak sevenler hem de JSON veya kodla müdahale etmek isteyenler burada buluşabiliyor.
Genellikle Dataflow veya Notebook’ları belli bir sırada tetiklemek için kullanılır.
Notebook: Kodla veri işlemek isteyenlere
Notebook, veri mühendislerinin ve veri bilimcilerinin en esnek aracı. Spark temelli altyapısı sayesinde büyük veriyle çalışmak ya da gelişmiş dönüşümler yapmak için ideal.
Python, SQL, Scala ya da R kullanabiliyorsun. Data wrangling, ML model hazırlama veya karmaşık join işlemleri gibi konularda diğer araçlara göre daha fazla kontrol imkânı sunuyor.
Ancak biraz daha teknik bilgi gerektiriyor. Kod yazmakta rahatsan, burada sınırın neredeyse yok.
Hangi aracı ne zaman kullanmalı?
Bu üçlü aslında aynı zincirin farklı halkaları. Basit veri temizliği için Dataflow Gen2, iş akışlarını yönetmek için Pipeline, karmaşık dönüşümler veya modellemeler içinse Notebook tercih edilir. Tek bir “doğru” yok; burada seçtiğin senaryo neyse o karar verici olur.
| Özellik | Dataflow Gen2 | Data Pipeline | Notebook |
|---|---|---|---|
| Kod Gereksinimi | Low-Code/No-Code; görsel, Power Query tabanlı | Low-Code ve kod tabanlı aktiviteler mümkün | Kod gerektirir (Python, Spark, Scala) |
| Veri Dönüşüm Yeteneği | Hazır dönüşüm, cleansing, enrichment, denormalizasyon | Karmaşık ETL; çok adımlı iş akışı; conditional aktiviteler | Her düzeyde; custom algoritma, ML, ileri analitik |
| Otomasyon/Orkestrasyon | Kısıtlı (genellikle kaynak-hedef, temel schedule) | Zengin orkestrasyon; zamanlayıcı, error handling, tetikleyici | Pipeline içine entegre edilebilir, kodla otomasyon |
| Performans | Spark motoru ile paralel toplu işlem | Büyük veri hareketi, geniş hata toleransı | Büyük veri işleme, ileri seviye istatistik/makine öğrenmesi |
| Hedef/Kaynak | Lakehouse, warehouse, geniş connector desteği | Çoklu kaynak/hedef (dosya, API, veri tabanı vs.) | Lakehouse, Parquet, Delta, dış veri kaynakları |
| Kullanım Amacı | Veri hazırlama, cleansing, analitik öncesi setup | Veri taşıma, workflow yönetimi, otomasyon | Data exploration, advanced transformation, ML & analiz |
| İzleme ve Hata Yönetimi | Basit; lineage ve veri akış izleme | Detaylı; adım-adım hata yönetimi ve alerting | Kod bazında manuel izleme ve logging |
Önemli
Dataflow Gen2, Data Pipeline ve Notebook birbirinden bağımsız araçlar değil; aynı çözümün farklı parçaları gibi birlikte çalışıyor. En iyi sonuça, bu araçların sırasıyla devreye girdiği uçtan uca bir veri akışında ulaşılıyor aslında.
Genelde Data lakehouse’lar için kullanılan ELT yönteminde, Pipeline, sürecin omurgasını oluşturuyor; çok adımlı iş akışlarını zamanlama, hata yönetimi, yeniden deneme gibi mekanizmalarla orkestre ediyor. Bu noktada Dataflow Gen2’ler, kopyalama aktiviteleri ile farklı veri kaynaklarından alınan veri bronze layer’a yazılıyor. Ardından Bronze alana alınmış veriler Notebook vasıtasıyla Silver ve Gold’a taşınıyor.