Home / MAKALELER / Veri Ambarı / Data Warehouse Yazı Dizisi – 1

Data Warehouse Yazı Dizisi – 1

Merhabalar,

Veri ambarı nedir, niçin ihtiyaç duyulur, ihtiyaç duyulduğuna karar verildikten sonra nerden başlamalı, nasıl veri ambarı oluşturulur gibi temel soruları cevaplamaya yönelik bir yazı dizisi oluşturma niyetindeyim. Öncelikle bu temel soruları açıklamaya çalışacağım. Sonrasında veri ambarı oluştururken sıklıkla kullandığımız ssis task larından bahsetmeyi hedefliyorum. Rota bu şekilde ama sizlerin yönlendirmeleriyle de rüzgara yön verebiliriz.

Veri ambarı, dağıtık halde farklı sistemlerde bulunan, tutarsız, hatalı, duplicate haldeki verileri, raporlama ve analiz ihtiyaçlarını baz alarak, bunlara yönelik bir yapı haline getirerek (dimensional yapı) oluşturduğumuz merkezi bir sistemdir.

Peki DW ye neden ihtiyaç duyarız? Belli analiz ve raporlama ihtiyaçlarına mevcut sistemin cevap verememesi gibi problemlere data warehouse ile çözüm sunabilmekteyiz.

Bizleri DW oluşturmaya iten bu problemleri ve DW nin bunlara sunacağı çözümleri biraz daha ayrıntılandırmak gerekirse:

  • Verinin Farklı Sistemlerde Tutulması:

Çoğu sistemlerde veri Enterprise, File, Azure … gibi bir çok farklı sistemlerde tutulmakta. Örneğin müşteri bilgileriniz CRM sisteminizde tutulurken, satış verileriniz SQL Server da tutulabilir. Aynı anda bu iki sitemi raporlamak istediğinizde Primary-Foreign Key ilişkisi mantığında bu verileri birleştirmek hem kişi eforu açısından hem de zaman açısından kayıp oldukça fazla olacaktır.

Ya da müşteri verilerimiz bu iki farklı sistemlerde bulunabilir ama tutarsızlıkla karşılaşmak çok büyük olasılık. Örneğin; CRM de Yusuf Bogatepe olarak tutulan kullanıcınız, SQL Server de satış verilerinizde Y.Bogatepe olarak tutulabilir. Bu noktada bu iki kişi farklı kişiler olarak algılanıp analiz ve raporlarınızın yanlış sonuçlanmasına yol açacaktır. Bu şekilde farklı sistemlerde farklı şekilde tutulan yüzlerce müşterinizin olduğunu düşünürsek rapor ve analizleriniz tamamen yanlış çıkacaktır. Bu sonuçları baz alarak karar verdiğiniz şirket stratejinizin de sağlıklı olmayacağını düşündüğümüzde iç açıcı durumlarla karşılaşmayacağımız kesin.

dw1

 

  • Verinin Farklı Formatlarda Yanlış, Tutarsız, Yineli Tutulması

Veriler farklı sistemler farklı formatlarda tutulabildiği gibi, aynı sistem içerisinde de bu tutarsızlıklarla çok sıklıkla karşılaşabilmekteyiz.

Örneğin, internetten satış yaptığınızı düşünelim. Müşterileriniz mail adresleri ile kayıt olup, satın alma işlemini gerçekleştirebilmekte. Aynı kişi ikinci kez internet üzerinden satın alma işlemi gerçekleştirmek istediğini ve şifresini unuttuğunu düşünelim. Kişi, şifresini yenilemek yerine sahip olduğu farklı bir mail adresi ile tekrar üye girişi yapmakta. Sonuç olarak aynı kişi farklı kişiymiş gibi sistemimize kaydedilmiş oldu. Böyle onlarca müşterimiz olduğunu düşündüğümüzde sahip olduğumuz müşteri sayısı olduğundan fazla görüneceği gibi, bu müşterilere önümüzdeki 3 ayda hangi üründen ne kadar satarım gibi tahmin yapıp, emniyet stoğu tutmak istediğimizde, yanlış tahmin yapacağımız için bunun sonucunda yanlış emniyet stoğu tutacağız. Özellikle hacim olarak büyük yer kaplayan ürünlerimizde fazla tutulan emniyet stoğunun maliyeti bir hayli fazla olacaktır.

