Power BI Dataflow: Veri Hazırlamayı Raporlardan Ayırıp Ortaklaştırmak
Dataflow, veri hazırlama adımlarını Power BI Service içinde bir kez tanımlayıp birçok rapor ve modelde yeniden kullanmanızı sağlar. Tanım, işleyiş ve örnek.
Power BI Dataflow nedir?
Dataflow, veri temizleme ve dönüştürme adımlarını Power BI Service'te, bir çalışma alanının içinde tanımlayıp çalıştıran bulut tabanlı bir veri hazırlama katmanıdır. Adımlar, Power BI Desktop'taki Power Query ile aynı mantıkla ve aynı M diliyle yazılır; farkı, bu işin rapor dosyasının içinde değil bulutta, paylaşılabilir bir nesne olarak yapılmasıdır.
Sonuç olarak dataflow, tabloların (entity) hazır ve temizlenmiş halini saklar. Raporlar ve semantik modeller, ham kaynağa gitmek yerine bu hazır tablolara bağlanır.
Neden Power Query yerine dataflow kullanılır?
Bir Power BI Desktop dosyasında yazılan Power Query adımları yalnızca o dosyaya aittir. Aynı müşteri tablosunu çok sayıda rapor kullanıyorsa, temizleme mantığı hepsine ayrı ayrı kopyalanır; biri güncellendiğinde diğerleri geride kalır ve aynı müşteri için farklı raporlar farklı değer gösterir. Dataflow bu dağınıklığı tek bir yerde toplar.
Bir diğer fayda, kaynak sistemin yükünü azaltmaktır: veri tabanına her rapor kendi sorgusuyla gitmek yerine dataflow bir kez yenilenir, raporlar onun çıktısını okur. Veri hazırlayan kişiyle raporu tasarlayan kişi ayrı olduğunda da iş bölümü netleşir: biri dataflow'u, diğeri modeli ve görselleri yönetir.
Nasıl çalışır?
Akış şu sırayla ilerler:
- Çalışma alanında yeni bir dataflow oluşturulur ve bir veri kaynağı seçilir; şirket içi bir kaynaksa gateway üzerinden bağlanılır.
- Tarayıcıdaki Power Query düzenleyicisinde tablolar temizlenir, birleştirilir, türetilmiş alanlar eklenir.
- Dataflow kaydedilir ve bir yenileme zamanlaması tanımlanır.
- Yenileme çalıştığında sonuç tablolar Power BI'ın yönettiği depolamaya yazılır.
- Power BI Desktop'ta ya da Service'te yeni bir rapor kurulurken veri kaynağı olarak bu dataflow seçilir ve hazır tablolar içeri alınır.
Dataflow içindeki bir tablo başka bir tablonun kaynağı olabilir; böylece ham katman, temizlenmiş katman ve analize hazır katman adı verilen kademeli bir hazırlık zinciri kurulabilir. Hesaplanmış tablolar, artımlı yenileme gibi bazı gelişmiş özellikler lisans türüne bağlıdır ve güncel kapsam Microsoft belgelerinden kontrol edilmelidir.
Küçük bir örnek: ortak müşteri ve takvim tablosu
Örneğin bir şirkette satış, finans ve müşteri hizmetleri ekipleri aynı müşteri ve takvim tablolarına ihtiyaç duyuyor olsun. Müşteri tablosu CRM verisinden gelir; ünvan birleştirme, boş segmentleri "Tanımsız" olarak doldurma ve mükerrer kayıtları ayıklama gibi adımlar gerektirir. Takvim tablosunda ise mali yıl, çeyrek ve hafta etiketleri şirketin kendi kurallarına göre türetilir.
Bu adımlar bir dataflow'a yazılırsa her ekip kendi raporunu kurarken aynı temiz tablolara bağlanır. Mali yıl kuralı değiştiğinde dataflow'daki tek bir adım güncellenir ve bağlı tüm raporlar bir sonraki yenilemede yeni kuralla çalışır.
Dataflow, semantik model ve gateway ile farkı
Bu kavramlar sık karıştırılır, ancak katmanları farklıdır:
- Dataflow: Veri hazırlama katmanı. Tabloları temizler ve saklar, ilişki ya da ölçü tanımlamaz.
- Semantik model (eski adıyla dataset): İlişkilerin, ölçülerin ve iş mantığının tanımlandığı model katmanı. Raporlar bu modele bağlanır.
- Gateway: Şirket içi kaynaklara bulutun erişmesini sağlayan bağlantı yolu.
Kısaca dataflow veriyi hazırlar, semantik model anlamlandırır, rapor gösterir; gateway gerektiğinde şirket içi kaynağa erişim yolunu açar. Küçük ve tek kullanıcılı bir raporda dataflow şart değildir; çoklu rapor ve ekip kullanımı arttıkça faydası belirginleşir.
Sık yapılan hatalar
- Her şeyi dataflow'a taşımak: yalnızca tek bir rapora özel, bir kez kullanılan dönüşümleri bile dataflow'a koymak bakım yükünü artırır. Ortak kullanılan tablolar öne çıkarılmalıdır.
- Dataflow'ları sahipsiz bırakmak: bir kişinin hesabıyla kurulup o kişi ayrıldığında yenileme durur. Sahiplik ekibe ya da yönetim hesabına verilmelidir.
- Yenileme sıralamasını düşünmemek: raporun modeli, dataflow yenilenmeden önce yenilenirse eski veriyi okur. Dataflow yenilemesi modelden önce tamamlanacak şekilde zamanlanmalıdır.
- Tabloları adlandırma standardı olmadan çoğaltmak: aynı müşteri tablosunun birçok kopyası ortaya çıkar ve ortak kaynak fikri kaybolur.
Hangi ekip ve roller için uygundur?
Dataflow, birden çok ekibin aynı veriyi raporladığı kurumlarda iş zekası geliştiricileri ve veri hazırlama sorumluları için anlamlıdır. Mindset'in Power BI Veri Modelleme eğitiminde ETL tasarımı ve Power Query mimarisi modülü, hazırlama katmanının nasıl kurulacağını ele alır; Power BI ile Proje Raporlama eğitimindeki proje verisi dönüşümü ve paylaşım, yenileme ve yönetim modülleri ise yayımlanan raporların bakımını ele alır.
Bir kurumsal ekip için asıl soru, hangi tabloların herkesin ortak kullandığı "tek doğru" tablo olacağıdır; bu karar iş birimleriyle birlikte verildiğinde dataflow bir teknik araçtan öte bir yönetişim aracı olur.
İlgili Mindset programı
Power BI Veri Modelleme
Sık sorulan sorular
Dataflow için Power BI Desktop yeterli mi?
Dataflow'lar Power BI Service'te, tarayıcıdaki Power Query düzenleyicisinde oluşturulur; bunun için Desktop şart değildir. Desktop'ı ise dataflow tablolarını veri kaynağı olarak alıp rapor ve model kurmak için kullanırsınız. Hangi çalışma alanı türünün ve lisansın dataflow oluşturmaya izin verdiği güncel Microsoft belgelerinden kontrol edilmelidir.
Dataflow ile semantik model aynı şey mi?
Hayır. Dataflow, kaynaktan alınan veriyi temizleyip tablolar halinde hazırlayan paylaşılabilir bir veri hazırlama katmanıdır. Semantik model ise raporların bağlandığı, ilişkileri, ölçüleri ve hesaplamaları içeren modeldir. Dataflow tabloları bir semantik modelin veri kaynağı olarak kullanılabilir; yani dataflow modelin altındaki hazırlık işini üstlenir.
Dataflow'da hata olursa raporlar ne olur?
Dataflow yenilemesi başarısız olursa bağlı raporlar son başarılı yenilemedeki veriyle çalışmaya devam eder, ancak veri eski kalır. Bu yüzden yenileme hatalarının sorumlu kişiye bildirim olarak gitmesi ve kritik raporlar için yenileme geçmişinin düzenli izlenmesi gerekir.
Dataflow ile Power Query dönüşümleri aynı mı?
Dönüşüm dili aynıdır: Power Query'nin M dili kullanılır. Fark çalışma yeridir: Desktop'ta yazılan adımlar o rapor dosyasına aittir ve rapor yenilenirken çalışır, dataflow'da yazılan adımlar ise Service'te ayrı bir nesne olarak çalışır ve birçok rapor tarafından paylaşılır.
İlgili rehberler
İlgili eğitimler
Kategori: Veri Analitiği ve İş Zekası