You are on page 1of 18

DataWarehousing

–Decission Support System


–ETL, OLAP, OLTP
–Model Dimensi: Skema Star & Snowflake

1
Datawarehousing
Decission Support System
•Decision-support systems merupakan aplikasi yang
digunakan untuk membantu mengambil keputusan-
keputusan bisnis seringkali berdasarkan data yang
dikumpulkan oleh aplikasi OLTP (on-line transaction
processing).
•Contoh-contoh keputusan bisnis:
– Item apa yang harus disediakan?
– Premi asuransi apa yang harus diubah?
– Siapa yang harus dikirimi iklan?
•Contoh-contoh data yang digunakan untuk membuat
keputusan-keputusan tersebut:
– Rincian transaksi penjualan eceran
– Profil pelanggan (penghasilan, usia, jenis kelamin, 2
dll)
Datawarehousing
Decission Support System
Untuk melakukan pengambilan keputusan ini terdapat tiga buah kecenderungan yang
saling melengkapi satu sama lain:
– Datawarehousing, On-Line Analytical Processing, Data Mining
•Data Warehousing: Gabungan data dari banyak sumber yang disimpan dalam satu
tempat penyimpanan yang berukuran besar.
– Terdapat tiga proses penting: Extract, Clean, Trasform, Load, Refresh
– Extract: Pengambilan data dari sumber eksternal (operational database)
– Clean: membersihkan data untuk mengurangi eror dan mengisi informasi yang
hilang, mengubah data mentah (jika perlu) untuk melakukan integrasi semantik
– Transform: mendefinisikan relational view untuk data yang sudah dibersihkan
tersebut
– Load: Mematerialisasi view yang diperoleh pada fase trasform dan
menyimpannya di penyimpanan (warehouse)
– Refresh: Dilakukan secara periodik untuk melihat data operasional terbaru dan
membersihkan data yang dianggap kadaluarsa.
•OLAP: Analisis interaktif terhadap data, memungkinkan data untuk dirangkum dan
dilihat dengan cara yang berbeda dengan langsung (dengan delay yang bisa diabaikan)
– View dan query SQL kompleks,
– Query berdasarkan operasi bergaya spreadsheet dan data dengan view
multidimensional, Query dilakukan secara interaktif dan on-line.
•Data Mining: Usaha-usaha penyelidikan untuk mencari kecenderungan (data) yang
menarik dan keanehan-kenehan (anomaly)
– Menemukan pengetahuan dalam bentuk aturan-aturan statistik dan pola-pola 3
dari database yang berukuran sangat besar
EXTERNAL DATA SOURCES

Datawarehousing, OLAP & Datamining

Datawarehousing EXTRACT
• Data terintegrasi untuk TRANSFORM
LOAD
jangka waktu yang lama, REFRESH
seringkali ditambah dengan
rangkuman informasi
• Beberapa gigabyte sampai Metadata
DATA
terabyte ukurannya. Repository
WAREHOUSE

• Interaktif response time;


jarang sekali terjadi SUPPORTS
perubahan terhadap data

DATA
MINING OLAP 4
Datawarehousing
Isu-isu yang harus diperhatikan
•Semantic Integration: Ketika memperoleh data dari
sumber yang beragam, maka harus menghilangkan
ketidakcocokan yang mungkin timbul, misal., mata uang
yang berbeda, skema yang berbeda.
•Heterogeneous Sources: Harus mengakses data dari
format penyimpanan dan tempat yang beragam.
– Dapat memanfaatkan kemampuan replikasi data.
•Load, Refresh, Purge: Harus mengisikan (load) data,
secara periodik mengecek data yang terbaru
(refresh), dan mengeluarkan data yang terlalu tua.
•Metadata Management: Melacak sumber, waktu
pemasukan, dan informasi lain untuk semua data di
warehouse.
5
timeid
Datawarehousing

sales
locid
pid
Model Data Multidimensional
11 1 1 25
• Kumpulan measures (ukuran), yang tergantung 11 2 1 8
terhadap sekumpulan dimensions (dimensi).
11 3 1 15
– E.g., ukuran Sales, dimensinya adalah
Product (key: pid), Location (locid), dan 12 1 1 30
Time (timeid). 12 2 1 20
12 3 1 50
11 12 13

