verİambarive olap teknolojİsİmail.baskent.edu.tr/~20410964/dm_5.pdf · veri ambarı nedir? Çok...

49
VERİAMBARIVE OLAP TEKNOLOJİSİ

Upload: others

Post on 03-Jun-2020

35 views

Category:

Documents


0 download

TRANSCRIPT

Page 1: VERİAMBARIVE OLAP TEKNOLOJİSİmail.baskent.edu.tr/~20410964/DM_5.pdf · Veri Ambarı Nedir? Çok boyutlu veri modeli Veri ambarı mimarisi ... oluşturulur. Veri temizleme ve veri

VERİ AMBARI VE OLAP

TEKNOLOJİSİ

Page 2: VERİAMBARIVE OLAP TEKNOLOJİSİmail.baskent.edu.tr/~20410964/DM_5.pdf · Veri Ambarı Nedir? Çok boyutlu veri modeli Veri ambarı mimarisi ... oluşturulur. Veri temizleme ve veri

İÇERİK

� Veri Ambarı Nedir?

� Çok boyutlu veri modeli

� Veri ambarı mimarisi� Veri ambarı mimarisi

� Veri ambarı uygulaması

� Veri ambarından veri madenciliğine

2

Page 3: VERİAMBARIVE OLAP TEKNOLOJİSİmail.baskent.edu.tr/~20410964/DM_5.pdf · Veri Ambarı Nedir? Çok boyutlu veri modeli Veri ambarı mimarisi ... oluşturulur. Veri temizleme ve veri

VERİ AMBARI NEDİR?

� Organizasyonun işlemsel veri tabanından ayrı olarak

düşünülen bir karar destek veri tabanıdır.

� “Veri ambarı özneye dayalı, bütünleşmiş, zaman dilimli ve

yöneticinin karar verme işleminde yardımcı olacak biçimde

toplanmış olan değişmeyen veriler topluluğudur. ” —W. H.

Inmon

3

Page 4: VERİAMBARIVE OLAP TEKNOLOJİSİmail.baskent.edu.tr/~20410964/DM_5.pdf · Veri Ambarı Nedir? Çok boyutlu veri modeli Veri ambarı mimarisi ... oluşturulur. Veri temizleme ve veri

DATA WAREHOUSE—ÖZNEYE DAYALI

� Bir veri ambarı, tüketici, tedarikçi firma, ürün ve satış gibi önemli özneler etrafında kurulur.

� Veri ambarı bir organizasyonun her güne ait işleri ve hareket işleme faaliyetleri üzerinde yoğunlaşmak yerine karar verecek kimseler için yoğunlaşmak yerine karar verecek kimseler için veriye ait modelleme ve analiz üzerinde yoğunlaşır.

� Veri ambarları karar destek sürecinde faydalı olmayan veriyi dışarıda tutarak basit ve öz bir bakış sağlar.

4

Page 5: VERİAMBARIVE OLAP TEKNOLOJİSİmail.baskent.edu.tr/~20410964/DM_5.pdf · Veri Ambarı Nedir? Çok boyutlu veri modeli Veri ambarı mimarisi ... oluşturulur. Veri temizleme ve veri

DATA WAREHOUSE—TÜMLEŞİK

� Bir veri ambarı genellikle ilişkisel veri tabanları, dosyalar ve çevrim içi işlem kayıtları gibi çeşitli farklı türde (heterojen) dosyaları bütünleştirerek oluşturulur.

� Veri temizleme ve veri tümleme teknikleri, � Veri temizleme ve veri tümleme teknikleri, isimlendirmede, şifreleme yapılarında, nitelik ölçütlerinde ve benzeri konularda tutarlılığı garantilemek için uygulanır.

5

Page 6: VERİAMBARIVE OLAP TEKNOLOJİSİmail.baskent.edu.tr/~20410964/DM_5.pdf · Veri Ambarı Nedir? Çok boyutlu veri modeli Veri ambarı mimarisi ... oluşturulur. Veri temizleme ve veri

DATA WAREHOUSE—ZAMAN DİLİMLİ

� Veriler tarihi bir bakış açısından bilgi sağlamak için depolanır(örn: 5-10 yıllık geçmiş içerisinden).

� Veri ambarı içerisinde her anahtar yapı zamanın bir elemanı olarak ya kesinlik ya da açıklık içerir.içerir.

6

Page 7: VERİAMBARIVE OLAP TEKNOLOJİSİmail.baskent.edu.tr/~20410964/DM_5.pdf · Veri Ambarı Nedir? Çok boyutlu veri modeli Veri ambarı mimarisi ... oluşturulur. Veri temizleme ve veri

DATA WAREHOUSE—DEĞİŞMEYEN

� Veri ambarı hareket işlemeyi, geri almayı, ve rastlantısal kontrol mekanizmalarını gerektirmez.

� Veriye erişim için çoğunlukla sadece iki işlem gerektirir:gerektirir:� verinin ilk yüklemesi � verinin erişimi

7

Page 8: VERİAMBARIVE OLAP TEKNOLOJİSİmail.baskent.edu.tr/~20410964/DM_5.pdf · Veri Ambarı Nedir? Çok boyutlu veri modeli Veri ambarı mimarisi ... oluşturulur. Veri temizleme ve veri

ÖZETLE

� Veri ambarı stratejik kararları verme konusunda bir kurumun ihtiyacı olan bilgiyi depolayan karar destek veri modelinin fiziksel bir sunumu gibi çalışan, anlamsal olarak tutarlı bir veri deposudur. bir veri deposudur.

� Veri ambarı aynı zamanda sıklıkla, yapısal ve/veya planlanmamış sorgular, analitik raporlar ve karar vermeyi desteklemek için çeşitli farklı türde kaynaklardan veriyi bütünleştirerek oluşturulan bir mimari olarak da görülür.

8

Page 9: VERİAMBARIVE OLAP TEKNOLOJİSİmail.baskent.edu.tr/~20410964/DM_5.pdf · Veri Ambarı Nedir? Çok boyutlu veri modeli Veri ambarı mimarisi ... oluşturulur. Veri temizleme ve veri

VERI AMBARLARI VE İŞLEMSEL VERİTABANISİSTEMLERİ ARASINDAKI FARKLAR

