bab 2 landasan teori - library.binus.ac.idlibrary.binus.ac.id/ecolls/ethesisdoc/bab2/2009-1-00066-if...

37
7 BAB 2 LANDASAN TEORI 2.1 Data dan Informasi M enurut Laudon (2006, p13), data adalah kumpulan fakta yang masih mentah yang menjelaskan aktivitas-aktivitas yang terjadi dalam organisasi atau lingkungan fisik, sebelum terorganisir dan diubah menjadi bentuk yang dimengerti dan dapat digunakan. M enurut Inmon (2005, p493) data adalah rekaman dari fakta, konsep, atau instruksi di dalam media penyimpanan untuk komunikasi, perolehan, dan pemrosesan oleh cara otomatis dan presentasi sebagai informasi yang dapat dimengerti oleh manusia. Informasi adalah data yang dapat dimengerti dan dievaluasi oleh manusia untuk memecahkan masalah atau membuat keputusan. Sehin gga dapat disimpulkan, data adalah fakta-fakta yang memuat kejadian, tempat dan subyek yang terjadi, dan informasi adalah data yang telah diolah dan menjadi berguna bagi perusahaan.

Upload: others

Post on 02-Sep-2019

5 views

Category:

Documents


0 download

TRANSCRIPT

7

BAB 2

LANDASAN TEORI

2.1 Data dan Informasi

Menurut Laudon (2006, p13), data adalah kumpulan fakta yang masih

mentah yang menjelaskan aktivitas-aktivitas yang terjadi dalam organisasi atau

lingkungan fisik, sebelum terorganisir dan diubah menjadi bentuk yang

dimengerti dan dapat digunakan.

Menurut Inmon (2005, p493) data adalah rekaman dari fakta, konsep,

atau instruksi di dalam media penyimpanan untuk komunikasi, perolehan, dan

pemrosesan oleh cara otomatis dan presentasi sebagai informasi yang dapat

dimengerti oleh manusia.

Informasi adalah data yang dapat dimengerti dan dievaluasi oleh manusia

untuk memecahkan masalah atau membuat keputusan. Sehingga dapat

disimpulkan, data adalah fakta-fakta yang memuat kejadian, tempat dan subyek

yang terjadi, dan informasi adalah data yang telah diolah dan menjadi berguna

bagi perusahaan.

8

2.2 Pengertian Database

Menurut Connolly (2005, p14), database adalah suatu kumpulan dari data

yang terhubung secara logis, dan deskripsi dari data ini, dirancang untuk

memenuhi kebutuhan informasi dari sebuah organisasi. Database bersifat

tunggal, memiliki tempat penyimpanan data yang besar di mana dapat digunakan

secara bersama-sama oleh banyak departemen dan user.

Menurut Inmon (2002, p388), “a database is a collection of interrelated

data stored (often with controlled, limited redundancy) according to a schema”

yang dapat diartikan bahwa database adalah sekumpulan penyimpanan data yang

berhubungan (sering dengan pengontrolan, redudansi yang terbatas) yang

berdasarkan suatu skema.

Berdasarkan definisi diatas, dapat disimpulkan bahwa database

merupakan suatu kumpulan data yang saling berhubungan dan terintegrasi, yang

dirancang untuk kebutuhan informasi perusahaan.

2.3 Pengertian Entity Relationship Modeling

Menurut Connoly dan Begg (2005, p342), salah satu aspek yang sulit

dalam perancangan database adalah kenyataan bahwa perancang, programmer

dan pemakai akhir cenderung melihat data dengan cara yang berbeda. Untuk

memastikan pemahaman secara alamiah dari data dan bagaimana data digunakan

oleh perusahaan dibutuhkan sebuah bentuk komunikasi non-teknis dan bebas dari

9

kebingungan. Berikut ini adalah notasi Entity Relationship Modeling menurut

Connoly dan Begg :

Relate to >

Gambar 2.1 Notasi Entity – Relationship Modeling

2.3.1 Entity Type

Menurut Connoly dan Begg (2005, p343), Entity type adalah

kumpulan objek-objek yang berproperti sama, dimana properti tersebut

diidentifikasikan memiliki keberadaan yang bebas.

2.3.2 Attribute

Menurut Connoly dan Begg (2005, p350-352), atribut adalah sifat

dari sebuah entity atau sebuah tipe relationship. Atribut menyimpan nilai

dari setiap entity occurrence dan mewakili bagian utama dari data yang

disimpan dalam basis data.

A B

Ent ity Name

Relationship Name

10

Atribut domain adalah sejumlah nilai yang diperkenankan untuk

satu atau lebih atribut. Setiap atribut yang dihubungkan dengan sejumlah

nilai disebut domain. Domain mendefinisikan nilai-nilai yang dimiliki

sebuah atribut yang sama dengan konsep domain pada model relational.

