VERİ AMBARI VE OLAP TEKNOLOJİSİ



Benzer belgeler
SMY 535, Veri Madenciliği 2

Veri Ambarları. Erdem Alparslan

Konular. Veri ambarı nedir? Çok boyutlu veri modeli. Veri ambarı mimarisi. Veri ambarcılığı. Bölüm 3. Veri Ambarları 2/35. Doç. Dr.

Veri Madenciliği. Bölüm 3. Veri Ambarları. Doç. Dr. Suat Özdemir. w3.gazi.edu.tr/~suatozdemir

Başlıca Ürün-Bilgi Sistemleri

bilişim ltd İş Zekâsı Sistemi

Veritabanı, Veri Madenciliği, Veri Ambarı, Veri Pazarı

LOGO İş Zekası çözümü ile kurumsal raporlama ve analizler. Cem Yılmaz Genel Müdür LOGOBI Yazılım

Veritabanı Yönetimi Bilgisayarların. Keşfi Hedefler. Veritabanı, Veri ve Bilgi. Veritabanı, Veri ve Bilgi. Veritabanı, Veri ve Bilgi

İş Zekâsı Sistemi Projesi

SQL veri tabalarına erişmek ve onları kullanmak için geliştirilmiş bir lisandır.

Veritabanı Yönetim Sistemleri (Veritabanı Kavramı) Veri Modelleri

Maltepe Üniversitesi Endüstri Mühendisliği Bölümü Veri Tabanı Yönetimi (END 210)

İş Zekası Sistemi Veriyi Stratejik Bilgiye Dönüştürür

YÖNETİM BİLGİ SİSTEMLERİ İŞLETME ZEKASININ TEMELLERİ VERİTABANI VE BİLGİ YÖNETİMİ

VERİ TABANI SİSTEMLERİ

Oracle Database 11g: Introduction to SQL

VERI TABANLARıNDA BILGI KEŞFI

BTP 209 SİSTEM ANALİZİ VE TASARIMI

Mühendislikte Veri Tabanları Dersi Uygulamaları (MS-Access)

VERİ TABANI YÖNETİM SİSTEMLERİ

UZAKTAN EĞİTİM MERKEZİ

Bilgi Servisleri (IS)

1 Temel Kavramlar. Veritabanı 1

1 Temel Kavramlar. Veritabanı 1

İş Zekası için Dört-Katmanlı Veri Modellemesi Gerçekleştirimi. Harun Gökçe EG Yazılım, TOBB ETÜ

2. Hafta DEPOLAR VE DEPOLAMA 1. DEPO VE DEPOLAMA KAVRAMLARI. 2. Hafta

SİSTEM ANALİZİ VE TASARIMI. Sistem Analizi -Bilgi Sistemleri-

VERİ TABANI UYGULAMALARI

Nebim Winner - İş Zekası Halojen Kurumsal Sürüm

MIS 325T Servis Stratejisi ve Tasarımı Hafta 7:

VERİ KAYNAKLARI. Bilgi sisteminin öğelerinden biride veri

MİLLİ SAVUNMA ÜNİVERSİTESİ KARA HARP OKULU DEKANLIĞI BİLGİSAYAR MÜHENDİSLİĞİ BÖLÜMÜ DERS TANITIM BİLGİLERİ

YÖNETİM BİLİŞİM SİSTEMLERİ

Veritabanı Yönetim Sistemleri (Veritabanı Tasarımı) Varlık Bağıntı Modeli

Bilgisayar Mühendisliğine Giriş. Yrd.Doç.Dr.Hacer KARACAN

DENİZ HARP OKULU BİLGİSAYAR MÜHENDİSLİĞİ BÖLÜM BAŞKANLIĞI DERS TANITIM BİLGİLERİ

Bu işleçlerin dışında, aşağıda belirtilen karşılaştırma işleçlerinden de yararlanılır.

BİLİŞİM SİSTEMLERİNİN PRENSİPLERİ

İş Zekası çözümleri doğru zamanda, doğru kişiye doğru bilginin ulaşmasına olanak tanır.

İşletmenize sınırsız fırsatlar sunar

2-Veritabanı Yönetim Sistemleri/ Temel Kavramlar

Veritabanı Yönetim Sistemleri (Veritabanı Kavramı) İş Kuralları ve Veri Modelleri

Nebim Winner - İş Zekası Halojen Kurumsal Sürüm

MÜŞTERİ İLİŞKİLERİ YÖNETİMİ (PZL208U)

BIM 312 Database Management Systems. Veritabanı Kavramına Giriş

BİLGİSAYAR MÜHENDİSLİĞİ BÖLÜM BAŞKANLIĞI DERS TANITIM BİLGİLERİ

Kısaca. Müşteri İlişkileri Yönetimi. Nedir? İçerik. Elde tutma. Doğru müşteri Genel Tanıtım

Bilgiyi Keşfedin! Özelleştirme, Eklenti ve Veri Entegrasyonu Kurumsal Seviyede Yönetim ve Performans