� Çevrim içi işlemsel veri tabanları sistemlerinin önemli bir görevi, çevrim içi işlemeyi ve sorgulamayı gerçekleştirmektir. � Bu sistemlere çevrim içi hareket işleme sistemleri (on-

line transaction processing OLTP) denir. � Bu sistemler bir organizasyona ait alım, envanter, imal-

yapım, bankacılık, ücret bordrosu, kayıt ve hesaplama gibi � Bu sistemler bir organizasyona ait alım, envanter, imal-

yapım, bankacılık, ücret bordrosu, kayıt ve hesaplama gibi bir organizasyona ait günlük işlemlerin çoğunu karşılamaktadır.

� Diğer bir yandan veri ambarı sistemleri kullanıcılara veya bilgi çalışanlarına, veri analizi ve karar verme rolü içerisinde hizmet eder. � Böyle sistemler, farklı kullanıcıların çeşitli ihtiyaçlarına

yer vermek amacıyla veriyi değişik formatlarda gösterebilir ve organize edebilir.

� Bu sistemler, çevrim içi analitik işleme sistemleri (on-line analytical processing OLAP) olarak bilinirler.

9

Page 10: VERİAMBARIVE OLAP TEKNOLOJİSİmail.baskent.edu.tr/~20410964/DM_5.pdf · Veri Ambarı Nedir? Çok boyutlu veri modeli Veri ambarı mimarisi ... oluşturulur. Veri temizleme ve veri

OLTP VE OLAP� Kullanıcılar ve sistem yönelimi:

� OLTP sistemi müşteri merkezlidir:� Bilgi teknolojisi uzmanları, satıcılar ve müşteriler tarafından işlemsel

bilgi ve sorgulama için kullanılır. � OLAP sistemi pazar merkezlidir:

� Analistleri, uzmanları ve yöneticileri içine alan bilgi çalışanları tarafından veri analizi için kullanılır.

� Veri İçerikleri:� Veri İçerikleri:� OLTP sistemi, tipik olarak karar vermede kolayca

kullanılmak için fazla detaylı olan güncel veriyi yönetir. � Bir OLAP sistemi, büyük miktarlarda tarihi veriyi yönetir,

özetleme ve toplamada kolaylıklar sağlar ve öğe boyutunda farklı seviyelerindeki bilgiyi saklar ve yönetir. Bu özellikler veriyi karar vermede kullanabilmek için daha kolay bir hale getirir.

� Veritabanı Tasarımı: � OLTP sistemi genelde varlık-bağıntı (entity-relationship ER)

veri modelini ve uygulama merkezli veritabanı tasarımını seçer.

� OLAP sistemi,tipik olarak ya yıldız yada kar tanesi modelini ve özne merkezli bir veri tabanı tasarımını tercih eder.

10

Page 11: VERİAMBARIVE OLAP TEKNOLOJİSİmail.baskent.edu.tr/~20410964/DM_5.pdf · Veri Ambarı Nedir? Çok boyutlu veri modeli Veri ambarı mimarisi ... oluşturulur. Veri temizleme ve veri

OLTP VE OLAP� İnceleme:

� OLTP sistemi bir kurum veya bölüm içerisindeki bir güncel veriye, tarihi veriyi veya farklı organizasyonlardaki veriyi kapsamadan, temel olarak odaklanır.

� OLAP sistemi genellikle bir veritabanı şemasının çoklu versiyonlarını tararken, bir organizasyonun evrimsel sürecine bağlı olarak, aynı zamanda pek çok veri deposundan bilgi tümleme sonucunda kaynağı farklı organizasyonlardan tümleme sonucunda kaynağı farklı organizasyonlardan başlayan bilgiyle ilgilenir. Büyük hacimlerinden dolayı, OLAP verileri çoklu saklama ortamlarında depolanır.

� Erişim Desenleri: � OLTP sisteminin erişim desenleri temel olarak kısa,

basit(atomik) işlem bilgilerden oluşur. Böyle bir sistem uyumluluk kontrolü ve kurtarma mekanizmaları gerektirir.

� Bununla birlikte, OLAP sistemlere erişim, pek çoğunun karmaşık sorgu olabilecek olmasına karşın çoğunlukla salt okunur işlemler (çoğu veri ambarının güncel bilgi yerine tarihi bilgiyi depolaması nedeniyle) şeklindedir.

11

Page 12: VERİAMBARIVE OLAP TEKNOLOJİSİmail.baskent.edu.tr/~20410964/DM_5.pdf · Veri Ambarı Nedir? Çok boyutlu veri modeli Veri ambarı mimarisi ... oluşturulur. Veri temizleme ve veri

OLTP VS. OLAP

OLTP OLAP

Kullanıcı Uzman,IT elemanı Bilgi Analizcisi, Veri madencisi

Fonksiyon Günden güne işlem Karar destek

Veri Anlık, tarih aralıklı, detaylı, ilişkisel Tarihsel, özet şeklinde

İş Birimleri küçük, basit transactionlar Kompleks Sorgular

12

İş Birimleri küçük, basit transactionlar Kompleks Sorgular

Kayıt Erişimi Sayısı 10'lar Milyonlar

Kullanıcı Sayısı 1000'ler 10'lar

Veritabanı Büyüklüğü 100MB-GM 100GB-TB

Page 13: VERİAMBARIVE OLAP TEKNOLOJİSİmail.baskent.edu.tr/~20410964/DM_5.pdf · Veri Ambarı Nedir? Çok boyutlu veri modeli Veri ambarı mimarisi ... oluşturulur. Veri temizleme ve veri

NEDEN AYRI BİR VERİ AMBARI GEREKLİOLSUN?� DBMS: erişim yöntemleri, birinci anahtarı kullanarak indeksleme,

özel kayıtları araştırma ve sorguları optimize etme gibi bilinen görev ve iş yüklerinden hareketle tasarlanır ve ayarlanır.

� Diğer tarafta, veri ambarı sorguları sıklıkla karmaşıktır. Özetlenmiş seviyelerdeki verilerin büyük gruplarının hesaplanması ile ilgilenir, ve özel veri organizasyonu, erişim ve çok boyutlu incelemeye dayanan sunum yöntemleri gerektirebilir.

