Sayfalar

9 Temmuz 2012 Pazartesi

Veriden Geleceğe - İş Zekası Notları

Merhaba Arkadaşlar..

Geçtiğimiz günlerde Datawarehouse.gen.tr etkinliği olan Veriden Geleceğe 2012 İş Zekası ve Veri Ambarı eğitiminden ve içeriğinden bahseden bir yazı paylaşmıştım. Şimdi bu seminerde aldığım notları konu konu düzenleyerek paylaşmak istiyorum. Zira VERİ kelimesine aşina olanların bile çok yabancı olduğu bir takım yeni kavramların tartışıldığı bu notlar çok değerli bilgileri içeriyor.

İlk gün öğleden önce M.Kemal ERDOĞ'un katılımıyla İş Zekası hakkında çok kaliteli bir sunum izledik. İş zekası üzerine bilinmesi gereken kavramların pek çoğuyla tanışmış olduk. Bu notları size elimden geldiği en iyi şekilde açıklamak istiyorum.
İlk olarak Operasyonel Sistem'in ne olduğunu öğrenmekle başlayalım. Çünkü bu sistem veri ambarı konusunun temellerini oluşturuyor. Operasyonel sistem kullanıcıların ve diğer sistemlerin veri girişi yaptığı sistemdir. Örneğin Oracle, Microsoft SQL Server, DB2 birer operasyonel sistemdir. Operasyonel sistemler gün içerisinde yapılan işlemlerde inanılmaz derecede yük taşırlar ve bu büyük bir yoğunluk ve yorgunluk oluşturur. Her işi operasyonel sisteme yüklemek müşteri memnuniyetini azaltacak kadar performans kaybına sebep olabilir. Yine oprasyonel sistemler hafıza olarak kısıtlı alanlara sahiptir ve bir bilgiyi uzun uzadıya kaydetmek veritabanını zorlar.

Örneğin bir kullanıcı işlemine ait durumları kaydetmek için bu nedenden dolayı K, H, 1, 0, A, B, KBF gibi kısaltmalarla alandan tasarruf edilmeye bakılır. Bir kayıt için "Kredi Kartı" ibaresi yerine K yazmak yada "Muhasebe işlemi gerçekleştirildi" yerine 1 yazmak bu kaydın ve bunun gibisinin milyonlarca yerde yazıyor olmasının getireceği avantajı siz düşünün. Elbette küçük sistemlerde bu anlamsız olabilir. Fakat bir banka gibi kurumsal firmalarda bu bir lüks bile değildir. Ancak bu durum avantajla birlikte bu kısaltmaların anlamını bilmeyen raporlama çalışanları için anlamsız birer harften öteye geçemez. Peki bu durumu nasıl elimine ederiz? Bunun cevabı veri ambarında yatıyor.

Veri ambarını bir bilgi denizi olarak düşünebiliriz. Bu denizi besleyen akıntılar da kaynak sistemler(CRM, Muhasebe ve Satış departmanları) olarak düşünülebilir. Yani etraftaki sistemlere ait tüm veritabanları bizim veri ambarımızın kaynağı durumundadır. Buradan akan verileri veri ambarı denizini oluşturur. Bu da demek oluyor ki veri ambarı operasyonel sistemlere göre bellek olayı açısından çok daha serbesttir. Üstelik diğer sistemlere ait verilerle iç içe durumda olduğu için çok daha esnek kullanımı mümkündür. Yukarıda bahsettiğimiz kısaltmalar da bu durumda anlamsız olur. Uzun uzadıya yazmak mümkün olacaktır.

Bu veriler ilk olarak düzensiz bir şekilde veri ambarına akmadan önce Staging Area'da birikirler. Tüm bu veri aktarma olayını ETL ve ELT denen sistemler gerçekleştirir. Bu konuda daha ayrıntılı bilgi daha önceki yayınladığım aşağıdaki yazıda bulunmaktadır:
Datawarehouse Sakarya Semineri
Aşağıdaki şekil bizim olayımızı özetliyor:





















Yani veriler operasyonel sistemden ve diğer araçlardan ETL ile temizlenip (temizlenmekten maksat bilgilerin tutarlı olmasıdır. Mesela doğum tarihi bilgisinin yaş olarak kaydedilmesi, K harfinin anlamının açılımıyla kaydedilmesi gibi) veri ambarına yüklenmesi, ardından da kurum içi ve dışı bölümlerde kullanılmasıdır. Bu kullanım da raporlama, analiz ve veri madenciliği olaylarıdır. Yani son kullanıcının ihtiyaçları için hazır hale gelmesidir. Bu raporlama işlemleri SQL ile veri ambarına erişerek sağlanır. 