İŞ ZEKASI (BI * ) Veriniz geleceğe ışık tutsun İşinizi geleceğe göre planlayın

Veritabanı Yönetim Sistemleri (Veritabanı Tasarımı) Varlık İlişki Modeli

Veritabanı Yönetim Sistemleri (Veritabanı Kavramı) Veritabanı Sistemleri

Veritabanı. SQL (Structured Query Language)

SİSTEM VE YAZILIM. o Bilgisayar sistemleri donanım, yazılım ve bunları işletmek üzere gerekli işlemlerden oluşur.

VERİ MADENCİLİĞİ önemsiz olmayan, gizli, önceden bilinmeyen, potansiyel olarak kullanışlı

Compiere Açık kodlu ERP + CRM yazılımı. Hüseyin Ergün Önsel Armağan Serkan Demir

Grid Bilgi Sistemleri (Grid Information Systems)

SİSTEM ANALİZİ ÖĞR. GÖR. MUSTAFA ÇETİNKAYA DERS 2 > GÜNÜMÜZ İŞLETMELERİNDE ENFORMASYON SİSTEMLERİ

FAN SELECTOR FAN SELECTOR FAN SEÇİM YAZILIMI.

Veritabanı. Ders 2 VERİTABANI

Maltepe Üniversitesi Bilgisayar Mühendisliği Bölümü Veri Tabanı ve Yönetimi (BİL 301)

Excel de Pivot Tablolar Tasarım ve Kullanımı

cofaso ile farkı yaşayın Şubat

CRM Müşteri İlişkileri Yönetimi

Bir Taşla Çok Kuş SAP İş Analitikleri Baştan Sona Paket Çözüm. Muzaffer YÖNTEM / Ülke Yöneticisi 9 Aralık 2014, Salı

VERİTABANI. SQL (Structured Query Language)

Dava Yönetİm Paketİ. İnnova Hukuk Yönetim Sistemi. Uçtan uca dava yönetimi. İnnova teknolojisiyle hukuki süreçlerinizi hızla sonuca ulaştırın.

İnternet Programcılığı

Veritabanı Yönetim Sistemleri

Analitik Hiyerarşi Prosesi (AHP) Yrd.Doç.Dr. Sabahattin Kerem AYTULUN

Sistem Geliştirme Yaşam Döngüsü (The Systems Development Life Cycle) (SDLC)

Business Intelligence and Analytics Principles and Practices: Charting the Course to BI and Analytic Success

VT Sistem Gerçeklemesi Ders Notları- #12

Microsoft SQL Server Sorgulama

Kutalmış Damar Emre Uzuncakara. 07 Haziran İstanbul

TEDARİK ZİNCİRİ YÖNETİMİ

Öğr.Gör.İnan ÜNAL Tunceli Üniversitesi Bilgisayar Mühendisliği Bölümü

İş Zekası ve Veri Ambarı Sistemleri. Nergiz Ercil Çağıltay

Veri Tabanı Yönetim Sistemleri Bölüm - 7

Veritabanı Tasarımı. İlişkisel Veritabanı Kavramlarına Giriş

VERİ MADENCİLİĞİNE BAKIŞ

Bütçelemenin En Kolay Hali!

Power BI. Neler Öğreneceksiniz?

Algoritma Geliştirme ve Veri Yapıları 9 Ağaç Veri Modeli ve Uygulaması. Mustafa Kemal Üniversitesi

Yaz.Müh.Ders Notları #6 1

Uygulamaları ulut bilişime geçirmeden önce, firmanızın/şirketinizin ya da. işinizin gereksinimlerini göz önüne almanız gerekir. Aşağıda bulut bilişime

Veri Tabanı Yönetim Sistemleri Bölüm - 3

DAO İLE SQL KOMUTLARI. Sql komutlarını artık veri tabanında kullanmaktan başka çaremiz yok arkadaşlar. Şimdi bu sql derslerimize başlayalım.

Veritabanı Tasarımı. Kartezyen Çarpım ve Join İşlemleri

Her bölüm için kısa bazı girişler yapılacak ve bölüm içerisinde anlatılacak olan konuların genel başlıkları belirtilecektir.

LINQ (Temel Kavramlar)

ICATT ÇEVİRİ UYGULAMASI SİSTEM MİMARİSİ VE VERİTABANI TASARIMI

Elbistan Meslek Yüksek Okulu GÜZ Yarıyılı. Öğr. Gör. Murat KEÇECĠOĞLU

Bilişim Sistemleri. Modelleme, Analiz ve Tasarım. Yrd. Doç. Dr. Alper GÖKSU

FONKSIYONLARA GÖRE IŞLETME

Kavramsal Tasarım. Veritabanlarına Giriş Dersi

Tekrar. Veritabanı 2

RotamNet Ticari Programı Kısa Tanıtım Dökümanı

FABREKA YAZILIM ELEKTRONİK DANIŞMANLIK TİC. LTD. ŞTİ.

Lojistik ve Taşımacılık Sektöründe Yeni Hizmet Modeli. Lojistik ve Taşımacılık Sektöründe Yeni Hizmet Modeli