Simple attribute adalah atribut yang terdiri dari satu komponen

tunggal dengan keberadaan yang bebas. Simple attribute tidak bisa dibagi

lagi kedalam komponen yang lebih kecil.

Single value attribute adalah atribut yang hanya menyimpan nilai

tunggal untuk suatu sifat dari entity. Multi value entity adalah atribut yang

bisa menyimpan nilai lebih dari satu untuk suatu sifat entity.

Derived attribute adalah atribut yang menunjukkan nilai yang

diperoleh dari atribut yang berhubungan, tidak terlalu dibutuhkan dalam

tipe entity yang sama.

2.3.3 Relationship Type

Menurut Connoly dan Begg (2005, p346), relationship type

adalah sekumpulan hubungan antara satu atau lebih tipe-tipe entity.

Menurut Connoly dan Begg (2005, p347), derajat dari

relationship adalah jumlah dari partisipasi tipe entity dalam sebuah tipe

relationship tertentu. Sebuah relationship berderajat dua disebut binary,

berderajat tiga disebut ternary dan berderajat empat disebut quarternary.

11

2.3.4 Kunci

Menurut Connoly dan Begg (2005, p78), kunci relasi sangat

dibutuhkan untuk mengidentifikasi satu atau lebih atribut yang memiliki

nilai unik untuk setiap tuple dalam relasi. Macam-macam kunci relasi :

a. Composite key adalah kunci yang disusun berdasarkan lebih

dari satu atribut.

b. Candidate key adalah suatu atribut atau set minimal atribut

yang mengidentifikasikan secara unik suatu kejadian spesifik

dari entity.

c. Primary key adalah satu atribut atau set minimal atribut yang

tidak hanya mengidentifikasikan secara unik suatu kejadian

spesifik, tapi juga dapat mewakili setiap kejadian dari suatu

entity.

d. Alternative key adalah kunci kandidat yang tidak terpakai

sebagai kunci primer.

e. Foreign key adalah satu atribut yang melengkapi satu

hubungan (relationship) yang menunjuk ke induknya.

12

2.4 Pengertian OLTP (On-Line Transaction Processing)

Menurut Inmon (2005, p500) OLTP adalah lingkungan permrosesan

transaksi performance tingkat tinggi. OLTP (On-Line Transaction Processing)

menggambarkan kebutuhan sistem dalam ruang lingkup operasional dan

merupakan proses yang mendukung operasi bisnis sehari-hari.

OLTP dirancang untuk memungkinkan terjadinya pengaksesan secara

bersamaan oleh beberapa user terhadap sumber data yang sama dan mengatur

proses yang diperlukan. Sesuai dengan namanya, OLTP mengizinkan transaksi

untuk mengakses langsung ke database. Transaksi yang dilakukan termasuk

operasi insert, update, dan delete. Database OLTP biasanya bersifat relasional

dan dalam bentuk normal ketiga, serta yang terpenting, database OLTP dibangun

untuk mampu menangani banyak transaksi dengan performa tinggi.

Jadi dapat disimpulkan, bahwa OLTP memungkinkan banyak user untuk

mengakses secara bersamaan terhadap sumber database yang sama, dimana

database-nya bersifat relasional dan sudah ternormalisasi.

2.5 Pengertian Data warehouse

Menurut Connnolly (2005, p1151) , data warehouse adalah koleksi data

yang mempunyai sifat berorientasi pada subjek, terintegrasi, memiliki rentang

waktu, dan koleksi datanya tidak mengalami perubahan dalam mendukung

proses pengambilan keputusan ditingkatan manajerial.

13

Menurut Inmon (2002, p495), data warehouse adalah koleksi data yang

berorientasi subjek (subject oriented), terintegrasi (integrated) memiliki rentang

waktu (time variant), dan tidak mengalamai perubahan (non volatile) untuk

mendukung proses pembuatan keputusan manajemen.

Menurut McLeod (2004, p406), data warehouse adalah sebuah sistem

penyimpanan data yang berkapasitas besar, dimana data dikumpulkan dengan

menambahkan record baru daripada meng-update record yang sudah ada dengan

informasi baru. Data jenis ini digunakan hanya untuk proses pengambilan

keputusan dan bukan untuk kegiatan operasional perusahaan sehari-hari.

Berdasarkan pengertian-pengertian diatas, dapat disimpulkan bahwa data

warehouse adalah kumpulan-kumpulan data yang dapat mendukung proses

pengambilan keputusan dalam suatu perusahaan.

2.6 Karakteristik Data warehouse

Menurut Inmon (Connolly, 2005, p1151), data warehouse memiliki

karakteristik:

• Subject-oriented

Data warehouse diorganisasikan pada subjek-subjek utama dari

perusahaan (seperti pelanggan, produk, dan penjualan), bukan pada area-

