Verİ AmbarI Ve Olap Teknolojİsİ

71
VERİ AMBARI VE OLAP TEKNOLOJİSİ

description

Verİ AmbarI Ve Olap Teknolojİsİ. İçerİk. Veri Ambarı Nedir ? Çok boyutlu veri modeli Veri ambarı mimarisi Veri ambarı uygulaması Veri ambarından veri madenciliğine. Verİ AmbarI Nedİr ?. Organizasyonun işlemsel veri tabanından ayrı olarak düşünülen bir karar destek veri tabanıdır. - PowerPoint PPT Presentation

Transcript of Verİ AmbarI Ve Olap Teknolojİsİ

Page 1: Verİ AmbarI  Ve  Olap Teknolojİsİ

VERİ AMBARI VE OLAP TEKNOLOJİSİ

Page 2: Verİ AmbarI  Ve  Olap Teknolojİsİ

Veri Madenciliğine Giriş 2

İÇERİKVeri Ambarı Nedir?

Çok boyutlu veri modeli

Veri ambarı mimarisi

Veri ambarı uygulaması

Veri ambarından veri madenciliğine

Page 3: Verİ AmbarI  Ve  Olap Teknolojİsİ

Veri Madenciliğine Giriş 3

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

Page 4: Verİ AmbarI  Ve  Olap Teknolojİsİ

Veri Madenciliğine Giriş 4

DATA WAREHOUSE—ÖZNEYE DAYALIBir 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 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.

Page 5: Verİ AmbarI  Ve  Olap Teknolojİsİ

Veri Madenciliğine Giriş 5

DATA WAREHOUSE—TÜMLEŞİKBir 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, isimlendirmede, şifreleme yapılarında, nitelik ölçütlerinde ve benzeri konularda tutarlılığı garantilemek için uygulanır.

Page 6: Verİ AmbarI  Ve  Olap Teknolojİsİ

Veri Madenciliğine Giriş 6

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.

Page 7: Verİ AmbarI  Ve  Olap Teknolojİsİ

Veri Madenciliğine Giriş 7

DATA WAREHOUSE—DEĞİŞMEYENVeri 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:

• verinin ilk yüklemesi • verinin erişimi

Page 8: Verİ AmbarI  Ve  Olap Teknolojİsİ

Veri Madenciliğine Giriş 8

ÖZETLEVeri 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. 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.

Page 9: Verİ AmbarI  Ve  Olap Teknolojİsİ

Veri Madenciliğine Giriş 9

VERİ AMBARLARI VE İŞLEMSEL VERİTABANI SİSTEMLERİ ARASINDAKİ 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 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.

Page 10: Verİ AmbarI  Ve  Olap Teknolojİsİ

Veri Madenciliğine Giriş 10

OLTP VE OLAPKullanı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: • 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.

Page 11: Verİ AmbarI  Ve  Olap Teknolojİsİ

Veri Madenciliğine Giriş 11

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 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.

Page 12: Verİ AmbarI  Ve  Olap Teknolojİsİ

Veri Madenciliğine Giriş

12

OLTP VS. OLAP OLTP OLAP users clerk, IT professional knowledge worker function day to day operations decision support DB design application-oriented subject-oriented data current, up-to-date

detailed, flat relational isolated

historical, summarized, multidimensional integrated, consolidated

usage repetitive ad-hoc access read/write

index/hash on prim. key lots of scans

unit of work short, simple transaction complex query # records accessed tens millions #users thousands hundreds DB size 100MB-GB 100GB-TB metric transaction throughput query throughput, response

Page 13: Verİ AmbarI  Ve  Olap Teknolojİsİ

Veri Madenciliğine Giriş 13

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.  İş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.

Page 14: Verİ AmbarI  Ve  Olap Teknolojİsİ

Veri Madenciliğine Giriş 14

İÇERİKVeri Ambarı Nedir?

Çok boyutlu veri modeli

Veri ambarı mimarisi

Veri ambarı uygulaması

Veri ambarından veri madenciliğine

Page 15: Verİ AmbarI  Ve  Olap Teknolojİsİ

Veri Madenciliğine Giriş 15

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 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.

