Anda di halaman 1dari 19

Desain Warehouse

Pengantar
Multidimensional Data Model
Pertimbangan dalam Membuat Desain
Implementasi Desain
Mengetes Desain
Contoh Desain

Pengantar

Ingat: Database Warehouse TERPISAH dari


Database untuk Operasional

Data Warehouse vs Data Transaksi


Warehouse (OLAP) Transaksi (OLTP)

Desain
Tujuan

Multidimensional Data
Model
Efisiensi Waktu Query

Entity Relationship
Diagram (ERD)
Efisiensi
Space/Storage

Apakah Multidimensional
Modeling?

Subject Oriented

Berisikan data-data yang:

Melihat data dari berbagai perspektif (Stok,


Penjualan, dll)
Telah tervalidasi
Historikal (contoh: data dua tahun terakhir)
Terintegrasi
Mudah Diakses

Direpresentasikan dalam bentuk Data Cube

Apakah Data Cube

Adalah representasi kumpulan data


dalam multi-dimensi
Meskipun dinamakan cube, namun
dapat merepresentasikan data dalam
N-dimensi

Contoh Data Cube

0 dimensi:

1 dimensi:

Total penjualan sampai


sekarang

Total penjualan untuk


waktu tertentu

Total
Waktu 1

AAA

Waktu 2

BBB

Waktu 3

CCC

2 dimensi:

Total penjualan pada


waktu tertentu untuk
barang tertentu

XXX

Barang 1 Barang 2
Waktu 1

AAA

DDD

Waktu 2

BBB

EEE

Waktu 3

CCC

FFF

Contoh Data Cube


Lokasi 4

Barang 1

3 dimensi:

Total penjualan
pada waktu
tertentu untuk
barang pada
lokasi tertentu
Lokasi
Barang

Lokasi 3
Lokasi 2

Barang 1 Barang 2
Waktu 1
AAA DDD4

Barang 1 Barang 2
Waktu 1
Lokasi 1
AAA DDD3
Waktu
2
Barang 1 Barang BBB
2
EEE4
Waktu 1
AAA DDD2
Waktu 2
BBB EEE3
Waktu
3
Waktu 1
CCC
FFF4
AAA1
DDD1
Waktu 2
BBB EEE2
Waktu 3
CCC
FFF3
Waktu 2
BBB1 EEE1
Waktu 3
CCC
FFF2
Waktu 3

Waktu

Barang 2

CCC1

FFF1

Contoh Data Cube

4 dimensi:

Total penjualan pada waktu tertentu


untuk barang pada lokasi tertentu oleh
penjual tertentu
Lokasi 4

Lokasi 4

Barang1 Barang 2
1
Lokasi 3
Barang1 Barang 2
Waktu 1
AAA
DDD4
Lokasi 2
1
Barang1 Barang 2
Waktu1 1
AAA
DDD3
Lokasi 1
Waktu 2Barang 2 BBB
EEE4
Barang1
Waktu 1
AAA
DDD2
Waktu 2
BBB
EEE3
Waktu 3
FFF4
Waktu 1
AAA1
DDD1CCC
Waktu 2
BBB
EEE2
Waktu 3
CCC
FFF3
Waktu 2
BBB1
EEE1
Waktu 3
CCC
FFF2
Waktu 3

CCC1

PENJUAL 1

FFF1

Barang1 Barang 2
1
Lokasi 3
Barang1 Barang 2
Waktu 1
AAA
DDD4
Lokasi 2
1
Barang1 Barang 2
Waktu1 1
AAA
DDD3
Lokasi 1
Waktu 2Barang 2 BBB
EEE4
Barang1
Waktu 1
AAA
DDD2
Waktu 2
BBB
EEE3
Waktu 3
FFF4
Waktu 1
AAA1
DDD1CCC
Waktu 2
BBB
EEE2
Waktu 3
CCC
FFF3
Waktu 2
BBB1
EEE1
Waktu 3
CCC
FFF2
Waktu 3

CCC1

PENJUAL 2

FFF1

Bagaimana Membuat
Multidimensional Data Model?

Tabel dalam Model Data Multidimensi


dibagi menjadi 2 macam:

Fact Table => Measure


Dimension Table => Atribut Sumbu