area aplikasi utama (seperti faktur pelanggan, kontrol stok, dan penjualan

14

produk). Hal ini tercermin dalam kebutuhan untuk menyimpan data

pendukung keputusan daripada data berorientasi aplikasi.

• Integrated

Sumber data berasal dari sistem-sistem aplikasi perusahaan yang

berbeda-beda. Sumber data sering tidak konsisten misalnya perbedaan

format data. Integrasi sumber data harus dibuat konsisten dalam

menampilkan data agar dapat menyatukan pandangan user terhadap data.

• Time variant

Data dalam data warehouse hanya akurat dan valid pada suatu rentang

waktu tertentu.

Tabel 2.1 Perbandingan waktu data operasional dengan Data warehouse

Data Operasional Data Warehouse

Berisi current data value. Berisi snapshot data sesuai waktu

tertentu.

Horizon waktu dalam range 60-90

hari

Horizon waktu dalam range 5-10 tahun.

Element waktu adalah optional

sebagai key .

Element waktu memiliki key.

Data dapat dirubah. Sekali snapshot dibuat, record tidak

dapat dirubah.

15

• Non-volatile

Salah satu karakteristik data warehouse adalah nonvolatile. Dalam data

warehouse hanya ada 2 operasi data yaitu “load data” dan “acces data”

atau dengan kata lain hanya ada perintah insert dan select. Sehingga

konsekuensi logis bahwa pada desain fisikal dapat dilakukan optimisasi

akses terhadap data serta tidak terdapatnya redundancy data karena

terlebih dahulu sudah dilakukan penyaringan atau seleksi data, Data

warehouse hanya berisi “summary data”, data yang masuk sudah

mengalami transformasi serta terjadinya horizon waktu

Tabel 2.2 Perbandingan Sistem OLTP dengan Data warehouse

Sistem OLTP Sistem Data warehouse

Current Value Data Historical Data

Berorientasi Aplikasi Berorientasi Subjek

Data bersifat dinamis Data bersifat statis

Transaction Driven Analysis driven

Non-reduncancy (normalisasi) Redundancy (denormalisasi)

Menyimpan detail data Menyimpan detail, lightly dan highly

summarized data

Melayani banyak user (operational) Melayani sedikit user (managerial)

16

Mendukung keputusan harian Mendukung keputusan strategis

Sumber : (Connoly, 2005, p1153)

2.7 Struktur Data warehouse

Menurut Inmon (2005, p33), struktur data warehouse terdiri dari older

level of detail, current level of detail, lightly summarized data, dan highly

summarized data. Data yang mengalir ke dalam data warehouse berasal dari

lingkungan operasional. Biasanya transformasi data yang penting terjadi pada

perjalanan dari level operasional ke level data warehouse. Seiring berjalannya

waktu, data dari current detail dapat berubah menjadi older detail. Karena data

diringkas, data mengalami perubahan dari current detail ke lightly summarized

data, kemudian dari lightly summarized data menjadi highly summarized data.

Struktur data warehouse terdiri dari:

• Current Detail Data

Data yang aktif saat ini merupakan level terendah dari data

warehouse, dan biasanya memerlukan tempat penyimpanan (storage)

yang besar. Beberapa alasan mengapa current detail data menjadi

perhatian utama :

- Menggambarkan kejadian yang baru terjadi dan selalu menjadi

perhatian utama.

17

- Sangat besar jumlahnya dan disimpan pada tingkatan penyimpanan

terendah.

- Hampir selalu disimpan di media penyimpanan karena cepat diakses

tetapi mahal dan kompleks diatur.

- Biasa digunakan dalam membuat rekapitulasi data sehingga current

detail data harus akurat.

• Older Detail Data

Merupakan data historis yang bisa berupa hasil backup yang disimpan

dalam media penyimpanan yang terpisah dan dapat diakses kembali pada

saat tertentu. Penyusunan direktori untuk older detail data harus

berdasarkan umur data sehinga dapat memudahkan dalam mengakses.

• Lightly Summarized Data

Merupakan ringkasan dari current detail data, belum bersifat total

summary. Data-data ini memiliki tingkatan detail yang lebih tinggi dan

mendukung kebutuhan data warehouse pada tingkat departemen. Akses

terhadap data jenis ini biasanya digunakan untuk memantau kondisi yang

sedang dan sudah berjalan.

• Highly Summarized Data

Merupakan data yang bersifat total summary. Digunakan untuk

melakukan analisa perbandingan data berdasarkan urutan waktu dan

analisis yang menggunakan database multidimensi.

18

Gambar 2.2 Struktur Data Warehouse

(Johan Setiawan,”Teori Data Warehouse”)

2.8 Metadata

Metadata merupakan data tentang data, gambaran tentang struktur, isi,

kunci, indeks dari data. Metadata bukan merupakan data hasil dari kegiatan

operasional seperti current detail data, older detail data, lightly summarized data,

dan highly summarized data. Metadata memuat informasi penting dalam data