irisan locid=1 8 10 10 13 1 1 8
pid

30 20 50 13 2 1 10
25 8 15 13 3 1 10
locid
1 2 3 11 1 2 35
6
timeid
Datawarehousing
MOLAP vs ROLAP
•Multidimensional data dapat disimpan secara fisik
dalam sebuah array pada disk; disebuat sebagai sistem
MOLAP. Selain itu, kita juga dapat menyimpan
multidimensional data sebagai suatu relasi; pendekatan
ini disebut sistem ROLAP.
•Relasi utama, yang menghubungkan dimensi terhadap
measure, disebut sebagai fact table. Masing-masing
dimensi dapat mempunyai atribut-atribut tambahan
dan satu buah dimension table yang bersesuaian.
– E.g., Products(pid, pname, category, price)
– Fact table jauh lebih besar dari dimensional
table.
7
Datawarehousing
Hierarki Dimensi
Untuk masing-masing dimensi nilai atributnya dapat
diorganisir ke dalam suatu hierarki
PRODUCT TIME LOCATION

year

quarter country

category week month state

pname date city

8
Datawarehousing
OLAP Query
• Fungsi Aggregate pada SQL-92 sangat terbatas
– Banyak fungsi-fungsi aggregate yang sangat sulit
atau bahkan mustahil untuk dispesifikasikan
• Data cube
• Complex aggregates (median, variance)
• binary aggregates (correlation, regression
curves)
• ranking queries (“urutkan student berdasarkan
total nilai yang diperoleh olehnya”
• SQL:1999 OLAP memberikan beberapa fungsi
aggregate tambahan untuk mengatasi keterbatasan
tersebut
– Didukung oleh beberapa database, termasuk
Oracle dan IBM DB2
9
Datawarehousing
OLAP Query (lanjt)
• Dipengaruhi oleh SQL dan spreadsheet.
• Operasi yang umum adalah untuk melakukan
fungsi aggregate suatu measure terhadap satu
atau lebih dimensi.
– Cari total penjualan (total sales).
– Cari total sales untuk masing-masing kota,
atau untuk masing-masing negara bagian.
– Cari produk lima besar yang diurutkan
berdasar total penjualan.
• Roll-up: Melakukan fungsi aggregate dari
tingkat dimensi yang rendah ke tingkat yang
lebih tinggi.
– E.g., Jika diberikan total sales per kota, maka
dapat dilakukan roll-up untuk mengetahui
total sales per negara bagian. 10
Datawarehousing
OLAP Query (lanjt)
• Drill-down: Lawan dari roll-up
– E.g., Jika diberikan total penjualan per negara bagian, maka dapat
diperoleh total penjualan per kota dengan melakukan drill-down.
– E.g., Juga dapat melakukan drill-down pada dimensi yang berbeda
untuk memperoleh total penjualan per produk per negara bagian.
• Pivoting: Fungsi Aggregate pada dimensi-dimensi yang dipilih.
– E.g., Pivoting pada Location dan menghasilkan cross-tabulation
berikut ini:
WI CA Total

• Slicing and Dicing: Equality 1995 63 81 144


dan range selection pada satu 1996 38 107 145
atau lebih dimensi
1997 75 35 110
Total 176 223 339
11
Datawarehousing
Perbandingan dengan Query SQL
• Operasi cross-tabulation (pivoting) dapat dihitung
secara sederhana menggunakan serangkaian query SQL
biasa:
SELECT SUM(S.sales)
FROM Sales S, Times T, Locations L
WHERE S.timeid=T.timeid AND S.timeid=L.timeid
GROUP BY T.year, L.state

SELECT SUM(S.sales) SELECT SUM(S.sales)


FROM Sales S, Times T FROM Sales S, Location L
WHERE S.timeid=T.timeid WHERE S.timeid=L.timeid
GROUP BY T.year GROUP BY L.state
12
Datawarehousing
Operator CUBE
• Secara umum jika ada k dimension, maka kita
akan mempunyai 2^k kemungkinan query SQL
GROUP BY yang dapat dibangkitkan malalui
pivoting pada masing-masing himpunan bagian
dimension.
• Query-query di atas dapat diganti dengan satu
buah query yang dapat membangkitkan ke-
delapan kombinasi group dy dengan satu
operator CUBE.
SELECT P.pid, L.locid, T.timeid, SUM(S.sales)
FROM Products P, Times T, Locations L
GROUP By Cube (P.pid, L.locid, T.timeid) 13
Datawarehousing
Ranking
• Ranking dilakukan bersamaan dengan spesifikasi order by.
• Jika diberikan relasi student-marks(student-id, marks),
misalnya temukan ranking untuk masing-masing student
berdasar nilai yang diperoleh
select student-id, rank( ) over (order by marks desc) as
s-rank
from student-marks
• Klausa order by tambahan harus ditambahakan untuk
membuatnya terurut berdasarkan ranking
select student-id, rank ( ) over (order by marks desc)
as s-rank
from student-marks
order by s-rank
• Ranking dapat meniggalkan gap: e.g. jika 2 student
mempunyai nilai yang sama, keduanya akan mempunyai
ranking 1, dan ranking berikutnya adalah 3
– dense_rank meninggalkan gap, sehingga ranking
berikutnya adalah 2 14
Datawarehousing
Windowing
• E.g.: “Jika diberikan nilai penjualan untuk masing-masing
tanggal, hitunglah untuk masing-masing tanggal
tersebut rata-rata penjualan hari itu, hari kemarin, dan
hari berikutnya”
• Query moving average seperti ini digunakan untuk
melihat perkembangan penjualan.
• Tidak seperti halnya group by, window operator, dapat
menyebabkan tuple yang sama berada dalam beberapa
window
• Spesifikasi Window dalam SQL:
– Urutan tuple, ukuran window untuk masing-masing tuple, fungsi
aggregate.
– E.g. diberikan relasi sales(date, value), dapat dilakukan window
query berikut:
select date, sum(value) over
(order by date between rows 1 preceding and
following) from sales 15
Datawarehousing
Star-Schema
TIMES
timeid date week month quarter year holiday_flag

pid timeid locid sales SALES (Fact table)


PRODUCTS LOCATIONS
pid pname category price locid city state country
• Fact table berada dalam bentuk BCNF; tetapi dimension table tidak
dinormalisasi.
– Dimension table berukuran relatif lebih kecil; sehingga
update/insert/delete jarang sekali dilakukan. Sehigga, anomali
terhadap data (karena tidak dinormalisasi) tidak terlalu penting
dibandingkan dengan performansi query yang bagus.
• Skema seperti ini sangat umum dalam aplikasi-aplikasi OLAP, dan
disebut sebagi skema star; menghitung join untuk semua relasi ini
disebut star join.
• Skema yang lebih rumit contohnya adalah
– Snowflake schema: dimension table terdiri dari beberapa
tingkat 16
– Constellation: terdapat lebih dari satu fact table
Datawarehousing

Bitmap Index

Bit-vector: F
sex custid name sex rating rating
1 bit untuk M
112 Joe M 3
Masing-masing
10 00100
nilai. 10 115 Ram M 5 00001
01 119 Sue F 5 00001
10 112 Woo M 4 00010

17
Datawarehousing
Kesimpulan
• Aplikasi pendukung pengambilan keputusan (Decision
support system) melibatkan pembuatan tempat
penyimpanan data yang berukuran sangat besar yang
disebut datawarehouse.
• Warehouse dimanfaatkan dengan bantuan teknik-
teknik analisis yang paling canggih: query kompleks
dan OLAP yang dipengaruhi oleh baik SQL maupun
spreadsheet.
• OLAP digunakan untuk menjawab pertanyaan-
pertanyaan (masalah) yang bersifat jangka pendek
(kekinian)
• Sedangkan datamining digunakan untuk menjawab
permasalahan-permasalahan yang bersifat strategik
(jangka panjang) seperti menentukan pola pembelian
oleh pembeli, produk apa yang harus di jual tahun
depan dan serangkaian pengetahuan lain yang
tersembunyi dalam data yang ada di datawarehouse18.

You might also like