Skema Model Data Multidimensi dibagi


menjadi 3:

Star Schema
Snow Flake Schema
Fact Constellation Schema

Data Cube dan


Skema Multidimensi

DIMENSI 1 (A)

DIMENSI 2 (B)

Fact Table
menyimpan Measure
Dimension Table
menyimpan
Atribut
Sumbu
Cube
/
Dimensi

MEASURE =
CUBE (A, B, C)
DIMENSI 3 (C)

Dimensi 1 (A)
Dimensi 2 (B)
Dimensi 3 (C)

Star Schema
Time Dimension
year
quarter
month
day_of_week
day
time_key

DIMENSION
TABLE
SALES Fact

Branch Dimension

time_key
item_key
branch_key
location_key

branch_type
branch_name
branch_key

dollars_sold
units_sold
avg_sales

Item Dimension
supplier_type
FACT
type
TABLE
brand
item_name
item_key
Location Dimension
country
province_or_state
MEASURE
city
street
location_key

Star Schema
Item
Time
year
quarter
month
day_of_week
day
time_key

SALES

Branch

time_key
item_key
branch_key
location_key

branch_type
branch_name
branch_key

dollars_sold
units_sold
avg_sales

supplier_type
type
brand
item_name
item_key

Location
country
province_or_state
city
street
location_key

Mengakibatkan
Redundansi
Untuk mengatasi,
bisa dinormalisasi

Snowflake Schema
Time
year
quarter
month
day_of_week
day
time_key

SALES

Branch

time_key
item_key
branch_key
location_key

branch_type
branch_name
branch_key

dollars_sold
units_sold
avg_sales

Item

Supplier

supplier_key
supplier_type
type
brand
item_name
item_key

supplier_key
supplier_type

Location

City

country
province_or_state
city_key
city
street
location_key

city_key
city
province_or_state

country

Fact Constellation
SHIPPING
Item
Time
year
quarter
month
day_of_week
day
time_key

SALES
time_key
item_key
branch_key
location_key

dollars_sold
units_sold
avg_sales

Sudut pandang Subjek SALES

dollars_cost
units_shipped

Location
country
province_or_state

Branch
branch_type
branch_name
branch_key

supplier_type
type
brand
item_name
item_key

time_key
item_key
shipper key
from_location
to_location

city
street
location_key

Shipper
shipper_key
shipper_name
location_key
shipper_type

Sudut pandang Subjek SHIPPING

Arsitektur Data Warehouse


Multi-Tiered
other

Metadata

sources
Operational

DBs

Extract
Transform
Load
Refresh

Monitor
&
Integrator

Data
Warehouse

OLAP Server

Serve

Analysis
Query
Reports
Data mining

Data Marts

Data Sources

Data Storage

OLAP Engine Front-End Tools

Pertimbangan dalam Membuat


Desain Warehouse

Desain untuk Pengelolaan

Mudah di Backup secara Teratur


Ketika Loading new data
Ketika Aggregating new data
Ketika Melakukan Aktifitas Pemeliharaan Data,
contoh: Indexing dan Archiving

Desain untuk Performa

Tentukan tipe, dimana, berapa banyak ruang


yang dibutuhkan untuk indeks

Implementasi

Satu Database atau Lebih?


Kesepakatan dalam Aturan Penamaan?
Membuat Database dalam Oracle
Menentukan Skema untuk Database
Mengatur Data File dan Tablespace
Membuat Tabel Fact dan Tabel Dimensi
Konstrain
Indeks
Partisi
Membuat View
Keamanan

Testing

Dilakukan sebelum rilis produksi


Yang perlu di tes antara lain:

Waktu yang dibutuhkan untuk melakukan load


data
Pembersihan data dan transformasi
Waktu respon query
Data summary yang dibutuhkan
Waktu yang dibutuhkan untuk tugas-tugas
pengelolaan (manajemen)

Contoh

Skema untuk Easy Shopping Inc


Asumsi: database sudah dibuat
Langkah-langkah:

Membuat tablespace dan data file


Membuat tabel, konstrain, dan indeks
Tambahkan keamanan
Tahap akhir (DBMS_STATS)

Referensi

Oracle9iR2 Data Warehousing


Data Mining: Concepts and
Techniques

Anda mungkin juga menyukai