Diğer bir örnek, Location bilgisini tuttuğumuz kolonun free text bir alan olduğunu düşünelim. Çalışanların İstanbul için, İst, İstanbul, 34… gibi veri girişi yaptığını düşünelim. İstanbul a 2015 yılı için toplamda ne kadarlık satış yaptığımızı bulmak istediğimizde

Select sum(SatisMiktari) from Satis where sehir=’İstanbul’ and yil=’2015’          dediğimizde İstanbul a yaptığımız satışlara ulaşmış olacağız ama eksik sonuç elde etmiş olacağız. Çünkü İstanbul diye kaydettiğimiz İst, 34 gibi locationlar bu sorguya yansımadığı için eksik sonuç elde etmekteyiz. 2016 yılında İstanbul a ne kadar satis yapacağımızın analizini yaptığımızda, bu sonuçlar ışığında fazlasıyla yanlış kararlar alacağımız aşikar.

Sonuç olarak, çoğu şirkette verileri çok farklı platformlarda dağıtık olarak tutulmakta. Aynı zamanda bu veriler çok farklı formatlarda tutulmakta. Tüm bu problemlerin çözümü Data Warehouse oluşturmaktan geçmekte.

Data warehouse, OLTP sistemden çeşitli farklara sahip olduğu gibi, aslında OLTP sistemde olduğu gibi bir database dir. İkisinin temeldeki farklı, OLTP günlük olarak işlenen faaliyetlere yoğunlaşırken, DW raporlama ve analize yoğunlaşır. Yani OLTP insert, update, delete odaklıyken, DW select odaklıdır.

 

Karar verme süreçlerine yardımcı olmak asıl hedef olduğu için karar vermede kullanılmayacak veriler dahil edilmez. Bu nedenle OLTP sistemde bulunan ama kullanılmayacak veriler DW ye dahil edilmez.

OLTP sistemlerde yukarıda saydığımız veri tutarsızlığı, yanlışlığı DW sistemlerde bulunmaz. Çünkü, OLTP sistemden DW oluştururken ETL aşamasında bu verileri temizlemek amaçlı DQS tool u kullanılır. Böylece DW den oluşturacağımız raporlar, DW yi kullanarak yapacağımız analizler doğru çıkacaktır. Bu bilgiler ışığında şirketlerimiz için alacağımız kararlar, tahminler doğru sonuçlar verecektir. DQS ile ilgili yazmaya devam ettiğim yazı dizisine şuradan ulaşabilirsiniz.

Şirketiniz şu an nerde, nereye gidiyor, hangi ürünümden ne kadar satıyor ya da önümüzdeki günlerde satıyor olacağım… gibi hayati önemli sahip sorulara son derece doğru cevaplar verilmiş olacaktır.

İlkini yazdığım makale dizisinin ilki olan bu yazımda DW nedir, neden DW oluşturma ihtiyacı duyabilirizi aktarmaya çalıştım. Sonraki yazımda DW nin architecture ı, komponentlerinden bahsetmeyi düşünüyorum.

Keyifli okumalar

Şeydanur Sandıkçı

About Şeydanur Sandıkçı

Kocaeli Üniversite Endüstri Mühendisliğini bitirdikten sonra kariyerine İş Zekası Uzmanı ve Eğitmeni olarak devam etmektedir. İş zekası alanının dışında Data Scientist yönünü geliştirecek projeler de yapmaktadır. Şu an Bilge Adam da İş Zekası Uzmanı ve Eğitmeni olarak çalışmaktadır. seydanursandikci@gmail.com adresinden ulaşabilirsiniz.

İlginizi Çekebilir

Udemy Online Veri Ambarı Eğitimi

Yoğun emekler sonucunda “Türkçe” Veri Ambarı Eğitimi Udemy’de yayın hayatına başladı.Ömür boyu erişim,soru cevap bölümleri …

Bir Cevap Yazın