warehouse.

Metadata

Highly summarize

Light ly summarized(Data

Current det ail

Operational transformat io Old detail

19

Metadata digunakan dalam banyak fungsi antara lain :

• Sebagai direktori yang dipakai oleh user dalam mencari lokasi data

dalam data warehouse.

• Sebagai panduan pemetaan dalam proses transformasi dari data

operasional ke dalam lingkungan data warehouse.

• Sebagai panduan untuk proses detail data menjadi summary data untuk

diolah menjadi lightly summarized data dan kemudian menjadi highly

summarized data.

Metadata merupakan suatu bentuk jaringan yang sangat penting bagi

pengguna data warehouse. Data yang tersedia haruslah dapat digunakan oleh

pemakai dengan menggunakan istilah yang sesuai dengan cara pemakai dalam

melakukan pekerjaannya.

Karena data warehouse harus melayani banyak fungsi, metadata penting

memahami data yang sama dengan nama yang berbeda pula. Metadata dibuat

untuk menjawab kebutuhan dari suatu fungsi tertentu karena tiap departemen

biasanya menggunakan struktur data yang spesifik meskipun asal datanya sama.

2.9 Arsitektur Data Warehouse

Arsitektur Data Warehouse adalah sekumpulan aturan dari suatu

struktur yang memberikan kerangka suatu perancangan sistem. Arsitektur data

20

untuk data warehouse mempunyai komponen utama yaitu database yang dapat

dibaca.

Gambar 2.3 Arsitektur Data Warehouse

2.10 Bentuk Data warehouse

Didalam memutuskan bentuk mana yang akan kita gunakan dalam suatu

perusahaan, terlebih dahulu kita harus mengetahui kebutuhan yang kita perlukan

didalam menjalankan aplikasi yang ingin kita rancang. Bentuk umum yang

sering digunakan dalam data warehouse adalah dibagi atas 3 bentuk yakni:

1. Functional Data warehouse

Data warehouse fungsional diperoleh dari hasil kegiatan

operasional sehari-hari, data warehouse dibuat lebih dari satu dan

dikelompokkan berdasarkan masing-masing fungsi yang ada didalam

21

perusahaan seperti fungsi keuangan atau financial, fungsi marketing,

fungsi kinerja personalia, dan lain-lainnya. Keuntungan dari bentuk ini

adalah sistem mudah dibangun dengan biaya yang relatif murah

sedangkan kerugiannya adalah resiko kehilangan konsistensi data dan

terbatasnya kemampuan dalam pengumpulan data bagi pengguna.

Gambar 2.4 Functional Data Warehouse

(Johan Setiawan,”Teori Data Warehouse”)

2. Centralized Data warehouse

Centralized Data warehouse mempunyai bentuk seperti

functional data warehouse, namun disini sumber data terlebih dahulu

dikumpulkan atau diintegrasikan pada suatu tempat terpusat, kemudian

22

barulah data tersebut dibagi-bagi berdasarkan fungsi-fungsi yang

dibutuhkan oleh perusahaan, dan bentuk ini sering digunakan oleh

perusahaan-perusahaan yang belum memiliki jaringan eksternal.

Keuntungan dari bentuk ini adalah data benar-benar terpadu karena

konsistensinya yang tinggi sedangkan kerugiannya adalah biaya yang

mahal serta perlu waktu yang cukup lama dalam membangun bentuk

ini.

Gambar 2.5 Centralized Data warehouse

(Johan Setiawan,”Teori Data Warehouse”)

3. Distributed Data warehouse

Distributed Data warehouse menggunakan Gateway yang

berguna sebagai jembatan antara lokasi data warehouse dengan

workstation yang menggunakan sistem yang beraneka ragam atau

berbeda, sehingga pada bentuk ini memungkinkan kita untuk

23

mengakses sumber data yang berada diluar lokasi perusahaan

(eksternal). Data warehouse ini memungkinkan tiap departemen dalam

perusahaan membangun sistem operasionalnya sendiri, serta dapat

membangun pengumpulan data fungsionalnya masing-masing dan

menggabungkan bagian-bagian tersebut dengan teknologi client-server.

Keuntungan dari bentuk ini adalah kelebihan dalam mengakses

data dari luar perusahaan yang telah mengalami sinkronisasi terlebih

dahulu dan tetap terjaga konsistensinya, namun kerugian dari bentuk ini

adalah bentuk yang paling mahal dan kompleks untuk diterapkan,

karena sistem operasinya dikelola secara terpisah.

Gambar 2.6 Distributed Data warehouse

(Johan Setiawan,”Teori Data Warehouse”)

24

2.11. Perancangan Data warehouse

Menurut metodologi Kimball (Connolly, 2005, p1187), terdapat

Sembilan tahapan dalam membangun data warehouse (nine step methodology),

yaitu:

1. Pemilihan proses (choosing the process)

Proses yang mengacu pada subyek yang dibutuhkan oleh data mart.

Pada tahap ini, ditentukan proses bisnis apa yang akan digunakan data

warehouse.

2. Pemilihan grain (choosing the grain)

Tahap yang menentukan apa yang dipresentasikan oleh record tabel

fakta. Pada tahap ini, akan ditentukan tingkat detail data.

3. Identifikasi dan penyesuaian dimensi (identifying and conforming the

dimension)

Membuat dimensi yang dibutuhkan untuk menjelaskan seluruh isi

yang terdapat pada tabel fakta. Sekumpulan dimensi yang terbangun dengan

baik membuat data mart menjadi mudah dimengerti dan mudah digunakan.

Tabel dimensi juga memuat hubungan dari measurement.

4. Pemilihan fakta (choosing the fact)

Tahap pemilihan fakta yang dimaksudkan sebagai sebuah proses yang

menentukan tabel fakta yang dapat mengimplikasikan semua grain yang

25

digunakan pada data mart. Keseluruhan fakta harus diekspresikan pada level

yang dinyatakan oleh grain. Pada tahap ini juga diidentifikasi measurement

yang diperlukan.

5. Penyimpanan pre-calculation di tabel fakta (storing pre-calculation in the

fact table)

Setelah tabel fakta terpilih, setiap tabel fakta tersebut harus diperiksa

ulang untuk menentukan apakah ada fakta-fakta yang dapat diterapkan pre-

calculation dan dilakukan penyimpanan pada tabel fakta.

6. Memastikan tabel dimensi (Roundingn out the dimension table)

Pada tahap ini dilakukan pemeriksaan ulang pada tabel dimensi dan

menambah sebanyak mungkin deskripsi teks dalam dimensi, serta

menentukan hierarki atribut dimensi untuk mempermudah proses analisis.

Gambaran teks haruslah mudah digunakan dan dimengerti user.

7. Pemilihan durasi database (choosing the duration of the database)

Mengukur waktu periode database untuk beberapa tahun kebelakang.

Pada beberapa perusahaan ada kebutuhan untuk melihat data pada waktu

yang sama, atau data setahun, atau dua tahun sebelumnya.

8. Melacak perubahan dari dimensi secara perlahan (tracking slowly changing

dimension)

26

Dimensi dapat berubah secara perlahan seiring berjalannya waktu dan

kebutuhan. Perubahan dalam dimensi yang dimaksud terjadinya perubahan

data (update) dari dimensi. Untuk memantau perubahan tersebut, digunakan

tipe-tipe slowly changing dimension (SCD), yaitu:

• Tipe 1 : Menulis ulang dimensi yang berubah

• Tipe 2 : Menambah baris baru pada tabel dimensi dengan surrogate key

yang baru, tetapi masih menggunakan id yang sama.

• Tipe 3 : Adanya penambahan atribut alternative yang baru sehingga

penggunaan record yang lama dan baru bisa digunakan secara bersamaan

pada satu record dimensi yang sama.

9. Penentuan prioritas dan model query (deciding the query priorities and the

query modes)

Pada tahap ini, kita menentukan masalah desain fisik dari data

warehouse yaitu dengan menentukan urutan fisik dari tabel fakta pada media

penyimpanan dan adanya penggunaan agregasi. Selain itu pada tahap ini

dilakukan pertimbangan terhadap masalah indexing, backup, dan security. Isu

rancangan fisik yang paling kritis yang mempengaruhi persepsi end-user data

mart.

27

2.12 Perancangan Data Warehouse dengan Skema Bintang

Menurut Connoly (2005, p1183), skema bintang adalah sebuah struktur

logika yang mempunyai sebuat tabel fakta yang berisi data fakta di tengah dan

dikelilingi oleh tabel-tabel dimensi yang berisi data referensi atau keterangan

yang biasanya dapat didenormalisasi.

Menurut Poe (1996, p33) metode yang digunakan untuk merancang data

warehouse adalah dengan menggunakan skema bintang, yaitu metode

perancangan yang dilakukan dengan struktur yang sederhana dengan

menggunakan beberapa tabel atau jalur yang terhubung dengan baik dan jelas.

Dengan menggunakan skema bintang ini akan menghasilkan waktu

respon yang lebih cepat dalam query data dibandingkan dengan proses

transaksional dengan menggunakan normalisasi. Selain itu skema bintang

memudahkan end user untuk memahami struktur database pada data warehouse

yang dirancang.

Keuntungan dari penggunaan skema bintang:

1. Respon data lebih cepat daripada perancangan database operasional.

2. Mempermudah dalam hal modifikasi atau pengembangan data warehouse

yang terus menerus.

3. End-user dapat menyesuaikan cara berfikir dan menggunakan data.

4. Menyederhanakan pemahaman dan penelusuran metadata bagi pemakai

dan pengembang.

28

Tabel dalam Skema Bintang

Dalam skema bintang terdapat 2 tipe tabel yaitu tabel fakta dan tabel

dimensi. Tabel fakta disebut juga tabel mayor terdiri dari data kuantitatif atau

data fakta mengenai bisnis, informasi yang diquery. Informasi ini sering diukur

secara numerik dan dapat mengandung banyak kolom dan baris. Tabel dimensi

disebut juga tabel minor karena lebih kecil dan mencerminkan dimensi bisnis.

Jenis Skema Bintang

Dengan penggunaanya terdapat 2 jenis skema bintang yang tergantung

dengan kebutuhan, yaitu Skema Bintang Sederhana dan Skema Bintang

Majemuk yang akan terinci lebih lanjut berikut ini:

Skema Bintang Sederhana

Dalam skema bintang sederhana, setiap tabel

mempunyai primary key yang terdiri dari sebuah kolom atau

lebih. Primary key akan membuat setiap baris menjadi unik.

Primary key tersebut pada tabel fakta akan menjadi foreign key.

Primary key pada tabel fakta, terdiri dari satu atau lebih foreign

key.

29

Gambar 2.7 Skema Bintang Sederhana

(Johan Setiawan,”Teori Data Warehouse”)

Pada gambar menunjukan hubungan antara satu tabel

fakta dan tiga tabel dimensi. Tabel utama terdapat primary key

yang terdiri dari tiga foreign key, yaitu kunci-1, kunci-2 dan

kunci-3, yang masing– masing merupakan primary key di tabel

masing-masing.

Dalam sebuah skema bintang, dapat juga memiliki lebih

dari satu tabel fakta, karena adanya fakta yang tidak saling

berhubungan. Tabel semacam ini umumnya digunakan untuk

jumlah data yang besar dan untuk berbagai macam tabel data yang

teragregasi

30

Gambar 2.8 Skema Bintang Dengan Beberapa Tabel Fakta

(Johan Setiawan,”Teori Data Warehouse”)

Pada gambar diatas terdapat dua tabel fakta dan tiga tabel

dimensi yang memperlihatkan hubungan many to one antara foreign

key pada kedua tabel fakta tersebut dengan primary key pada

masing masing tabel dimensi.

Tabel dimensi mungkin juga mengandung foreign key yang

mereferensikan primary key di tabel dimensi yang lain. Tabel

dimensi yang direferensikan ini dinamakan outboard atau

secondary dimension tabel.

31

Gambar 2.9 Skema Bintang Dengan Tabel Dimensi Tambahan

(Johan Setiawan,”Teori Data Warehouse”)

2.13 ETL (Extract, Transform dan Loading)

ETL merupakan proses-proses dalam data warehouse yang meliputi :

1. mengekstrak data dari sumber-sumber eksternal

2. mentransformasikan data

3. memasukkan data ke bentuk akhir, yaitu data warehouse.

Tujuan ETL adalah mengumpulkan, menyaring, mengolah dan

menggabungkan data-data dari berbagai sumber untuk disimpan ke dalam data

warehouse.

32

Karakteristik dari data ETL antara lain:

• Detailed

Data detail menyediakan fleksibilitas bagi user untuk membentuk

stuktur data menjadi struktur yang paling tepat sesuai dengan yang

dibutuhkan.

• Historical

Data periodik digunakan untuk menyediakan historical perspective.

• Normalized

Normalized data menyediakan integritas dan fleksibilitas yang lebih

baik dibandingkan dengan denormalized data. Pada denormalisasi, data

biasanya digunakan untuk mengakses secara periodik menggunakan

batch process. Beberapa struktur data warehouse adalah denormalisasi.

• Comprehensive

Reconcile data menggambarkan perspektif yang luas, yang dirancang

sesuai model data perusahaan.

• Timely

Untuk data warehousing, data harus lengkap sehingga pembuat

keputusan dapat bertindak saat itu juga.

• Quality Control

33

Kualitas data tidak diragukan dan integritas, karena data sudah

diringkas ke dalam data mart dan digunakan untuk pengambilan

keputusan.

2.14 Pengertian Real Time Data warehouse

Real time data warehouse adalah pengembangan dari data warehouse

tradisional dengan mengurangi waktu proses ETL dari database source ke

database OLAP (data warehouse), sehingga jeda waktu dapat ditekan seminimal

mungkin. Dalam hal ini, bukan berarti tidak ada jeda waktu sama sekali dalam

proses tersebut.

Dalam real-time data warehouse, terdapat 2 hal penting yang harus

dilakukan :

1. Mengurangi atau menghilangkan waktu yang diperlukan untuk

mendapatkan dan mengganti data dari sistem sumber

2. Menghilangkan, atau mengurangi sebanyak mungkin waktu yang

diperlukan untuk extract, transform, dan loading data

Menurut Mike Schmitz, untuk membangun real time data warehouse,

dapat dilakukan dengan dua cara, yaitu:

1. Continuous

Proses ETL secara terus menerus dari database source ke data

warehouse, menggunakan trigger.

34

2. Periodic batch

Menggunakan job dalam menjalankan proses transform ke data

warehouse.

2.14.1 Proses CTF (Capture, Transform, Flow)

Proses ETL merupakan proses yang membutuhkan resource yang

besar dan waktu yang panjang. Kebanyakan tools ETL juga bukan

merupakan engine real-time. Karena pertumbuhan bisnis dan peningkatan

data, proses ETL semakin tidak efektif untuk dipakai. Karena itulah

diberikan solusi yaitu proses CTF (Capture, Transform, Flow)

Gambar 2.10 Proses CTF dalam Data Warehouse

(www.grcdi.nl/considerations.pdf

35

A. Capture

Terdapat beberapa teknik digunakan oleh data

integration/software tambahan untuk memindahkan data. Pada dasarnya,

integration tools melakukan salah satu ”push” dan ”pull” pada data yang

akan dipindah pada sebuah event driven atau polling basis.

Push integration dimulai pada sumber setiap target yang ter-

subscribe, artinya, seiring perubahan terjadi, maka akan terjadi capture

dan pengiriman atau “push” melalui setiap target.

Pull integration dimulai pada target oleh setiap target yang di-

subscribe. Dengan kata lain, sistem target meng-extract perubahan yang

di-capture dan melakukan “pull” ke database local.

Event driven integration merupakan teknik yang melibatkan

kejadian pada sumber memulai capture dan transmisi perubahan yang

terjadi.

Polling melibatkan proses pengawasan yang menyelidiki status

untuk memulai capture dan aplikasi perubahan database.

”Change data capture”, setiap terjadi penambahan, perubahan,

atau penghapusan dalam lingkungan database, secara otomatis di-capture

dan dilakukan ”push” secara real-time ke data warehouse. Update pada

data warehouse dilakukan secara incremental, sehingga hanya data

terbaru saja dari update terakhir yang akan di-push ke data warehouse.

36

B. Transformation

Proses transform data melalui beberapa lingkungan komputer dan

database bisa memperbaiki masalah pada saat menggabungkan informasi

untuk data warehouse.

Transformasi data dan integrasi software bisa memenuhi

kebutuhan ini untuk membuat data warehouse lebih berguna dan

bermakna untuk user.

Proyek data warehouse memerlukan data operasional di ubah

formatnya, peningkatan dan standarnisasi untuk mengoptimalkan

performance data warehouse.

C. Flow

Proses flow menunjuk kepada proses melengkapi bahan dari data

yang telah di-transfrom pada real time dari sistem operasional kesatu atau

lebih sistem subscriber. Aliran data harus lancar dan arus informasi bits

yang berlanjut sambil melawan batch loading dari data.

2.15 Oracle Real Time Data Warehouse

Oracle secara bertahap telah memperkenalkan fitur-fitur dalam database

yang telah mensupport real time data warehouse, fitur-fitur tersebut meliputi :

1. change data capture

37

2. external tabel, tabel functions, pipelining, dan merge command

3. fast refresh materialized views

Dalam penulisan ini, hanya akan dijelaskan fitur change data capture

yang akan digunakan dalam pembuatan skripsi kami.

2.15.1 Change Data Capture (CDC)

Dalam proses extract hal yang sangat penting adalah incremental

extraction, yang disebut Change Data Capture. Pada saat data warehouse

mengambil data dari sistem operasional, maka data warehouse

memerlukan data yang hanya telah mengalami perubahan sejak proses

extract terakhir. Change Data Capture merupakan kunci yang

memungkinkan teknologi real time data warehousing.

Change Data Capture adalah sebuah set software dengan pola

design untuk menetapkan dan mengecek data yang telah berubah dalam

database sehingga data tersebut dapat diambil sebagai data yang berubah.

Change Data Capture (CDC) adalah pendekatan innovative untuk

data terintegrasi yang berdasarkan proses identifikasi, menangkap, dan

mengirim perubahan yang terjadi kedalam sumber data perusahaan.

Change Data Capture merupakan elemen penting untuk

mengoptimalkan proses extract dari source sistem. Chage data capture

tidak meng-extract ulang semua data dari sumber, tetapi hanya

mengambil data yang berubah dan terbaru. Change Data Capture

38

membantu mengidentifikasi data dalam sumber sistem yang telah

berubah sejak proses extract terakhir. Dengan Change Data Capture,

proses extract data berlangsung pada waktu yang sama dengan operasi

INSERT, UPDATE dan DELETE yang terjadi pada tabel sumber, dan

data yang berubah disimpan di dalam database change tabel. Data yang

berubah, saat ditangkap, lalu tersedia untuk target sistem dalam suatu

cara terkendali, menggunakan database view.

Change Data Capture melakukan extract dengan efisien hanya

pada data yang baru, telah berubah datanya, sehingga change data

capture melakukan extract pada volume data yang lebih kecil. Change

data capture dapat mengidentifikasi data yang berubah pada source

sistem.

Oracle Change Data Capture dapat mengatasi masalah-masalah berikut :

1. Oracle Change Data Capture menyediakan kemampuan untuk

menangkap data yang berubah dari oracle database. Yang dapat

diambil pada keadaan synchronously dan asynchronously dengan

memanfaatkan archive redo log.

2. Oracle Change Data Capture menyediakan kemampuan tidak

hanya menangkap data yang berubah, tapi juga mempublikasikan

data tersebut dan mengijinkan aplikasi untuk menggunakan data

tersebut.

39

3. Oracle Change Data Capture framework dapat digunakan untuk

mengoptimalkan proses ETL (Extract, Transformation dan

Loading).

Change Data Capture memiliki komponen-komponen :

1. Source sistem : OLTP database dalam database Oracle. Karena

CDC menangkap perubahan yang terjadi dalam sumber tabel

secara terus menerus dan real time, overhead yang drastis terjadi

selama waktu penangkapan.

2. Change Source : (SYNC_SOURCE merupakan sistem yang

dihasilkan oleh sumber perubahan), menampilkan sistem sumber

dan memuat set perubahan (koleksi dari tabel yang berubah).

3. Change Set : (SYNC_SET merupakan sistem yang dihasilkan dari

set perubahan) merupakan koleksi dari satu atau banyak tabel

yang berubah.

4. Change Tabel merupakan tabel relational yang memuat semua

sumber data tabel yang berubah dan juga sistem metadata yang

dibutuhkan untuk mengatur tabel yang berubah. Publisher,

sebagai DBA yang bertanggung jawab untuk mensetting CDC

data sistem dan mengaturnya. Publisher mengidentifikasi tabel

sumber dimana data yang berubah harus ditangkap dan

mengirimnya ke dalam tabel yang berubah. Publisher juga

40

mengatur akse untuk mempublikasikan data tersebut dengan

menggunakan hak akses seperti GRANT dan REVOKE.

5. Subscriber merupakan aplikasi data warehouse yang

menggunakan data yang berubah.

Arsitektur Change Data Capture didasarkan pada

publisher/subscriber model. Publisher menangkap data yang berubah

tersebut dan membuat data tersebut tersedia untuk subscriber. Subscriber

menggunakan data yang diperoleh dari publisher. Pada umumnya,

Change Data Capture sistem mempunyai satu publisher dan banyak

subscriber.

Publisher pertama kali mengidentifikasi tabel sumber dimana

perubahan data perlu untuk ditangkap. Kemudian, menangkap data yang

berubah tersebut dan menyimpannya dalam tabel perubahan yang

diciptakan. Lalu, mengijinkan subscriber mengawasi akses kepada data

tersebut

Change Data Capture dapat menangkap dan menerbitkan

perubahan data yang dilakukan dalam salah satu mode berikut :

1. Synchronous

41

Dengan menggunakan trigger pada source database,

setiap perubahan data akan langsung ditangkap setelah operasi

DML (INSERT, UPDATE dan DELETE). Dalam mode ini,

perubahan data ditangkap sebagai bagian dari transaksi saat

merubah tabel sumber.

Gambar 2.11 Synchronous Change Data Capture

(Oracle Database Data Warehousing Guide 10g Release 2)

2. Asynchronous

Perubahan data ditangkap setelah SQL statement

menjalankan operasi DML, dengan menggunakan kelebihan

dari data yang dikirim pada redo log file. Dalam mode ini,

42

perubahan data tidak ditangkap sebagai bagian dari transaksi

yang merubah tabel sumber dan karena itu tidak

mempengaruhi transaksi.

Gambar 2.12 Asynchronous AutoLog Change Data Capture

(Oracle Database Data Warehousing Guide 10g Release 2)

Berikut ini merupakan keuntungan dari menangkap perubahan

data menggunakan Change Data Capture :

1. Completeness

43

Change Data Capture dapat menangkap semua

dampak dari operasi insert, update dan delete, termasuk nilai

dari sebelum dan sesudah operasi update.

2. Performance

Asynchronous Change Data Capture dapat

dikonfigurasi untuk meminimalkan dampak performance

dalam sumber database.

3. Interface

Change Data Capture berisi paket PL/SQL

DBMS_CDC_PUBLISH dan DBMS_CDC_SUBSCRIBE, yang

memberikan kemudahan untuk digunakan dalam mem-publish

dan subscribe interface.

4. Cost

Change Data Capture mengurangi biaya pengeluaran

karena proses ini menyederhanakan proses extract dari

perubahan data dari database sumber.