� OLAP sorgusu sıklıkla, kümeleme ve özetleme için veri kayıtlarına salt okunur erişime ihtiyaç duyar.

� OLAP sorgusu sıklıkla, kümeleme ve özetleme için veri kayıtlarına salt okunur erişime ihtiyaç duyar.

� İşlemsel veritabanlarının veri ambarlarından ayrılması işlemi, bu iki sistem içerisindeki farklı yapılar, içerikler ve veri kullanımları üzerine kurulmuştur.

� Karar destek için tarihi bilgi gerekli iken, işlemsel veritabanları tipik olarak tarihi veriye bakmaz. Bu bağlamda, işlemsel veritabanlarındaki veri çok olmasına rağmen, karar verme için gereken tamlıktan uzaktır.

� Karar destek, heterojen kaynaklardan gelen verinin birleştirilmesine(kümeleme ve özetleme gibi) ve sonuç olarak yüksek kalitede, temiz ve tümleşik veriye ihtiyaç duyar.

� Karşıt olarak, işlemsel veritabanları sadece hareketler gibi analizden önce birleştirilmeye ihtiyacı olan ,detaylı ham veri içerirler.

13

Page 14: VERİAMBARIVE OLAP TEKNOLOJİSİmail.baskent.edu.tr/~20410964/DM_5.pdf · Veri Ambarı Nedir? Çok boyutlu veri modeli Veri ambarı mimarisi ... oluşturulur. Veri temizleme ve veri

İÇERİK

� Veri Ambarı Nedir?

� Çok boyutlu veri modeli

� Veri ambarı mimarisi� Veri ambarı mimarisi

� Veri ambarı uygulaması

� Veri ambarından veri madenciliğine

14

Page 15: VERİAMBARIVE OLAP TEKNOLOJİSİmail.baskent.edu.tr/~20410964/DM_5.pdf · Veri Ambarı Nedir? Çok boyutlu veri modeli Veri ambarı mimarisi ... oluşturulur. Veri temizleme ve veri

TABLODAN VERİ KÜPLERİNE DOĞRU

� “Veri küpü nedir?” � Veri küpü verinin çoklu boyutta modellenmesini ve

incelenmesini sağlar. � Boyutlar ve bilgiler ile tanımlanır.

� boyutlar, organizasyonun kayıtlarını tutmak istediği perspektifler veya varlıklar ile ilgilidir.

� Örnek olarak mağazanın zaman, adet, şube ve yer ile ilgili � Örnek olarak mağazanın zaman, adet, şube ve yer ile ilgili satış kayıtlarını tutmak için bir satış veri ambarı kurabilir.

� Bu boyutlar mağazaya, aylık satışların adedi, şubeleri ve parçaların satıldığı yerler gibi kayıtların izinin tutulmasına imkan verir.

� Her boyut, boyut tablosu denen, boyutu daha detaylı anlatan bir ilgili tabloya sahip olabilir.

� Örnek olarak, bir parça için boyut tablosu parça adı, marka ve tip niteliklerini içerebilir. Boyut tabloları kullanıcılar veya uzmanlar tarafından belirtilebilir veya veri dağıtımları temel alınarak otomatik olarak yaratılabilir ve uyarlanabilir.

15

Page 16: VERİAMBARIVE OLAP TEKNOLOJİSİmail.baskent.edu.tr/~20410964/DM_5.pdf · Veri Ambarı Nedir? Çok boyutlu veri modeli Veri ambarı mimarisi ... oluşturulur. Veri temizleme ve veri

CUBE

all

time item location supplier

time,location item,location location,supplier

0-D(apex) cuboid

1-D cuboids

16

time,item

time,item,location

time, item, location, supplier

time,location

time,supplier

item,location

item,supplier

location,supplier

time,item,supplier

time,location,supplier

item,location,supplier

2-D cuboids

3-D cuboids

4-D(base) cuboid

Page 17: VERİAMBARIVE OLAP TEKNOLOJİSİmail.baskent.edu.tr/~20410964/DM_5.pdf · Veri Ambarı Nedir? Çok boyutlu veri modeli Veri ambarı mimarisi ... oluşturulur. Veri temizleme ve veri

17

Page 18: VERİAMBARIVE OLAP TEKNOLOJİSİmail.baskent.edu.tr/~20410964/DM_5.pdf · Veri Ambarı Nedir? Çok boyutlu veri modeli Veri ambarı mimarisi ... oluşturulur. Veri temizleme ve veri

VERI KÜPÜ

Total annual salesof TV in U.S.A.Date

Cou

ntrysum

sumTV

VCRPC

1Qtr 2Qtr 3Qtr 4Qtr

U.S.A

Canada

18

Cou

ntry

Canada

Mexico

sum

Page 19: VERİAMBARIVE OLAP TEKNOLOJİSİmail.baskent.edu.tr/~20410964/DM_5.pdf · Veri Ambarı Nedir? Çok boyutlu veri modeli Veri ambarı mimarisi ... oluşturulur. Veri temizleme ve veri

19

Page 20: VERİAMBARIVE OLAP TEKNOLOJİSİmail.baskent.edu.tr/~20410964/DM_5.pdf · Veri Ambarı Nedir? Çok boyutlu veri modeli Veri ambarı mimarisi ... oluşturulur. Veri temizleme ve veri

VERİ AMBARLARINI MODELLEMEK

� Veri ambarı için en popüler veri modeli, çok boyutlu modeldir.

� Çok boyutlu veri modeli� yıldız şema,

� kar tanesi şema � kar tanesi şema

� olgu takımyıldızı

20

Page 21: VERİAMBARIVE OLAP TEKNOLOJİSİmail.baskent.edu.tr/~20410964/DM_5.pdf · Veri Ambarı Nedir? Çok boyutlu veri modeli Veri ambarı mimarisi ... oluşturulur. Veri temizleme ve veri

YıLDıZ ŞEMA

� En çok bilinen modelleme örneği

� İçerisinde veri ambarının içerdiği en önemli veri kısmını gereksiz fazlalık olmadan içinde bulunduran büyük bir merkezi tablo (olgu tablosu) tablosu)

� her biri bir boyut için olmak üzere küçük yardımcı tablolar kümesi (boyut tabloları) bulunduran yıldız şemadır.