Page 16: Verİ AmbarI  Ve  Olap Teknolojİsİ

Veri Madenciliğine Giriş 16

CUBE

time,item

time,item,location

time, item, location, supplier

all

time item location supplier

time,location

time,supplier

item,location

item,supplier

location,supplier

time,item,supplier

time,location,supplier

item,location,supplier

0-D(apex) cuboid

1-D cuboids

2-D cuboids

3-D cuboids

4-D(base) cuboid

Page 17: Verİ AmbarI  Ve  Olap Teknolojİsİ

Veri Madenciliğine Giriş 17

Page 18: Verİ AmbarI  Ve  Olap Teknolojİsİ

Veri Madenciliğine Giriş 18

Page 19: Verİ AmbarI  Ve  Olap Teknolojİsİ

Veri Madenciliğine Giriş 19

Page 20: Verİ AmbarI  Ve  Olap Teknolojİsİ

Veri Madenciliğine Giriş 20

Page 21: Verİ AmbarI  Ve  Olap Teknolojİsİ

Veri Madenciliğine Giriş 21

Page 22: Verİ AmbarI  Ve  Olap Teknolojİsİ

Veri Madenciliğine Giriş 22

VERİ AMBARLARINI MODELLEMEKVeri ambarı için en popüler veri modeli, çok boyutlu modeldir. Çok boyutlu veri modeli

• yıldız şema, • kar tanesi şema • olgu takımyıldızı

Page 23: Verİ AmbarI  Ve  Olap Teknolojİsİ

Veri Madenciliğine Giriş 23

YILDIZ ŞEMAEn ç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) 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.

Page 24: Verİ AmbarI  Ve  Olap Teknolojİsİ

Veri Madenciliğine Giriş 24

ÖRNEK YILDIZ ŞEMA

time_keydayday_of_the_weekmonthquarteryear

time

location_keystreetcitystate_or_provincecountry

location

Sales Fact Table

time_key

item_key

branch_key

location_key

units_sold

dollars_sold

avg_salesMeasures

item_keyitem_namebrandtypesupplier_type

item

branch_keybranch_namebranch_type

branch

Page 25: Verİ AmbarI  Ve  Olap Teknolojİsİ

Veri Madenciliğine Giriş 25

KAR TANESİ ŞEMAKar 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. 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.

Page 26: Verİ AmbarI  Ve  Olap Teknolojİsİ

Veri Madenciliğine Giriş 26

ÖRNEK KARTANESİ ŞEMA

time_keydayday_of_the_weekmonthquarteryear

time

location_keystreetcity_key

location

Sales Fact Table

time_key

item_key

branch_key

location_key

units_sold

dollars_sold

avg_sales

Measures

item_keyitem_namebrandtypesupplier_key

item

branch_keybranch_namebranch_type

branch

supplier_keysupplier_type

supplier

city_keycitystate_or_provincecountry

city

Page 27: Verİ AmbarI  Ve  Olap Teknolojİsİ

Veri Madenciliğine Giriş 27

OLGU TAKIMYILDIZI ŞEMAKarmaşı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 şema veya olgu takımyıldızı denir.

Page 28: Verİ AmbarI  Ve  Olap Teknolojİsİ

Veri Madenciliğine Giriş 28

ÖRNEK TAKIMYILDIZI ŞEMAtime_keydayday_of_the_weekmonthquarteryear

time

location_keystreetcityprovince_or_statecountry

location

Sales Fact Table

time_key

item_key

branch_key

location_key

units_sold

dollars_sold

avg_salesMeasures

item_keyitem_namebrandtypesupplier_type

item

branch_keybranch_namebranch_type

branch

Shipping Fact Table

time_key

item_key

shipper_key

from_location

to_location

dollars_cost

units_shipped

shipper_keyshipper_namelocation_keyshipper_type

shipper

Page 29: Verİ AmbarI  Ve  Olap Teknolojİsİ

Veri Madenciliğine Giriş 29

CUBE DEFINITION SYNTAX (BNF) IN DMQL

Cube Definition (Fact Table)define cube <cube_name> [<dimension_list>]:

<measure_list>Dimension Definition (Dimension Table)

define 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>

Page 30: Verİ AmbarI  Ve  Olap Teknolojİsİ