Transkript:

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 2

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

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

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, isimlendirmede, şifreleme yapılarında, nitelik ölçütlerinde ve benzeri konularda tutarlılığı garantilemek için uygulanır. 5

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

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: verinin ilk yüklemesi verinin erişimi 7

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

VERI AMBARLARI VE İŞLEMSEL VERİTABANI Sİ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 (online transaction processing OLTP) denir. Bu sistemler bir organizasyona ait alım, envanter, imalyapı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 (online analytical processing OLAP) olarak bilinirler. 9

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

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

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

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

İÇERİK Veri Ambarı Nedir? Çok boyutlu veri modeli Veri ambarı mimarisi Veri ambarı uygulaması Veri ambarından veri madenciliğine 14

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

CUBE all time item location supplier 0-D(apex) cuboid 1-D cuboids time,item time,location item,location location,supplier time,supplier item,supplier 2-D cuboids time,location,supplier time,item,location time,item,supplier item,location,supplier time, item, location, supplier 3-D cuboids 4-D(base) cuboid 16

17

VERI KÜPÜ TV PC VCR sum Date 1Qtr 2Qtr 3Qtr 4Qtr sum Total annual sales of TV in U.S.A. U.S.A Canada Mexico Country sum 18

19

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 olgu takımyıldızı 20

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

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

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 şema veya olgu takımyıldızı denir. 23

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

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

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

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 sales define dimension item as item in cube sales define dimension shipper as (shipper_key, shipper_name, location as location in cube sales, shipper_type) 27 define dimension from_location as location in cube sales define dimension to_location as location in cube sales

A CONCEPT HIERARCHY: DIMENSION (LOCATION) all all region Europe... North_America country Germany... Spain Canada... Mexico city Frankfurt... Vancouver... Toronto office L. Chan... M. Wind 28

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

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

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

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

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 yer değiştirdiği bir döndürme işlemini göstermektedir. 33

Toronto 395 Vancouver time (quarters) location (citi Typical OLAP Operations location (cities) item (types) Chicago Q1 Q2 New York Toronto 605 computer home entertainment item (types) Vancouver605 825 14 400 home phone entertainment home entertainment computer phone security computer security item (types) pivot dice for (location = Toronto or Vancouver ) and (time = Q1 or Q2 ) and (item = home entertainment or computer ) Chicago440 New York Toronto 395 1560 Vancouver time (quarters) location (cities) Q1 Q2 Q3 Q4 605 825 14 400 slice computer security for time = Q1 home phone entertainment 605 825 14 400 New York Vancouver Chicago Toronto location (cities) item (types) time (months) USA 2000 Canada time (quarters) location (countr Q1 1000 Q2 Q3 Q4 roll-up on location (from cities to countries) Chicago New York Toronto Vancouver January location (cities) February March April May June July August September October November December computer security home phone entertainment drill-down on time (from quarters to months) home phone entertainment item (types) 150 100 150 computer security item (types) 34

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: Gerçek tablosu : prodid storeid date amt p1 c1 1 12 p2 c1 1 11 p1 c3 1 50 p2 c2 1 8 p1 c1 2 44 p1 c2 2 4 Çok boyutlu (3D) küp : day 2 day 1 c1 c2 c3 p1 44 4 p2 c1 c2 c3 p1 12 50 p2 11 8 35

KÜP İŞLEMLERİ day 2 day 1 c1 c2 c3 p1 44 4 p2 c1 c2 c3 p1 12 50 p2 11 8 Örnek: Toplam Hesaplama... sale(c1,*,*) c1 c2 c3 p1 56 4 50 p2 11 8 sale(c2,p2,*) rollup drill-down c1 c2 c3 sum 67 12 50 sum p1 110 p2 19 129 sale(*,*,*) 36

İÇERİK Veri Ambarı Nedir? Çok boyutlu veri modeli Veri ambarı mimarisi Veri ambarı uygulaması Veri ambarından veri madenciliğine 37

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

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

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

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

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

Data Warehouse: A Multi-Tiered Architecture Other sources Operational DBs Metadata Extract Transform Load Refresh Monitor & Integrator Data Warehouse OLAP Server Serve Analysis Query Reports Data mining Data Marts Data Sources Data Storage OLAP Engine 43 Front-End Tools

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. Şirketselgeniş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. 44

İÇERİK Veri Ambarı Nedir? Çok boyutlu veri modeli Veri ambarı mimarisi Veri ambarı uygulaması Veri ambarından veri madenciliğine 45

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

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 operator cube by, introduced by Gray et al. 96) SELECT item, city, year, SUM (amount) FROM SALES CUBE BY item, city, year (city) Need compute the following Group-Bys (date, product, customer), (date,product),(date, customer),(product, customer), (date),(product),(customer) () (city, item, year) 47 () (item) (year) (city, item) (city, year) (item, year)

Ö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ı 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),(y ear),()]; burada () ifadesi, boş yani gruplanmamış yönler için kullanılır. 48

ÖRNEK Bir 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. 49