� Şema çizgesi, merkezi olgu tablosunun etrafında merkezden çıkan bir desen içerisinde gösterilen boyut tabloları ile, starburst yapısına benzer.

21

Page 22: VERİAMBARIVE OLAP TEKNOLOJİSİmail.baskent.edu.tr/~20410964/DM_5.pdf · Veri Ambarı Nedir? Çok boyutlu veri modeli Veri ambarı mimarisi ... oluşturulur. Veri temizleme ve veri

KAR TANESİ ŞEMA

� Kar tanesi şema, bazı boyut tablolarının normalize edildiği, bundan dolayı verinin ek tablolara doğru ileri bölündüğü, yıldız şema modelinin değişik bir biçimidir.

� Sonuç şema çizgesi kar tanesine yakın bir şekil oluşturur. � Kar tanesi ve yıldız şema modelleri arasındaki önemli fark

kar tanesi modelinde boyut tablolarının gereksiz fazlalıkları azaltmak için normalize edilmiş formda saklanabilir olmasıdır. olmasıdır.

� Böyle bir tabloyu yönetmek kolay ve kayıt yerinden tasarruf etmeyi sağlar çünkü büyük bir boyut tablosu, boyutsal yapı olarak sütunlar içerdiğinde devasa hale gelebilir.

� Bunun yanında yerden kazanç sağlama, olgu tablosunun tipik büyüklüğü ile karşılaştırıldığında önemsizdir.

� Dahası kar tanesi yapısı, bir sorguyu işletmek için daha çok katılım gerekli olacağından, tarama-gözden geçirme performansının etkinliğini de düşürebilir.

� Sonuç olarak, sistem performansı ters biçimde etkilenebilir. Bundan dolayı, veri ambarı tasarımında kar tanesi şema, yıldız şema kadar popüler değildir.

22

Page 23: VERİAMBARIVE OLAP TEKNOLOJİSİmail.baskent.edu.tr/~20410964/DM_5.pdf · Veri Ambarı Nedir? Çok boyutlu veri modeli Veri ambarı mimarisi ... oluşturulur. Veri temizleme ve veri

OLGU TAKIMYILDIZI ŞEMA

� Karmaşık uygulamalar boyut tablolarını paylaşmak için çoklu olgu tabloları gerektirebilir.

� Bu çeşit bir şema yıldızların toplamı olarak görülebilir ve bundan dolayı adına galaksi şemaveya olgu takımyıldızı denir.veya olgu takımyıldızı denir.

23

Page 24: VERİAMBARIVE OLAP TEKNOLOJİSİmail.baskent.edu.tr/~20410964/DM_5.pdf · Veri Ambarı Nedir? Çok boyutlu veri modeli Veri ambarı mimarisi ... oluşturulur. Veri temizleme ve veri

CUBE DEFINITION SYNTAX (BNF(BACKUS NAUR FORM

NOTASYONU) ) IN DMQL (DATA MINING QUERY

LANGUAGE)� Cube Definition (Fact Table)

define cube <cube_name> [<dimension_list>]: <measure_list>

� Dimension Definition (Dimension Table)

define dimension <dimension_name> asdefine dimension <dimension_name> as(<attribute_or_subdimension_list>)

� Special Case (Shared Dimension Tables)� First time as “cube definition”� define dimension <dimension_name> as

<dimension_name_first_time> in cube<cube_name_first_time> 24

Page 25: VERİAMBARIVE OLAP TEKNOLOJİSİmail.baskent.edu.tr/~20410964/DM_5.pdf · Veri Ambarı Nedir? Çok boyutlu veri modeli Veri ambarı mimarisi ... oluşturulur. Veri temizleme ve veri

DEFINING STAR SCHEMA IN DMQL

� define cube sales_star [time, item, branch, location]:

� dollars_sold = sum(sales_in_dollars), units_sold=count(*)

� define dimension time as (time_key, day, � define dimension time as (time_key, day, day_of_week, month, quarter, year)

� define dimension item as (item_key, item_name, brand, type, supplier_type)

� define dimension branch as (branch_key, branch_name, branch_type)

� define dimension location as (location_key, street, city, province_or_state, country)

25

Page 26: VERİAMBARIVE OLAP TEKNOLOJİSİmail.baskent.edu.tr/~20410964/DM_5.pdf · Veri Ambarı Nedir? Çok boyutlu veri modeli Veri ambarı mimarisi ... oluşturulur. Veri temizleme ve veri

DEFINING SNOWFLAKE SCHEMA IN DMQL

define cube sales_snowflake [time, item, branch, location]:

dollars_sold = sum(sales_in_dollars), avg_sales = avg(sales_in_dollars), units_sold = count(*)

define dimension time as (time_key, day, day_of_week, month, quarter, year)quarter, year)

define dimension item as (item_key, item_name, brand, type, supplier(supplier_key, supplier_type))

define dimension branch as (branch_key, branch_name, branch_type)

define dimension location as (location_key, street, city(city_key, province_or_state, country))

26

Page 27: VERİAMBARIVE OLAP TEKNOLOJİSİmail.baskent.edu.tr/~20410964/DM_5.pdf · Veri Ambarı Nedir? Çok boyutlu veri modeli Veri ambarı mimarisi ... oluşturulur. Veri temizleme ve veri

DEFINING FACT CONSTELLATION IN DMQL

define cube sales [time, item, branch, location]:dollars_sold = sum(sales_in_dollars), avg_sales =

avg(sales_in_dollars), units_sold = count(*)define dimension time as (time_key, day, day_of_week, month, quarter,

year)define dimension item as (item_key, item_name, brand, type, supplier_type)define dimension branch as (branch_key, branch_name, branch_type)define dimension branch as (branch_key, branch_name, branch_type)define dimension location as (location_key, street, city, province_or_state,

country)define cube shipping [time, item, shipper, from_location, to_location]:

dollar_cost = sum(cost_in_dollars), unit_shipped = count(*)define dimension time as time in cube salesdefine dimension item as item in cube salesdefine dimension shipper as (shipper_key, shipper_name, location as

location in cube sales, shipper_type)define dimension from_location as location in cube salesdefine dimension to_location as location in cube sales

27

