Oracle BI’da Level-Based Hierarchy Oluşturma

Veri ambarı tasarımında en sık kullanılan Zaman Boyutu için Level-Based hiyerarşi oluşturacağız. Zaman boyutumuzda sadece yıl-ay olabileceği gibi yıl-ay-hafta, yıl-ay-hafta-gun ya da yıl-ay-çeyrek-ay, yıl-ay-ceyrek-ay-gun gibi kırılımlar kullanılabilmektedir. Zaman boyutunu ihtiyacımıza yönelik kırılımları ile oluşturduktan sonra BI’da hiyerarşi adımları benzerlik göstermektedir.

Örneğimizde yıl-ay-ceyrek-ay-gun kırılımına sahip zaman boyutunun level-based hiyerarşisini yapacağız.

Tablomuzdaki örnek verimiz:

z1

DIM_ZAMAN_GUN boyut tablomuzu RPD’ye import ediyoruz ve fact tablomuzla bağlantısını yaptıktan sonra Business katmanına sürükle bırak yöntemiyle aktarıyoruz.

e1

Business katmanında tabloya sağ tıklayarak create l0gical dimension ve sonrasında level-based hierarschy’yi seçiyoruz.

e2

En üstte bir toplam alanı ve altında kırılımlar oluşacaktır. İlk etapta total ve detail kırılımları oluşmaktadır. Gerekli kırılımları biz ekleyeceğiz.

e3

Detail kırılımına sağ tıkla yeni parent level seçiyoruz.

e4

Toplam yılların alt kırılımı Yıl olacaktır. Basamakları birbirine bağlayan Anahtar kolonunu ve rapor ekranında görünmesini isteğimiz kolonları tanımlıyoruz. Bu basamakta anahtar ve raporda görünmesini istediğimiz kolonlar aynı.

e5 e6

Detail alanında olan Yıl kolonunu sürükle bırak yöntemi ile Yıl kırılımının içine taşıyoruz.

e7

Şimdi de Yıl kırılımının altında olacak Çeyrek Basamağını oluşturuyoruz.

e7-1 e8

Yine Detail alanında olan Çeyrek_no ve Çeyrek kolonlarını Çeyrek Kırılımına taşıyoruz.

Çeyrek_no Yıl basamağı ile bağlantıyı sağlarken ekranda görmek istediğimiz alan Çeyrek kolonu olduğu için sadece onu ‘user for display’ alanında seçiyoruz.

e9

Çeyrek Basamağından sonra Ay basamağı gelecektir.

e10 e11

Benzer şekilde Ay_no anahtar olarak seçilirken Ay adı rapor ekranında görünecek alan olarak seçilmiştir.

e12

Ay basamağından sonra ise en alt kırılımda yer alan Gün basamağı gelmektedir.

e12_1e13

Gün basamağı en alt kırılımda olduğu için fact tablosu ile boyut tablosunu birbirine bağlayan zamangun_kodu alanı bu basamağın anahtarı olacaktır. Hem üst basamak olan Ay basamağı ile hem de fact tablosu ile ilişki  bu kolonla sağlanmaktadır.

Hiyerarşimizi tamamlamış olduk. DIM_ZAMAN_GUN boyutu Presentation katmanına sürükle bırak yöntemiyle taşındığında hiyerarşimiz de otomatik olarak taşınmış olacaktır.

e14

Rapor oluştururken hiyerarşiyi direk rapora ekleyebileceğimiz gibi DIM_ZAMAN_GUN tablosundaki yıl kolonu da atılarak hiyerarşi kullanılmış olacaktır. Hiyerarşinin Rapor ekranında detaylı kullanımı ayrı bir konu alanımızda olacaktır.

Başarılar…

Reklamlar
Bu yazı Oracle BI, Oracle Business Intelligence, Raporlama, Veri Ambarı, İş Zekası içinde yayınlandı ve , , , , , , , olarak etiketlendi. Kalıcı bağlantıyı yer imlerinize ekleyin.

2 Responses to Oracle BI’da Level-Based Hierarchy Oluşturma

  1. Merhaba,

    Makale için çok teşekkürler. 2 sorum var;
    1- Buradaki Primary Key ne için kullanılmaktadır? Mesela çeyrek2’yi Primary Key seçseydik ne olurdu?
    2- Neredeyse tüm kaynaklarda son aşamada ilgili hierarchy için dimension tablonun source kısmındaki content kısmına logical level olarak en düşük seviye(sizin örneğinizde zaman_gunkodu) ekleniyor. Daha sonra da Fact tablonun source kısmındaki content bölümüne bu bilgiler tekrar giriliyor.

    Dolayısıyla sormak istediğim, LTS’lardaki content kısmı tam olarak ne için kullanılıyor? Sonuçda yukarıdaki eklemeleri yapmadığımız zaman da oluşturmuş olduğumuz hierarchy’ler çalışıyor.

    Çok teşekkürler

  2. Emine Oruç Aslan dedi ki:

    1- Primary Key alanı dimension tablonun tekil kolonudur. tabloda gördüğünüz üzere ‘çeyrek’ kolonu tekil değildir. Dimension ve fact tabloyu ilişkilendirirken primary key tanımlı kolondan ilişkilendirilir. Böylece fact tablodaki her bir satır için dimensiondan tek satır döner.

    2- Bir dimension’ı birden fazla fact tablosu kullanabilir ve dimentionda bulunan hiyerarşinin farklı basamaklarından bağlantısı olabilir. en düşük seviyenin seçilmesi genelde fact tablosunda da en düşük seviyeden olmasından. Ama mesela farklı bir fact tablosunda da ay seviyesinde olabilirdi. O zaman content kısmında ay seviyesindeki basamak seçilecek ve factin hiyerarşiye o basamaktan bağlanması sağlanacaktı.

    Özetle content kısmına fact tablosu ile hiyerarşinin hangi seviyeden bağlandığını belirtmemiz gerekiyor. Genel de çalışsa da sorunların yaşandığı raporlar oluyor.

    Umarım yeterince açıklayıcı olmuştur.

Bir Cevap Yazın

Aşağıya bilgilerinizi girin veya oturum açmak için bir simgeye tıklayın:

WordPress.com Logosu

WordPress.com hesabınızı kullanarak yorum yapıyorsunuz. Çıkış  Yap /  Değiştir )

Google+ fotoğrafı

Google+ hesabınızı kullanarak yorum yapıyorsunuz. Çıkış  Yap /  Değiştir )

Twitter resmi

Twitter hesabınızı kullanarak yorum yapıyorsunuz. Çıkış  Yap /  Değiştir )

Facebook fotoğrafı

Facebook hesabınızı kullanarak yorum yapıyorsunuz. Çıkış  Yap /  Değiştir )

Connecting to %s