Tag Archive | dwincremental

Informatica Ile Incremental Süreçlerin Yönetimi-2 (SCD Type-2 Current Flag Column)

Merhabalar,

Önceki yazımda Incremental süreç nedir, nasıl bir ihtiyaç sonucu uygulamaya başlarız, SCD Type ların dan ve en son olarak da SCD Type-1 ile ilgili bir örnek yapmıştık.

Bu yazı ile SCD Type -2 yi incelemeye devam edeceğiz.

Öncelikle Type-2 yi ne gibi ihtiyaçlar doğrultusunda kullanmalıyızı konuşalım. Verinin değişim historisi sizler için önemli ise Type-2 sizler için uygun diyebiliriz. Yani veri güncellense de yeni hali ile birlikte eski halini daha doğrusu hallerini tutmak  gibi ihtiyaçlarınıza bu yöntemle birlikte cevap verebilirsiniz.

Type-2 yi farklı yöntemlerle uygulayabilirsiniz. Bunlar:

  • Current Flag Column: Bu yöntemi uygularken tabloda verinin en son güncellenen halinin hangi satır olduğunu anlamak için Flag lemek için yani Flag kolonuna ihtiyacımız bulunmakta. Veri güncelse 1, değilse yani eski veri ise 0 olarak flag leriz. Böylece güncel dataları bulmak istediğimizde where CurrentFlag=1 dememiz yeterli olacaktır. İlgili kayıdın tüm eski versiyonlarında Flag=0 olacaktır.
  • Version Number Column: Bu yöntem, flag lemekle hemen hemen aynı. Tek fark version numarası 1 artarak devam eder. Yani initial load da version number ı 1 olarak insert edip, veri güncellenirse 2, tekrar güncellenirse 3 olarak devam edecektir. Versiyon numarası veri değiştikçe artarak devam edecektir.
  • Date Range Columns(StartDate-EndDate): Bu yöntemde verinin geçerli olduğu tarih aralığı tutulur. Yukarıdaki yöntemlerle aynı amaç doğrultusunda yani verinin full history sini tutmak için bu yöntem uygulanabilir. Tek fark verinin değişimi ile ilgili daha ayrıntılı bilgi tutmuş oluyoruz. Tamamını Okuyun…

Informatica ile Incremental Süreçlerin Yönetimi-1

 

Merhabalar,

Bir önceki yazımda Informatica nedir, nasıl ETL geliştirilir gibi konuları incelemiştik. Bu yazımda dw projelerinin vazgeçilmez unsuru olan Incremental süreçlerden bahsedeceğim. Incremental süreçler uzun bir konu olduğu için bu yazı ile tamamlamayacağız konuyu.

İlk olarak Incremental süreçler nedir, neden ihtiyaç duyarız? 

Incremental adı üstünde kademeli olarak artan süreçlerin yönetimi. Şirketlerin bazı dataları incremental, bazılarının delete insert gibi farklı yöntemlerle bir yerden başka bir yere aktarılması gerekir. Çoğu şirkette farklı business lar için bu yöntemlerin tamamı uygulanır.

Örneğin, personel bilgilerinin tutulduğu bir tablonuz olduğunu düşünelim. Personelin telefon numarası değişirse eski numarasını tutmak anlamlı olmayacağı için numarayı update yaparsınız. Personelin çalıştığı şehir değişirse, yeni şehiri insert edip, eski şehirin eski olduğuna dair flag leme yaparsınız(insert-update). Bu flag leme farklı şekillerde olabilir. Bunu yeri geldiğinde inceleyeceğiz. Her gece personel tablosunun truncate insert ile de doldurabilirsiniz. Yani kısaca yöntem seçimi sizin business anlayışınıza ve ihtiyaçlarınıza göre değişecek bir durum.

Bu yazıda Incremental süreçlerin yönetimiyle ilgileneceğiz. Incremental aktarımda veri değişse de eski veri silinmez, yeni kayıtla birlikte db imizde kayıtlı olarak durur.

Yeni ve eski kayıtları birbirinden ayırt edebilmek için farklı yöntemler kullanabilirsiniz. TYPE 2 ile ilgili kısımda açıklayacağız bu yöntemleri. Tabi burada eski veriyi nasıl tutmak istediğimiz de önemli bir nokta. Tüm history i tutmak istiyor muyuz, yoksa belli bir kısmını mı? Bu konuyu birazdan irdeleyeceğiz.

Incremental süreç yönetimi için bir kaç yöntem var. Bunlardan başlıcaları:

Data Warehouse Yazı Dizisi-2

Data Warehouse yazı dizisinin ilkinde neden DW önemlidir, şirketinizi gerçekten DW ye ihtiyacı olup olmadığını anlayabilmek adına şirketleri DW oluşturmaya iten problemlerden bahsetmeye çalıştım.

Data Warehouse Yazı Dizisi-1 i aşağıdaki linkten inceleyebilirsiniz:

https://seydanursandikci.wordpress.com/2016/04/19/data-warehouse-1/

Bugün ise DW oluşturmaya karar verdikten sonra projeye nerden başalamalıyız, nasıl bir yol haritası çizmeliyizden bahsediyor olacağım.

DW Projelerine Nasıl Başlanır??

Bu sorunun cevabını adımlar halinde açıklamaya çalışacağım:

  • DW nin Cevap Vermek Zorunda Olduğu Soruları Belirleme

DW yi oluştururken kafamıza göre değil, belirli problemler, ihtiyaçlar göz önüne alıp, bunlara cevap verecek bir yapı üzerinde oluşturulur. Bunun için BUSINESS I ANLAMA, IHTIYACLARI ANALIZ ETMEK çok önemlidir. Ihtıyacları analiz ederken DW yapımız ortaya çıkaracak şekilde doğru sorular sormamız gerekir. Sorular sormadan önce mevcut var olan yapıyı işin sahibinden dinlemek ilk adım olmalı. Bu sırada sorularımızla yönlendirmek genel taslağı çıkarmak için çok önemli.

Tamamını Okuyun…