Makale Özeti

Is zekasi projeleri, kurumlarin veriler üzerinde degisik analiz ve algoritmalar uygulayarak stratejik kararlar almasini amaçlamaktadir. Kurumlarin aldigi kararlar da, dogru sonuçlara ulasabilmesi için verinin çesitli temizleme,transformasyon gibi islemlere tabii tutulmasi gerekmektedir.Bu nokta da SQL Server 2008, SSIS’de yeni bir özellige sahiptir: Veri Profilleyicisi(Data Profiler). Veri Profelleyicisi, belirli bir tabloda, her sütunun ayri ayri degerlerini ve veri degerlerinin dagilimini anlamamizi saglamaktadir.Söz konusu özellik, hem ETL hem de SSAS’tan küp alimlarinda, veri depolamak için son derece yararlidir.

Makale

Is zekasi projeleri, kurumlarin veriler üzerinde degisik analiz ve algoritmalar uygulayarak stratejik kararlar almasini amaçlamaktadir. Kurumlarin aldigi kararlar da, dogru sonuçlara ulasabilmesi için verinin çesitli temizleme,transformasyon gibi islemlere tabii tutulmasi gerekmektedir.Bu nokta da SQL Server 2008, SSIS’de yeni bir özellige sahiptir: Veri Profilleyicisi(Data Profiler). Veri Profelleyicisi, belirli bir tabloda, her sütunun ayri ayri degerlerini ve veri degerlerinin dagilimini anlamamizi saglamaktadir.Söz konusu özellik, hem ETL hem de SSAS’tan küp alimlarinda, veri depolamak için son derece yararlidir.
Bir ETL paketi olustururken zaman zaman bir sütundaki degerleri bilme ihtiyaci duyariz. Örnegin, bir sütunun  bos mu (bos veya geçersiz)  yoksa geçerli veriler mi içerdigini  anlamak ya da veri kalitesi gereksinimiyle ilgili olan bazi degerleri , örnekleri çikarmak veya eklemek konusunda karar vermek isteriz..Bu noktalarda ve bir ölçü tablosundan muhtemel hiyerarsileri tanimlamada data profiling  bize yardimci olmaktadir.
Ayrica data profiling performans eniyileme yaparken de bize yardimci olmaktadir. Örnegin, bir durum tablosunu veya bir küpü bölümlere ayirmakta kullanilabililir. Veri dagilimini anlayip, belirli bir sütun temelinde benzer ölçüye sahip gruplar olusturmamizi  da saglamaktadir.Kisacasi bu görev bize verileri veritabanlariniza eklemeden önce veri kalitesini inceleme olanagi tanimaktadir.
Simdi de “nasil” oldugunu anlamaya çalisalim.
BIDS’i açin, SSIS projesi olusturun, Data Profiling Task’in (Veri Profilleme Görevi) tasarim yüzeyinin üstüne sürükleyin. Düzenlemek için çift tiklayin. Hedef Dosyanin ismini yazin.
 
Sekil 1. SSIS Data Profiling Task
Data Profiling Task’in üzerine çift tiklayarak  karsiniza gelen pencerede sol tarafta bulunan General (Genel) sekmesini seçin.Bu ekranda baglantinin timeout süresi,verilerin kaydedilme tipi,sonuçlarin nereye kaydedilecegi gibi ayarlamalari yaparak “Quik Profile”  alanina tiklayin. Baglanti detaylarini saglayin, Sekil 2’de gösterildigi üzere alt panodaki Tablo veya Sütun alanindan [dbo].[fact_sales] seçin.Tüm profil çesitleri incelenecegi için compute altindaki alanlarin hepsini seçin.
 
Sekil 2. Single Table Quick Profile Form
 