Yukarıdaki sebeplerin dışında veri ambarının başka ne türlü avantajları var?
  • Raporlama işlemleri veri ambarında yapılırsa Operasyonel sistem yorulmaz. Raporlama veri tabanında yapılırsa veritabanının çökmesi dahi söz konusu olabilir.
  • Veri tutarlılığı sağlanır. Her rapor aynı sistemden çekileceği için veriler birbiriyle uyumludur ve bu da bilginin tutarlılığını sağlar. Diğer türlü her departman kendine ait veritabanını raporlama için kullanacak olsa bir rapor her dapartmanda farklı sonuçlarla oluşturulabilir.
  • Son kullanıcı verilerin içerisinde kaybolmadan anlamlı okunabilir sonuçlar-raporlar görür. K harfinin anlamını bilmeyen bir son kullanıcıyı hatırlayın! Zira veriler sistemlerden veri ambarına akarken ETL sayesinde anlamlı olarak saklanırlar. Yani veri olduğu gibi veri ambarına getirilmez. Bir takım düzenlemelerle korunur.
ETL: Aslında ETL'siz veri ambarı oluşturmak imkansızdır. Yani veri ambarını ETL oluşturur. (Bir de ELT var.) Bu konudan daha önceki yazıda bahsetmiştik ama kısaca bir daha açıklayayım:
Extract: Operasyonel sisteme bağlanılır ve veriler alınır
Transform: Alınan veriler düzenlenir. Son kullanıcının veriyi görmek istediği şekilde veriler düzenlenir.
Load: Veri veri ambarına yüklenir.

Peki tüm bu işlemler boyunca dikkat edilmesi gereken iş mantığı nedir? İşte bu kısım bence çok hayati bir nokta. Zira veri ambarı üzerine pek çok seminere katıldım ama iş dünyası hakkında ipucu içeren bu kısımlardan hiç bahsedilmedi:
  1. Her gün sonunda veri entegrasyonu denen bir olay meydana geliyor. Gün içerisinde yapılan veri üzerindeki değişiklikler veri ambarından müşteri firmaların veri tabanlarına(ortak çalışılan kurumsal müşterileri düşünün) aktarılmak zorunda. Yani veri ambarından diğer sistemlerin beslenmesi söz konusu. Neden gün içerisinde bu aktarım yapılmıyor derseniz veri tutarlılığı ve performans sanırım en doğru cevap olur. (Çünkü işlemler sırasında verinin bir miktarını değiştirmek diğer departmanlarda sıkıntı oluşturur.) Bu aktarma işlemi gece 00:00'dan sabah mesai saatine kadar bitirilmek durumundadır. Müşteri memnuniyeti bu noktada çok önemlidir.
  2. Veri Bütünlüğü: Veri kirliliği (satılmamış ürünlerin veritabanında satılmış olarak gözükmesi) varsa ilk olarak bu kirliliğe müdahale edilir. Veri ambarı zaten bu hataların büyük kısmını algılar ve bunlar raporlanır. Mesela 1000 yaşında görünen bir müşteri yada henüz şirketin kurulmamış olduğu bir yılda poliçe gözükmesi gibi. Bu bilgiler toplanıp düzenlenir ve uygun departmanlar uyarılarak tutarlı bilgiler olarak güncellenmesi talep edilir. 
  3. Veri Güncelliği: "Elimizdeki veriler gerçek ve güncel mi?" sorusuna yanıt aranır. Kızlık soyadı ve adres bilgilerinin güncel olması gibi... Eğer verilerin güncelliğinden şüphe duyuluyorsa kritik müşterilere çeşitli hediyeler ve kampanyalarla bu bilgilerin güncellenmesi sağlanır. Turkcell'in mobil internet numarasını güncelleyenlere 1 GB hediye paket vermesi sanırım çok ideal bir örnek.
  4. Fraud Detection (Yolsuzluk yakalama): Şirket kuralları çerçevesinde etik olmayan ve yasaklanan bir takım işlemlerdir. Örneğin komisyon almak isteyen kurnaz bir bankacının müşteri sözleşmesini çeşitli söz oyunlarıyla kapattırıp yenisini açtırması gibi... Bu açıdan ilgili departmanlara belirlenen yolsuzluklar tespit edilip raporlanır. Bu tespitler de SQL cümlecikleriyle sağlanır. 
Bu yazı burada noktalanmalı. Konu bütünlüğünü korumak için kalan kısmı başka bir yazıda anlatmak akıllıca olur. Seminer boyunca 3 saatte gerçekten sıkıştırılmış eğitim aldık. Bunun mümkün olduğunu görmek gerçekten keyif vericiydi. Bir sonraki yazıda da Raporlama, Veri Madenciliği ve İş Zekası'nın şirketlerdeki organizasyonundan bahsedeceğim. 

İyi çalışmalar...



Hiç yorum yok:

Yorum Gönder