Page 28: VERİAMBARIVE OLAP TEKNOLOJİSİmail.baskent.edu.tr/~20410964/DM_5.pdf · Veri Ambarı Nedir? Çok boyutlu veri modeli Veri ambarı mimarisi ... oluşturulur. Veri temizleme ve veri

A CONCEPT HIERARCHY: DIMENSION

(LOCATION)

all

Europe North_America...

all

region

28

MexicoCanadaSpainGermany

Vancouver

M. WindL. Chan

......

... ...

...office

country

TorontoFrankfurtcity

Page 29: VERİAMBARIVE OLAP TEKNOLOJİSİmail.baskent.edu.tr/~20410964/DM_5.pdf · Veri Ambarı Nedir? Çok boyutlu veri modeli Veri ambarı mimarisi ... oluşturulur. Veri temizleme ve veri

ÇOK BOYUTLU VERİ MODELİNDE

OLAP OPERASYONLARI� “Kavram hiyerarşileri OLAP içerisinde nasıl yardımcı

olur?”

� Çok boyutlu modelde veriler çoklu boyutlara organize edilmiştir ve her boyut, kavram hiyerarşisi tarafından tanımlanan çok boyutlu soyutlamalar içermektedir. içermektedir.

� Bu organizasyon kullanıcılara, veriyi farklı perspektiflerden inceleme esnekliği sağlar.

� Belirli sayıda OLAP veri küpü işlemleri, bu farklı incelemeleri gerçekleştirmek için, eldeki verinin etkileşimli sorgusu ve analizine imkan veren biçimde mevcuttur.

� Bundan dolayı OLAP, etkileşimli veri analizi için kullanıcı dostu bir ortam sunmaktadır.

29

Page 30: VERİAMBARIVE OLAP TEKNOLOJİSİmail.baskent.edu.tr/~20410964/DM_5.pdf · Veri Ambarı Nedir? Çok boyutlu veri modeli Veri ambarı mimarisi ... oluşturulur. Veri temizleme ve veri

TİPİK OLAP OPERASYONLARI

� Roll-up: Bu operasyon (bazı satıcılar tarafından drill-up operasyonu olarak da adlandırılır.) ya bir boyut için kavram hiyerarşisinin tepesine tırmanarak, yada boyut azaltımı ile bir veri küpünde kümeleme işlemi gerçekleştirir. küpünde kümeleme işlemi gerçekleştirir.

� Roll up işlemi boyut azaltımı ile birlikte yapıldığında verilen küpten bir veya daha çok boyut silinir. Örnek olarak sadece yer ve zaman boyutları bulunan bir satışlar veri küpü düşünelim. Roll up işleminin zaman boyutunu sildiğini farz edelim, bu durumda toplam satışlar yer ve zamana göre kümelenmek yerine, sadece yere göre kümelenecektir.

30

Page 31: VERİAMBARIVE OLAP TEKNOLOJİSİmail.baskent.edu.tr/~20410964/DM_5.pdf · Veri Ambarı Nedir? Çok boyutlu veri modeli Veri ambarı mimarisi ... oluşturulur. Veri temizleme ve veri

TİPİK OLAP OPERASYONLARI

� Drill-down (): Roll-up işleminin tersidir.

� Az detaylı veriden daha detaylı veriye doğru yönlendirme sağlar.

� Drill down işlemi, ya bir boyut için kavram hiyerarşisinde aşağı doğru inerek ya da ek hiyerarşisinde aşağı doğru inerek ya da ek boyutlar tanıtarak gerçekleştirilebilir.

� Örn. Sonuç veri küpü, toplam satışları çeyreklere ait özetler halinde vermek yerine, aylık detaylar ile birlikte vermektedir.

� Drill down işlemi eldeki veriye daha fazla detay eklediği için, bir küp yapısına yeni boyutlar da ekleyerek oluşturulabilir.

31

Page 32: VERİAMBARIVE OLAP TEKNOLOJİSİmail.baskent.edu.tr/~20410964/DM_5.pdf · Veri Ambarı Nedir? Çok boyutlu veri modeli Veri ambarı mimarisi ... oluşturulur. Veri temizleme ve veri

TİPİK OLAP OPERASYONLARI

� Slice işlemi verilmiş olan küpte, bir alt küp ile sonuçlanan, bir boyut üzerinde seçme gerçekleştirmesidir. � Şekilde zaman boyutu için time=”Q1” kriterini

kullanarak merkezi küpten satış verilerinin seçildiği kullanarak merkezi küpten satış verilerinin seçildiği bir slice işlemi görünmekedir.

� Dice işlemi ise iki veya daha fazla boyut üzerinde seçim işlemi gerçekleştirerek bir alt küp tanımlar. � Şekil şu üç boyutu ilgilendiren seçim kriterine:

(location= ”Toronto” or “Vancouver”) and(time= ”Q1” or”Q2”) and( item= ”home entertainment” or“computer”) dayanarak merkezi küpte yapılan diceişlemini göstermektedir.

32

Page 33: VERİAMBARIVE OLAP TEKNOLOJİSİmail.baskent.edu.tr/~20410964/DM_5.pdf · Veri Ambarı Nedir? Çok boyutlu veri modeli Veri ambarı mimarisi ... oluşturulur. Veri temizleme ve veri

TİPİK OLAP OPERASYONLARI

� Pivot(rotate-döndürme): Pivot işlemi, veriye ait alternatif bir görünüm sağlamak amacıyla veri eksenlerini döndüren görsellikle ilgili bir işlemdir.

� Şekil parça ve yer eksenlerinin 2 boyutlu olarak � Şekil parça ve yer eksenlerinin 2 boyutlu olarak yer değiştirdiği bir döndürme işlemini göstermektedir.

33

Page 34: VERİAMBARIVE OLAP TEKNOLOJİSİmail.baskent.edu.tr/~20410964/DM_5.pdf · Veri Ambarı Nedir? Çok boyutlu veri modeli Veri ambarı mimarisi ... oluşturulur. Veri temizleme ve veri

Q1

Q2

Q3

Q4

1000

CanadaUSA 2000

time

(qua

rters

)locatio