Çikti dosyasini görüntülemek için Data Profile Viewer (Veri Profili Görüntüleyicisi) kullanmak zorundayiz. C:\Program Files\Microsoft SQL Server\100\DTS\Binn’e gidin  ( SQL Server klasörünüze ayarlayin) ve DataProfileViewer.exe.’yi çalistirin, Aç dügmesini tiklayin ve daha önce Data Profiling task (Veri Profilleme Görevi) tarafindan olusturulan çikti dosyasini açin. Asagidaki sekil 3’de oldugu gibi görüntülenecektir.
Öyleyse simdi SSIS 2008 ‘de Veri Profilleyicisinin tam olarak ne ise yaradigini görelim. Öncelikle çiktiya bakalim:
Sekil 3. SSIS 2008 Veri Profilleyicisi Çiktisi
Sol taraftaki pencere, her tablo için yönettigimiz profillerle birlikte analiz ettigimiz tablolari göstermektedir. Sag taraftaki pencere ise sol taraftaki pencereden seçtigimiz profilin ayrintilarini gösterir. Örnegin, 'Column Value Distribution' (sütun deger dagilimi) profili için, sag üstteki pano, sütunlarin listesini ve her sütundaki ayri ayri verileri gösterir. Eger bu panodaki herhangi bir sütuna tiklarsak, sag alt panel veri degerinin dagilimini görüntüler. Örnegin, deger;söz konusu degeri içeren satirlarin sayisi ve toplam satirlarin oranidir.Sekil 3’de, fact_sales tablosunda product_key sütunu üzerinde veri degerlerinin dagilimi gösterilmektedir.
Veri degeri dagilimi analizi disinda, SSIS 2008 Veri Profilleyicisi asagidakileri de analiz edebilmektedir:
1.     Geçersizlerin sayisi
Sekil 4. SSIS 2008 Veri Profilleyicisi Column Null Ratio Profiles
 
2.     Her sütundaki veri degerlerinin ortalama ve standart sapmasi. Standart sapma, degerin ortalamadan ne kadar uzak oldugunu gösterir. 
Sekil 5. SSIS 2008 Veri Profilleyicisi Column Statistic Profiles
3.     Birincil anahtar için hangi sütunun (sütunlarin) iyi bir aday oldugunu belirlemektedir. Bu özellik 1. Normal form kuralini kontrol etmek için yararlidir. Bu kural, her tabloda, her satiri tanimlayan bir birincil anahtar olmasi gerektigini ifade eder. 
Sekil 6.SSIS 2008 Veri Profilleyicisi Candidate Key Profile
 
4.     Bir sütunun tamamen veya kismen diger sütunlara bagli olup olmadigini kontrol etmek. Bu özellik, 2. Normal formun kontrol edilmesinde ve bir ölçekte mevcut olabilecek hiyerarsileri tanimlama da. 2. Normal formda, birincil anahtar sütun olmayan sütunlar, birincil anahtara bagli olmak zorundadir.
 
Sekil 7.SSIS 2008 Veri Profilleyicisi Functional Dependency Profile
 
5.     Bir sütunda mevcut olan degerlerin bir baska sütunda da mevcut olup olmadigini kontrol etmek. Veri depolamada, durum tablosunda olan fakat ölçü tablosunda bulunmayan ölçeksel anahtarlarin mevcut olup olmadigini belirlemeye yarar. ODS tasarimi (veya normal veritabanlari) için, 3. Formu belirlemede yarar saglar. Bu form, hiçbir sütunun geçisli olarak birincil anahtara bagli olmadigini ifade eder. Bir baska deyisle, muhtemel yabanci anahtar iliskilerini tanimlamada yararlidir. 
Sekil 8.SSIS 2008 Veri Profilleyicisi Functional Dependency Violations Profile
 
Yukarida görüldügü üzere veri profilleme bizlere Column Value Distribution Profiles’a (Sütun Deger Dagilim Profilleri) ek olarak Column Pattern Profiles (Sütun Sablon Profilleri), Column Statistics Profiles (Sütun Istatistik Profilleri), Functional Dependency Profiles (Islevsel Bagimlilik Profilleri), Candidate Key Profiles (Aday Anahtar Profiller), Column Null Ratio Profiles (Sütun Geçersiz Oran Profilleri) ve Inclusion Profiles (Ekleme Profilleri) gibi 7 analiz ögesi saglamaktadir. SQL Server 2008’deki Veri Profiling ( Veri profilleme) araci son derece basit ve kolayca kullanilabilmektedir.