Veri Madenciliğine Giriş 30

DEFINING STAR SCHEMA IN DMQLdefine cube sales_star [time, item, branch, location]:

dollars_sold = sum(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 location as (location_key, street, city, province_or_state, country)

Page 31: Verİ AmbarI  Ve  Olap Teknolojİsİ

Veri Madenciliğine Giriş 31

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)

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))

Page 32: Verİ AmbarI  Ve  Olap Teknolojİsİ

Veri Madenciliğine Giriş 32

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 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

Page 33: Verİ AmbarI  Ve  Olap Teknolojİsİ

Veri Madenciliğine Giriş 33

A CONCEPT HIERARCHY: DIMENSION (LOCATION)

all

Europe North_America

MexicoCanadaSpainGermany

Vancouver

M. WindL. Chan

...

......

... ...

...

all

region

office

country

TorontoFrankfurtcity

Page 34: Verİ AmbarI  Ve  Olap Teknolojİsİ

Veri Madenciliğine Giriş 34

VIEW OF WAREHOUSES AND HIERARCHIES

Specification of hierarchies

Schema hierarchy

day < {month < quarter; week} < year

Set_grouping hierarchy

{1..10} < inexpensive

Page 35: Verİ AmbarI  Ve  Olap Teknolojİsİ

Veri Madenciliğine Giriş 35

A SAMPLE DATA CUBE

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

Produ

ct

Cou

ntrysum

sum TV

VCRPC

1Qtr 2Qtr 3Qtr 4Qtr

U.S.A

Canada

Mexico

sum

Page 36: Verİ AmbarI  Ve  Olap Teknolojİsİ

Veri Madenciliğine Giriş 36

VERİ KÜPÜ OLUŞTURMA-ÖRNEK• Market satış verileri• Zaman-reyon satış verisi

Page 37: Verİ AmbarI  Ve  Olap Teknolojİsİ

Veri Madenciliğine Giriş 37

• Yönetici zaman-ürün boyutuna şube

boyutunu ekleyerek sonuçları görmek istiyor.

Page 38: Verİ AmbarI  Ve  Olap Teknolojİsİ

Veri Madenciliğine Giriş 38

Page 39: Verİ AmbarI  Ve  Olap Teknolojİsİ

Veri Madenciliğine Giriş 39

VERİ KÜPÜNÜ OLUŞTURAN KÜBOİDLER

Page 40: Verİ AmbarI  Ve  Olap Teknolojİsİ

Veri Madenciliğine Giriş 40

Ç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. 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.

Page 41: Verİ AmbarI  Ve  Olap Teknolojİsİ

Veri Madenciliğine Giriş 41

TİPİK OLAP OPERASYONLARIRoll-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. 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.

Page 42: Verİ AmbarI  Ve  Olap Teknolojİsİ

Veri Madenciliğine Giriş 42

ROLL-UP

Page 43: Verİ AmbarI  Ve  Olap Teknolojİsİ

Veri Madenciliğine Giriş 43

TİPİK OLAP OPERASYONLARIDrill-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 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.

Page 44: Verİ AmbarI  Ve  Olap Teknolojİsİ

Veri Madenciliğine Giriş 44

DRİLL-DOWN

Page 45: Verİ AmbarI  Ve  Olap Teknolojİsİ

Veri Madenciliğine Giriş 45

ROLL-UP, DRİLL DOWN

Page 46: Verİ AmbarI  Ve  Olap Teknolojİsİ

Veri Madenciliğine Giriş 46

TİPİK OLAP OPERASYONLARISlice 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 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 dice işlemini göstermektedir.

Page 47: Verİ AmbarI  Ve  Olap Teknolojİsİ

Veri Madenciliğine Giriş 47

SLİCE

Page 48: Verİ AmbarI  Ve  Olap Teknolojİsİ

Veri Madenciliğine Giriş 48

DİCE

Page 49: Verİ AmbarI  Ve  Olap Teknolojİsİ

Veri Madenciliğine Giriş 49