n (countr

home entertainment

computer

item (types)

phone

security

Toronto 395

Q1

Q2

605

Vancouver

time

(qua

rters

)

locatio

n (citi

home entertainment

computer

item (types)

605 825 14 400Q1

Q2

Q3

Q4

ChicagoNew York

TorontoVancouver

time

(qua

rters

)

locatio

n (citie

s)

computer security

440

3951560

dice for (location = “Toronto” or “Vancouver”) and (time = “Q1” or “Q2”) and (item = “home entertainment” or “computer”)

roll-up on location (from cities to countries)

slice

Typical OLAP Operations

January

February

March

April

May

June

July

August

September

October

November

December

ChicagoNew York

Toronto

Vancouver

time

(mon

ths)

locatio

n (citie

s)

home entertainment

computer

item (types)

phone

security

150100150

home entertainment

computer

item (types)

phone

securityslice for time = “Q1”

Chicago

New York

Toronto

Vancouver

home entertainment

computer

item (types)

phone

security

loca

tion

(citie

s)

605 825 14 400

home entertainment

computer

phone

security

605

825

14

400

Chicago

New York

location (cities)

item

(typ

es)

Toronto

Vancouver

pivot

drill-down on time (from quarters to months)

34

Page 35: VERİAMBARIVE OLAP TEKNOLOJİSİmail.baskent.edu.tr/~20410964/DM_5.pdf · Veri Ambarı Nedir? Çok boyutlu veri modeli Veri ambarı mimarisi ... oluşturulur. Veri temizleme ve veri

KÜP (CUBE)

� Verinin hızlı bir şekilde analizine izin veren veri yapısıdır.

� Yıldız modeli için verilen örnek bir küp üzerinde aşağıdaki gibi saklanabilir:

35

prodId storeId date amtp1 c1 1 12p2 c1 1 11p1 c3 1 50p2 c2 1 8p1 c1 2 44p1 c2 2 4

day 2 c1 c2 c3p1 44 4p2 c1 c2 c3

p1 12 50p2 11 8

day 1

Çok boyutlu (3D) küp :Gerçek tablosu :

Page 36: VERİAMBARIVE OLAP TEKNOLOJİSİmail.baskent.edu.tr/~20410964/DM_5.pdf · Veri Ambarı Nedir? Çok boyutlu veri modeli Veri ambarı mimarisi ... oluşturulur. Veri temizleme ve veri

KÜP İŞLEMLERİ

day 2 c1 c2 c3p1 44 4p2 c1 c2 c3

p1 12 50p2 11 8

day 1

. . .

Örnek: Toplam Hesaplama

sale(c1,*,*)

36

c1 c2 c3p1 56 4 50p2 11 8

c1 c2 c3sum 67 12 50

sump1 110p2 19

129

drill-downrollup

sale(*,*,*)sale(c2,p2,*)

Page 37: VERİAMBARIVE OLAP TEKNOLOJİSİmail.baskent.edu.tr/~20410964/DM_5.pdf · Veri Ambarı Nedir? Çok boyutlu veri modeli Veri ambarı mimarisi ... oluşturulur. Veri temizleme ve veri

İÇERİK

� Veri Ambarı Nedir?

� Çok boyutlu veri modeli

� Veri ambarı mimarisi� Veri ambarı mimarisi

� Veri ambarı uygulaması

� Veri ambarından veri madenciliğine

37

Page 38: VERİAMBARIVE OLAP TEKNOLOJİSİmail.baskent.edu.tr/~20410964/DM_5.pdf · Veri Ambarı Nedir? Çok boyutlu veri modeli Veri ambarı mimarisi ... oluşturulur. Veri temizleme ve veri

VERI AMBARLARıNıN TASARıMı

� Veri Ambarının Tasarımı: İş Analizi Framework: � “İş analistleri için veri ambarı ne sağlamaktadır?” Öncelikle bir veri ambarına

sahip olmak, rakipler arasından sıyrılmak için performansı ölçmeyi ve kritik düzenlemeleri yapmayı sağlayan, konu ile ilgili bilgiyi vererek bir “rekabete dayalı avantaj” sağlayabilir.

� İkincisi bir veri ambarı, organizasyonu doğru biçimde anlatan bilgiyi etkili ve çabuk bir biçimde elde etmeyi sağladığından iş verimliliğini geliştirebilir.

� Üçüncüsü bir veri ambarı, müşteri ilişkileri yönetimini (customer relationshipmanagement- CRM), tüm iş sırası, tüm departmanlar ve tüm pazarlar management- CRM), tüm iş sırası, tüm departmanlar ve tüm pazarlar içerisinden müşteriler ve parçaların tutarlı bir incelemesini sağladığı için kolaylaştırır.

� Son olarak bir veri ambarı, tutarlı ve güvenilir bir biçimde uzun bir zaman periyodu üzerinden istisnaların, modellerin ve eğilimlerin izini sürerek maliyet indirimi meydana getirebilir.

� Etkili bir veri ambarı tasarımı yapmak için kişinin, iş gereksinimlerini anlamaya, analiz etmeye ve bir iş analizi iskeleti oluşturmaya ihtiyacı vardır.

� Büyük ve karmaşık bir bilgi sisteminin tasarlanması, sahibinin, mimarın ve inşa edenin farklı kanıları olduğu için, büyük ve karmaşık bir yapının inşa edilmesi olarak düşünülebilir.

� Bu bakış açıları, yukarıdan aşağıya, iş tabanlı veya sahibinin perspektifinden aşağıdan yukarıya, inşa eden tabanlı veya uygulayıcının görüşünü simgeleyen karmaşık bir iskeleti oluşturmak için birleştirilebilir. 38

Page 39: VERİAMBARIVE OLAP TEKNOLOJİSİmail.baskent.edu.tr/~20410964/DM_5.pdf · Veri Ambarı Nedir? Çok boyutlu veri modeli Veri ambarı mimarisi ... oluşturulur. Veri temizleme ve veri

…� Veri ambarının tasarımına ilişkin dört farklı görüş mutlaka dikkate

alınmalıdır: � yukarıdan aşağıya inceleme,� veri kaynağı incelemesi, � veri ambarı incelemesi � iş sorgusu incelemesi.

� Yukarıdan aşağıya inceleme veri ambarı için gerekli olan, konu ile ilişkili bilginin seçimine imkan verir. Bu bilgi güncel ve gelecekteki iş ihtiyaçlarını eşleştirir. ilişkili bilginin seçimine imkan verir. Bu bilgi güncel ve gelecekteki iş ihtiyaçlarını eşleştirir.

� Veri kaynağı incelemesi operasyonel sistemlerce elde edilen, kayıt edilen ve yönetilen bilgiyi ortaya çıkarır. Bu bilgi, ayrı veri kaynağı tablolarından tümleşik veri tablolarına farklı seviyelerde detay ve doğrulukta belgelenmiş olabilir.

� Veri ambarı incelemesi olgu ve boyut tablolarını içerir. Tarihi bir bağlam sağlamak için eklenmiş, kaynağı, tarihi, başlangıç zamanını ilgilendiren bilgi gibi önceden hesaplanmış toplamları ve sayımları içeren, veri ambarı içerisinde tutulan bilgiyi temsil etmektedir.

� Son olarak, iş sorgusu incelemesi son kullanıcının bakış açısından veri ambarı içerisindeki verinin perspektifidir.

39

Page 40: VERİAMBARIVE OLAP TEKNOLOJİSİmail.baskent.edu.tr/~20410964/DM_5.pdf · Veri Ambarı Nedir? Çok boyutlu veri modeli Veri ambarı mimarisi ... oluşturulur. Veri temizleme ve veri

VERİ AMBARI TASARIMI SÜREÇLERİ� “Bir veri ambarını nasıl tasarlayabilirim?” � Bir veri ambarı yukarıdan aşağıya (tepeden tabana)

yaklaşımı , tabandan tepeye tasarım yaklaşımı veya ikisinin bir kombinasyonu kullanılarak inşa edilebilir.

� Yukarıdan aşağıya yaklaşımı ayrıntılı bir tasarım ve planlama ile başlar. Teknolojinin gelişmiş olduğu ve iyi bilindiği durumlarda ve mutlaka çözülmesi gereken iş bilindiği durumlarda ve mutlaka çözülmesi gereken iş problemlerinin açık ve iyi anlaşıldığı durumlarda kullanışlıdır.

� Tabandan tepeye yaklaşımı, deneyler ve prototipler ile başlar. Bu durum iş modellemenin ve teknoloji gelişiminin erken aşamalarında kullanışlıdır. Bir organizasyona önemli taahhütlerde bulunması öncesinde teknolojinin yararlarını değerlendirmeyi sağlar ve çok az bir masrafla organizasyonun ileri gitmesine imkan verir.

� Birleşik yaklaşımda organizasyon, tabandan tepeye yaklaşımının hızlı uygulaması ve fırsatlar sunan kullanımına sahipken, yukarıdan aşağıya yaklaşımının planlı ve stratejik özelliğini de kendi yararına kullanabilir.

40

Page 41: VERİAMBARIVE OLAP TEKNOLOJİSİmail.baskent.edu.tr/~20410964/DM_5.pdf · Veri Ambarı Nedir? Çok boyutlu veri modeli Veri ambarı mimarisi ... oluşturulur. Veri temizleme ve veri

� Yazılım mühendisliği bakış açısından, bir veri ambarının tasarımı ve yapılandırılması, sözü edilen şu adımlardan oluşabilir:

� planlama, gereksinimlerin incelenmesi, problem analizi, veri ambarı tasarımı, veri tümleme ile analizi, veri ambarı tasarımı, veri tümleme ile test etme ve son olarak veri ambarının plana göre yerleştirilmesi.

41

Page 42: VERİAMBARIVE OLAP TEKNOLOJİSİmail.baskent.edu.tr/~20410964/DM_5.pdf · Veri Ambarı Nedir? Çok boyutlu veri modeli Veri ambarı mimarisi ... oluşturulur. Veri temizleme ve veri

� Genelde, veri ambarı tasarımı süreçleri aşağıdaki adımlardan oluşur:

� Modellemek için bir iş süreci seçin, örneğin siparişler, faturalar, nakliyeler, envanter, hesap yönetimi, satışlar ve genel bir hesap defteri.

� İş sürecine ilişkin taneyi(grain) seçin. Tane, bu süreç için olgu tablosunda sunulacak olan tek parçalı veri için olgu tablosunda sunulacak olan tek parçalı veri seviyesidir, örneğin, bireysel hareket işlemleri ve benzerleri.

� Her bir olgu tablosu kaydında kullanılacak olan boyutları seçin. Tipik boyutlar zaman, müşteri, sağlayıcı, depo, hareket işleme tipi ve durumdur.

� Her bir olgu tablosu kaydına yerleşecek olan ölçüleri seçin. Tipik ölçüler, dollars_sold ve units_sold gibi sayısal toplanabilir niceliklerdir.

42

Page 43: VERİAMBARIVE OLAP TEKNOLOJİSİmail.baskent.edu.tr/~20410964/DM_5.pdf · Veri Ambarı Nedir? Çok boyutlu veri modeli Veri ambarı mimarisi ... oluşturulur. Veri temizleme ve veri

Data Warehouse: A MultiData Warehouse: A Multi--Tiered ArchitectureTiered Architecture

Extract

AnalysisQuery

Monitor&

IntegratorMetadata

ServeOperational

Othersources

OLAP Server

43

DataWarehouse

ExtractTransformLoadRefresh

OLAP Engine

QueryReportsData mining

Data Sources Front-End Tools

Serve

Data Marts

Operational DBs

Data Storage

Page 44: VERİAMBARIVE OLAP TEKNOLOJİSİmail.baskent.edu.tr/~20410964/DM_5.pdf · Veri Ambarı Nedir? Çok boyutlu veri modeli Veri ambarı mimarisi ... oluşturulur. Veri temizleme ve veri

THREE DATA WAREHOUSE MODELS

� Mimarın bakış açısına göre, üç veri ambarı modeli vardır. Kurumsal veri ambarı, veri pazarı (data mart) ve sanal veri ambarı.

� Kurumsal veri ambarı: Bir kurumsal veri ambarı, özneler hakkındaki tüm bilgiyi, organizasyonun tamamını tarayarak toplar. Şirketsel-genişlikte genelde bir veya daha fazla operasyonel sistemden veya dış bilgi sağlayıcılardan ve alanı içerisinde çapraz fonksiyonel olan, veri tümlemeyi sağlar. Tipik olarak özetlenmiş veriyi içerdiği gibi detaylı veriyi de içerir. Data mart: Data mart, kullanıcıların özel bir grubuna ait değerli, � Data mart: Data mart, kullanıcıların özel bir grubuna ait değerli, kurumsal genişlikteki verinin bir alt kümesini içerir. Alan özel seçilmiş olan öznelerle sınırlandırılmıştır. Örneğin bir pazarlama data mart ı öznelerini müşteri, parça ve satışlar olarak sınırlandırabilir. Data mart lar içerisinde yer alan veriler özetlenmiş olma eğilimindedir.

� Sanal veri ambarı: Sanal veri ambarı, operasyonel veri tabanları üzerinden incelemelerin bir kümesidir. Etkili bir sorgu işleme için sadece bazı muhtemel özet incelemeleri gerçekleştirilebilir. Sanal veri ambarını oluşturmak kolaydır ama operasyonel veritabanısunucularında çok fazla kapasite gerektirir.

44

Page 45: VERİAMBARIVE OLAP TEKNOLOJİSİmail.baskent.edu.tr/~20410964/DM_5.pdf · Veri Ambarı Nedir? Çok boyutlu veri modeli Veri ambarı mimarisi ... oluşturulur. Veri temizleme ve veri

İÇERİK

� Veri Ambarı Nedir?

� Çok boyutlu veri modeli

� Veri ambarı mimarisi� Veri ambarı mimarisi

� Veri ambarı uygulaması

� Veri ambarından veri madenciliğine

45

Page 46: VERİAMBARIVE OLAP TEKNOLOJİSİmail.baskent.edu.tr/~20410964/DM_5.pdf · Veri Ambarı Nedir? Çok boyutlu veri modeli Veri ambarı mimarisi ... oluşturulur. Veri temizleme ve veri

EFFICIENT COMPUTATION OF DATA

CUBES

� Çok yönlü veri analizinin temeli, çok kümeli yönlerin birleştirilmesinin verimli hesaplanmasıdır. SQL terimlerinde ,bu birleştirmeler group-by’s olarak geçer.

� Küp hesaplanmasında bir yaklaşım ,compute� Küp hesaplanmasında bir yaklaşım ,computecube operatörü içerdiği için SQL’e kadar erişmektedir. ”compute cube” operatörü işlemlerde açıkça belirtilmiş olan yönlerin bütün alt kümelerini birleştirerek hesaplar.

46

Page 47: VERİAMBARIVE OLAP TEKNOLOJİSİmail.baskent.edu.tr/~20410964/DM_5.pdf · Veri Ambarı Nedir? Çok boyutlu veri modeli Veri ambarı mimarisi ... oluşturulur. Veri temizleme ve veri

CUBE OPERATION

� Cube definition and computation in DMQL

define cube sales[item, city, year]: sum(sales_in_dollars)

compute cube sales

� Transform it into a SQL-like language (with a new operatorcube by, introduced by Gray et al.’96)

SELECT item, city, year, SUM (amount)()

SELECT item, city, year, SUM (amount)

FROM SALES

CUBE BY item, city, year� Need compute the following Group-Bys

(date, product, customer),

(date,product),(date, customer), (product, customer),

(date), (product), (customer)

() 47

(item)(city) (year)

(city, item) (city, year) (item, year)

(city, item, year)

Page 48: VERİAMBARIVE OLAP TEKNOLOJİSİmail.baskent.edu.tr/~20410964/DM_5.pdf · Veri Ambarı Nedir? Çok boyutlu veri modeli Veri ambarı mimarisi ... oluşturulur. Veri temizleme ve veri

ÖRNEK

� AllElectronics için item, city, year ve sales_in_dollars’ı içeren bir veri küpü oluşturacağınızı düşünün.

� Verileri sorgulama ile aşağıdaki gibi analiz edebilirsiniz.� “satışın toplamını item ve city ile grupla ”� “satışın toplamını item ile grupla ”� “satışın toplamını item ile grupla ”� “satışın toplamını city ile grupla ”

� Bu veri küpü için hesaplanabilenecek group-by’larınve cuboidlerin toplam sayısı kaçtır?� city ,item ve year niteliklerini üç yön olarak

sales_in_dollar’ı ölçü birimi olarak alalım;� bu veri kübü için toplam cuboid ya da group-by’ın sayısı

2³=8 olarak hesaplanır.� Olası group-by’s şöyledir:

� [(city,item,year),(city,item),(city,year),(item,year),(city),(item),(year),()];

� burada () ifadesi, boş yani gruplanmamış yönler için kullanılır.

48

Page 49: VERİAMBARIVE OLAP TEKNOLOJİSİmail.baskent.edu.tr/~20410964/DM_5.pdf · Veri Ambarı Nedir? Çok boyutlu veri modeli Veri ambarı mimarisi ... oluşturulur. Veri temizleme ve veri

ÖRNEK

� Bir SQL sorgusu “bütün satışların toplamını hesapla gibi” 0 yönlü işlem(zero-dimensional operation) olan group-byiçermez.

� SQL sorgusu bir group-by içerir; oda tek boyutlu işlem olan “compute the sum of sales, group-by city”dır.

� Bir küp operatöründeki n boyut group-by cümleciklerinin yığınına denktir; n boyutun her alt kümesi için bir tane olmak üzere.üzere.

� Bu yüzden, küp operatörü group-by operatörünün n boyutlu genelleştirilmiş halidir.

� N boyutlu bir küp için, esas cuboidide içeren toplam 2ª tane cuboid vardır. Kod açıkca sisteme ,boş altkümeyi de içeren {item,city,year} kümesinin sekiz alt kümesi için satışların bütün cuboidlerini hesaplamasını emretmektedir.

� Büyük olasılıkla ,bir veri kübü için(ya da asıl cuboidler için) oluşturulabilecek olası cuboidlerin hepsini gerçekleştirmenin ve önhesaplamasını yapmanın gerçekdışı olduğunu fark etmişsinizdir. Eğer birçok cuboid var ise ve bu cuboidlerbüyük boyuttaysa ,en makul tercih kısmı gerçekleştirim yani sadece oluşturulabilecek olası cuboidlerin bazılarını gerçekleştirmek olacaktır.

49