Azure Data Factory Pivot — Unpivot İşlemleri

Ayşegül Yiğit
BilgeAdam Teknoloji
4 min readMar 28, 2023

Günümüz veri odaklı dünyasında etkili veri yönetimi ve işleme işletmelerin bilinçli kararlar vermelerine olanak tanır. Azure Data Factory, veri entegrasyonu ve yönetimi için bulut tabanlı bir platform sağlar.

Bu seride Abdullah Kise’nin eğitim verdiği “DP-203T00: Data Engineering on Microsoft Azure” başlıklı kurs içeriğini belirli konular nezdinde takip edeceğiz. Ayrıca Abdullah Kise hocama aktarmış olduğu değerli bilgilerinden dolayı teşekkür ederim.

Bu makalede, Azure Data Factory’de pivot ve unpivot işlemleri kavramlarına ve Azure Data Factory Studio’da veri akışlarını kullanarak bu işlemlerin nasıl yapılabileceğine odaklanacağız.

İlk olarak, nüfus verilerini Azure Data Factory’ye yükleyecek, daha sonra verilere unpivot işlemi yapacak ve nüfus farkını ve yeni kolonlar türetmek için agregate ve filtre fonksiyonlarını kullanacağız. Son olarak, pipeline’ı yayınlayıp çalıştırarak sonuçları görme fırsatı bulacağız.

Veri işleme becerilerinizi bir sonraki seviyeye taşımaya hazır olun!

Diske Dosya Yükleme

Öncelikle, Azure Data Studio platformunda nüfus dosyasının içine verimizi yüklüyoruz.

Veri seti

Verilerimizi ETL işlemi ile unpivot işlemine tabi tutacağız.

Azure Data Factory Studio

İlk olarak, veri setimizi Azure Data Factory Studio üzerinde hazırlayacağız. Yeni bir data flow oluşturduktan sonra, “Add Source” seçeneği ile kaynak verilerimizi yükleyebiliriz.

Add Source seçeneği ile birden çok task ekleyebiliriz.

Veri Seti Tanımlama

Nüfus veri setininin yolunu ve bilgilerini tanımlıyoruz.

Verilerimiz yüklendi.

Data Flow seviyesinde verilerin önizlemesini görebilmek için ekranın sol yukarısında bulunan data flow debug modunu açmamız gerekiyor.

“Import Projection” seçeneği ile verilerin veri tiplerini tanımlayabiliriz.

Unpivot İşlemi

Verilerimiz yıllara göre gruplandıkları için, kaynağın yanındaki “+” işaretine tıklayarak unpivot taskı ekleyebiliriz.

Unpivot Ayarları

Ungroup by

Task ayarlarında, “Ungroup by” seçeneği ile illere göre gruplama yapabiliriz ve “Unpivot Key” seçeneği ile kolonlardaki değerleri tanımlayabiliriz.

Unpivot key

Kolonlardaki değerleri tanımlamamız gerekiyor çünkü Unpivot sürecinde, nüfus verilerimizi satırlara çekeceğiz.

Unpivot Columns

İçerideki değerleri de nüfus olarak tanımladık.

Aggregate Task

Verileri analiz etmek için, “Aggregate” taskı ekleyebiliriz.

Burada, gruplanacak alanın “il” olduğunu belirtmeli ve nüfus farkını ve ortalama nüfusu hesaplamak için gerekli fonksiyonları tanımlayabiliriz.

Nüfus farkını ve ortalama nüfusu hesapladığımız alanların fonksiyonunu Expression alanına tanımlıyoruz.

Filter ve Select İşlemi

Verileri filtrelemek için “Filter” taskı ekleyebiliriz.

Örneğin, sadece Istanbul, Ankara ve İzmir illerinin verilerini görüntülemek isteyebiliriz.

Derived Column

Son olarak, “Derived Column” ile şehir adında yeni bir kolon türetebiliriz.

Select

Son olarak “Select” taskı ile bizim için gerekli kolonları seçebiliriz.

Sink

Hedef olarak Sink tanımladık.

Pipeline Oluşturma ve Çalıştırma

Son olarak, oluşturduğumuz data flowu “Pipeline” alanına sürükleyip bırakarak pipeline oluşturabiliriz.

Pipeline Publish

“Publish” seçeneği ile yayınlayabiliriz.

Pipeline Çalıştırma

Pipeline çalıştırma işlemi yaparak, verilerimizi istediğimiz formatta analiz edebiliriz.

Veri işleme işlemlerinin son adımı olarak, oluşturduğumuz pipeline’ı çalıştırma işlemi gerçekleştirildi. Pipeline’ın publish edilmesi ve sonrasında çalıştırılması ile birlikte belirlenen kaynak verilerinin istenen hedefe gönderilmesi ve istenilen şekilde işlenmesi sağlandı. Bu işlemlerin sonunda, İstanbul, Ankara ve İzmir illerinin nüfus farkı ve ortalama nüfusu gibi verilerin hesaplanması ve özelleştirilmiş bir veri seti olarak depolanması mümkün oldu.

Azure Data Factory ile etkili bir veri yönetimi yapabilmek ve işlemlerinize hız kazandırmak için pivot, unpivot gibi fonksiyonların nasıl kullanılacağını öğrendik.

--

--