TİPİK OLAP OPERASYONLARIPivot(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 yer değiştirdiği bir döndürme işlemini göstermektedir.

Page 50: Verİ AmbarI  Ve  Olap Teknolojİsİ

Veri Madenciliğine Giriş 50

PİVOT

Page 51: Verİ AmbarI  Ve  Olap Teknolojİsİ

Veri Madenciliğine Giriş 51

Typical OLAP Operations

Page 52: Verİ AmbarI  Ve  Olap Teknolojİsİ

Veri Madenciliğine Giriş 52

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:

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 53: Verİ AmbarI  Ve  Olap Teknolojİsİ

Veri Madenciliğine Giriş 53

KÜP İŞLEMLERİ

day 2 c1 c2 c3p1 44 4p2 c1 c2 c3

p1 12 50p2 11 8

day 1

c1 c2 c3p1 56 4 50p2 11 8

c1 c2 c3sum 67 12 50

sump1 110p2 19

129

. . .

drill-downrollup

Örnek: Toplam Hesaplama

sale(c1,*,*)

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

Page 54: Verİ AmbarI  Ve  Olap Teknolojİsİ

Veri Madenciliğine Giriş 54

ÇOK BOYUTLU VERİTABANLARINI SORGULAMAK İÇİN YILDIZ AĞI MODELİÇok boyutlu veritabanlarının sorgulanması yıldız ağı modeli (starnet model) ne dayandırılabilir. Yıldız ağı modeli, her çizginin boyut için kavram hiyerarşisini temsil ettiği, merkezi bir noktadan çıkan çizgilerden oluşur. Hiyerarşideki her soyutlama seviyesi bir ayak izi (footprint) olarak adlandırılır.

Page 55: Verİ AmbarI  Ve  Olap Teknolojİsİ

Veri Madenciliğine Giriş 55

A STAR-NET QUERY MODEL

Shipping Method

AIR-EXPRESS

TRUCKORDER

Customer Orders

CONTRACTS

Customer

Product

PRODUCT GROUP

PRODUCT LINE

PRODUCT ITEM

SALES PERSON

DISTRICT

DIVISION

OrganizationPromotion

CITY

COUNTRY

REGION

Location

DAILYQTRLYANNUALYTime

Each circle is called a footprint

Page 56: Verİ AmbarI  Ve  Olap Teknolojİsİ

Veri Madenciliğine Giriş 56

A STAR-NET QUERY MODELBu yıldız ağı, sırasıyla yer, müşteri, parça ve zaman boyutları için kavram hiyerarşisini temsil eden dört adet çizgi içermektedir. Her çizgi, boyutun soyutlanma seviyesini gösteren ayak izlerinden oluşur. Örneğin, zaman çizgisi dört ayak izine sahiptir: “gün”, “ay”, ”çeyrek” ve “yıl”. Kavram hiyerarşisi tek bir niteliği (zaman hiyerarşisi için tarih gibi) veya birkaç niteliği (örneğin, yer için olan kavram hiyerarşisi, cadde, şehir, il veya eyalet ve ülke niteliklerini içerir) içerebilir. AllElectronics teki satışlar bileşenini incelemek için kullanıcılar zaman boyutu içerisinde aydan çeyreğe doğru roll-up yapabilirler veya yer boyutu içerisinden ülkeden şehre bir drill-down işlemi yapabilirler. Kavram hiyerarşileri, düşük seviyeli değerleri (zaman boyutu için gün örneği gibi) yüksek seviyeli soyutlamalarla (yıl gibi) yer değiştirilerek verinin oluşturulmasında veya yüksek seviyeli soyutlamalar ile düşük seviyeli değerlerin yerleri değiştirilerek verinin özelleştirilmesinde kullanılabilir.

Page 57: Verİ AmbarI  Ve  Olap Teknolojİsİ

Veri Madenciliğine Giriş 57

İÇERİKVeri Ambarı Nedir?

Çok boyutlu veri modeli

Veri ambarı mimarisi

Veri ambarı uygulaması

Veri ambarından veri madenciliğine

Page 58: Verİ AmbarI  Ve  Olap Teknolojİsİ

Veri Madenciliğine Giriş 58

VERİ AMBARLARININ TASARIMI 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 relationship 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.

Page 59: Verİ AmbarI  Ve  Olap Teknolojİsİ

Veri Madenciliğine Giriş 59

…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. 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.

Page 60: Verİ AmbarI  Ve  Olap Teknolojİsİ

Veri Madenciliğine Giriş 60

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ş 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.

Page 61: Verİ AmbarI  Ve  Olap Teknolojİsİ

Veri Madenciliğine Giriş 61

…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 test etme ve son olarak veri ambarının plana göre yerleştirilmesi.

Page 62: Verİ AmbarI  Ve  Olap Teknolojİsİ

Veri Madenciliğine Giriş 62

…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 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.

Page 63: Verİ AmbarI  Ve  Olap Teknolojİsİ

Veri Madenciliğine Giriş 63

Data Warehouse: A Multi-Tiered Architecture

DataWarehouse

ExtractTransformLoadRefresh

OLAP Engine

AnalysisQueryReportsData mining

Monitor&

IntegratorMetadata

Data Sources Front-End Tools

Serve

Data Marts

Operational DBs

Othersources

Data Storage

OLAP Server

Page 64: Verİ AmbarI  Ve  Olap Teknolojİsİ

Veri Madenciliğine Giriş 64

THREE DATA WAREHOUSE MODELSMimarı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, 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.

Page 65: Verİ AmbarI  Ve  Olap Teknolojİsİ

Veri Madenciliğine Giriş 65

İÇERİKVeri Ambarı Nedir?

Çok boyutlu veri modeli

Veri ambarı mimarisi

Veri ambarı uygulaması

Veri ambarından veri madenciliğine

Page 66: Verİ AmbarI  Ve  Olap Teknolojİsİ

Veri Madenciliğine Giriş 66

EFFİCİENT COMPUTATİON 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 cube 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.

Page 67: Verİ AmbarI  Ve  Olap Teknolojİsİ

Veri Madenciliğine Giriş 67

CUBE OPERATION

Cube definition and computation in DMQLdefine cube sales[item, city, year]: sum(sales_in_dollars)

compute cube sales

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

SELECT item, city, year, SUM (amount)

FROM SALES

CUBE BY item, city, yearNeed compute the following Group-Bys

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

(item)(city)

()

(year)

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

(city, item, year)

Page 68: Verİ AmbarI  Ve  Olap Teknolojİsİ

Veri Madenciliğine Giriş 68

ÖRNEK 2.11AllElectronics 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ı city ile grupla ”

Bu veri küpü için hesaplanabilenecek group-by’ların ve 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.

Page 69: Verİ AmbarI  Ve  Olap Teknolojİsİ

Veri Madenciliğine Giriş 69

ÖRNEKBir SQL sorgusu “bütün satışların toplamını hesapla gibi” 0 yönlü işlem(zero-dimensional operation) olan group-by iç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.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 cuboidler bü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.

Page 70: Verİ AmbarI  Ve  Olap Teknolojİsİ

Veri Madenciliğine Giriş 70

EFFICIENT PROCESSING OLAP QUERIES

Determine which operations should be performed on the available cuboids

• Transform drill, roll, etc. into corresponding SQL and/or OLAP operations, e.g.,

dice = selection + projection

Determine which materialized cuboid(s) should be selected for OLAP op.

• Let the query to be processed be on {brand, province_or_state} with the

condition “year = 2004”, and there are 4 materialized cuboids available:

1) {year, item_name, city}

2) {year, brand, country}

3) {year, brand, province_or_state}

4) {item_name, province_or_state} where year = 2004

Which should be selected to process the query?

Page 71: Verİ AmbarI  Ve  Olap Teknolojİsİ

Veri Madenciliğine Giriş 71

EXAMPLE OLAP QUERY This query returns a result set that contains the 2002 and 2003 store sales amounts for stores in the state of California.

• SELECT • { [Measures].[Store Sales] } ON COLUMNS, • { [Date].[2002], [Date].[2003] } ON ROWS • FROM Sales • WHERE ( [Store].[USA].[CA] )

The SELECT clause sets the query axes as the Store Sales member of the Measures dimension, and the 2002 and 2003 members of the Date dimension.The FROM clause indicates that the data source is the Sales cube.The WHERE clause defines the "slicer axis" as the California member of the Store dimension.