bab 2 landasan teori 2.1 database -...
TRANSCRIPT
7
BAB 2
LANDASAN TEORI
2.1 Database
Sebelum dikenal database, penyimpanan data menggunakan pendekatan
berbasis file. Namun pendekatan ini memiliki kelemahan dalam pengaksesan data
dari dua atau lebih file karena data dari masing-masing file terpisah dan terisolasi.
Kelemahan lain dari pendekatan ini yaitu duplikasi data yang tidak terkontrol,
data dependence, misalnya diperlukannya suatu program baru untuk mengubah
struktur field, format file yang tidak compatible karena struktur file tergantung
aplikasi bahasa pemrograman, misalnya file hasil bahasa pemrograman C sulit
diproses bersama-sama dengan file hasil program COBOL. Selain itu, pendekatan
berbasis file mempunyai query yang tetap karena sangat tergantung pada program
aplikasi sehingga tidak dapat menangani query tambahan (Connoly, 2002, p12).
Dengan munculnya teknologi media penyimpanan data, yaitu Direct
Access Storage Device (DASD), cara penyimpanan dan pengaksesan data
berkembang pesat yang memicu timbulnya database (Inmon, 2002, p4). DASD
sendiri adalah media penyimpanan yang berbeda dengan magnetic type, di mana
pengaksesan ke sebuah data yang diinginkan dapat dilakukan secara langsung
begitu mengetahui alamat data tersebut dalam media penyimpanan, tanpa harus
melalui data lainnya.
8
2.1.1 Pengertian Data
Menurut Hall (2001, p14), data adalah fakta yang dapat atau tidak dapat
diproses (disuling, dirangkum atau diperbaiki) dan tidak berpengaruh secara
langsung pada user. Sebaliknya, informasi menyebabkan user melakukan suatu
tindakan yang dapat ia lakukan atau tidak dilakukan.
Berdasarkan ini dapat dilihat bahwa data merupakan suatu bentuk
keruangan yang belum diolah atau dimanipulasi. Data yang didapatkan pada suatu
perusahaan umumnya diperoleh dari hasil kegiatan operasi sehari-hari atau hasil
dari transaksi yang dilakukan.
2.1.2 Pengertian Database
Menurut Connolly (2002, p14), database adalah kumpulan data yang
berhubungan secara logikal, dan penjelasan dari data ini, dirancang untuk
menemukan informasi yang dibutuhkan oleh perusahaan. Sedangkan menurut
Wikipedia (http://en.wikipedia.org/wiki/Database), database merupakan
kumpulan elemen data atau fakta yang disimpan di komputer secara sistematis.
Berdasarkan pengertian database di atas, dapat disimpulkan bahwa
database merupakan kumpulan data yang berhubungan secara sistematis untuk
memenuhi kebutuhan informasi perusahaan. Dengan database, data bukan hanya
dapat digunakan oleh satu bagian perusahaan saja tapi dapat juga digunakan
secara bersama-sama oleh bagian lainnya.
9
2.1.3 Pengertian DBMS (Database Management System)
DBMS adalah sistem perangkat lunak yang memungkinkan user untuk
mendefinisikan, membuat, memelihara, dan mengontrol akses ke database
(Connoly, 2002, p16). Sedangkan menurut Wikipedia
(http://en.wikipedia.org/wiki/Database), DBMS adalah program komputer yang
digunakan untuk mengatur sebuah database.
Dari definisi DBMS di atas dapat disimpulkan bahwa DBMS merupakan
perangkat lunak yang digunakan untuk membuat struktur, memasukkan,
memelihara, mengatur dan mengakses data. Dibandingkan dengan pendekatan
berbasis file yang struktur fisikal dan penyimpanan datanya sangat tergantung
pada program aplikasi, pada pendekatan database, struktur fisikal dan
penyimpanan data diatur oleh DBMS.
2.2 Pengertian Data Mart dan Data Warehouse
2.2.1 Pengertian Data Mart
Data warehouse dan data mart didefinisikan dan digunakan secara
terpisah di dalam sistem data warehouse. Menurut Alex Berson (2000, p27), data
mart adalah kumpulan data yang lebih kecil dari data warehouse yang digunakan
untuk melakukan analisis bisnis di satu divisi. Data mart menurut Connoly (2002,
p1067) adalah bagian dari data warehouse yang mendukung kebutuhan dari
departemen atau fungsi bisnis tertentu.
Data mart dapat didefinisikan sebagai bagian yang lebih kecil dari data
warehouse yang berfokus dalam departemen atau fungsi bisnis tertentu. Dengan
10
demikian, jumlah data pada data mart lebih sedikit dari jumlah data pada data
warehouse.
2.2.2 Pengertian Data Warehouse
Terdapat bermacam-macam pengertian dari data warehouse, akan tetapi
pada dasarnya mempunyai inti yang sama. Minnesota Historical Society
(www.mnhs.org/preserve/records/dwintro.html) mengemukakan “Data
warehouses are computer based information systems that are home for
‘secondhand’ data that originated from either another application or from an
external system or source. Warehouses optimize database query and reporting
tools because of their ability to analyze data, often from disparate databases and
in interesting ways” yang mana artinya suatu sistem informasi berbasiskan
komputer yang merupakan tempat untuk data “secondhand” yang berasal baik itu
dari aplikasi lain ataupun dari sebuah sumber atau sistem eksternal.
Sedangkan Creative Data (www.credata.com/research/terminology.html)
mengartikan “A database built to support information access. Typically a data
warehouse is fed from one or more transaction databases. The data needs to be
cleaned and restructured to support queries, summaries, and analyses” yang
mana data warehouse dibangun untuk mendukung akses informasi. Data
warehouse menurut Peterson (2000, p54) adalah kumpulan dari seluruh data
perusahaan yang digunakan untuk melakukan analisis bisnis secara keseluruhan.
Jadi data warehouse merupakan kumpulan data baik yang berasal dari internal
ataupun eksternal perusahaan yang mendukung analisis bisnis secara keseluruhan.
11
2.3 Kegunaan Data Warehouse
Menurut Wikipedia (http://en.wikipedia.org/wiki/Data_warehouse),
berikut kegunaan data warehouse :
Pembuatan laporan
Pembuatan laporan adalah salah satu kegunaan data warehouse
yang paling umum. Dengan menggunakan query-query sederhana dalam
data warehouse, dapat dihasilkan informasi per tahun, per kuartal, per
bulan, atau bahkan per hari. Query-query tersebut digunakan dengan
tujuan memperoleh jawaban atas pertanyaan-pertanyaan khusus, seperti
kapan, siapa, di mana, dan sebagainya.
OLAP (Online Analytical Processing)
OLAP adalah proses per bagian untuk lingkungan data mart. Data
warehouse digunakan dalam melakukan analisa bisnis untuk menyelidiki
kecenderungan pasar dan faktor-faktor penyebabnya karena dengan
adanya data warehouse, semua informasi baik rincian maupun ringkasan
yang dibutuhkan dalam proses analisa mudah didapat. Dalam hal ini, data
warehouse merupakan tool yang handal untuk analisa data yang kompleks.
Data mining
Penggunaan data warehouse dalam pencarian pola dan hubungan
data, dengan tujuan membuat keputusan bisnis bagi para pihak manajemen.
Dalam hal ini, software dirancang untuk pola statistik dalam data untuk
mengetahui kecenderungan yang ada, misalnya kecenderungan pasar akan
suatu produk tertentu.
12
Proses informasi eksekutif
Data warehouse untuk mencari ringkasan informasi yang penting
dengan tujuan membuat keputusan bisnis, tanpa harus menjelajahi
keseluruhan data. Dengan menggunakan data warehouse, segala laporan
telah diringkas, dan dapat pula diketahui rinciannya secara lengkap,
sehingga mempermudah proses pengambilan keputusan, dan data pada
laporan data warehouse menjadi sangat informatif bagi user, dalam hal ini
pihak eksekutif.
2.4 Bentuk Data Warehouse
Menurut Prabowo (1996), terdapat 3 (tiga) bentuk data warehouse yaitu
functional data warehouse, centralized data warehouse, dan distributed data
warehouse. Berikut akan dijelaskan masing-masing bentuk data warehouse
tersebut.
2.4.1 Functional Data Warehouse
Functional data warehouse ini merupakan bentuk database yang mana
data warehouse dibuat lebih dari satu dan dikelompokkan berdasarkan masing-
masing fungsi yang ada dalam perusahaan, seperti fungsi financial / keuangan,
fungsi marketing/ pemasaran, fungsi kinerja personalia, dan lain-lain. Keuntungan
dari bentuk ini adalah sistem akan mudah dibangun dengan biaya yang relatif
murah. Kerugian dari penggunaan bentuk ini adalah resiko kehilangan konsistensi
data dan terbatasnya kemampuan user dalam hal pengumpulan data.
13
2.4.2 Centralized Data Warehouse
Centralized data warehouse ini merupakan database fisikal tunggal yang
memuat semua data untuk area fungsional yang khusus, departemen, divisi, atau
perusahaan. Data warehouse ini digunakan ketika terdapat kebutuhan akan data
informasional dan terdapat banyak end-user yang sudah terhubung ke komputer
pusat atau jaringan.
Bentuknya menyerupai functional data warehouse, akan tetapi sumber
datanya lebih dahulu dikumpulkan atau diintegrasikan pada suatu tempat terpusat,
baru kemudian data tersebut dibagi-bagi berdasarkan fungsi-fungsi yang
dibutuhkan oleh perusahaan. Bentuk data warehouse terpusat ini sering
digunakan oleh perusahaan-perusahaan yang belum mempunyai jaringan
eksternal. Keuntungan bentuk centralized data warehouse ini adalah data benar-
benar terpadu karena konsistensi yang tinggi. Namun demikian membutuhkan
waktu yang lama dan biaya yang mahal untuk membangun bentuk data
warehouse yang seperti ini.
2.4.3 Distributed Data Warehouse
Distributed data warehouse adalah data warehouse dimana komponen
tertentu dari data warehouse tersebut didistribusikan melewati sejumlah database
fisikal yang berbeda. Distributed data warehouse biasanya melibatkan data yang
paling teredundansi, dan sebagai akibatnya, menimbulkan proses load dan update
yang sangat kompleks.
14
Distibuted data warehouse ini menggunakan gateway yang berfungsi
sebagai jembatan antara lokasi data warehouse dengan workstation yang
menggunakan sistem yang beranekaragam, sehingga pada bentuk data warehouse
ini memungkinkan kita untuk mengakses sumber data yang terdapat di luar lokasi
perusahaan (eksternal). Bentuk data warehouse ini mempunyai kelebihan dalam
hal pengaksesan data dari luar perusahaan yang telah mengalami sinkronisasi
terlebih dahulu dan tetap terjaga konsistensinya. Tetapi bentuk ini juga
mempunyai kerugian yaitu merupakan bentuk yang paling mahal dan paling
kompleks untuk diterapkan karena sistem operasinya dikelola secara terpisah.
2.5 Karakteristik Data warehouse
Menurut Connoly (2002, p1047), karakteristik data warehouse adalah
nonvolatile, berorientasi subjek, time-variant dan terintegrasi. Dengan
karakteristik tersebut, data warehouse dapat mendukung proses pengambilan
keputusan oleh pihak manajemen.
Adapun karakteristik-karakteristik tersebut akan dijelaskan lebih rinci
pada uraian berikut.
2.5.1 Berorientasi Subjek
Data warehouse disusun berdasarkan subjek-subjek yang ada dalam
sebuah perusahaan, dan bukannya berorientasi pada proses atau fungsi aplikasi
tertentu. Dalam pengaksesan data user pun beorientasi pada subjek tertentu.
15
Informasi pada data warehouse ditampilkan berdasarkan subjek-subjek
atau area peminatan yang spesifik. Data dimanipulasi sedemikian rupa sehingga
menyediakan informasi mengenai sebuah subjek secara khusus.
2.5.2 Terintegrasi
Data warehouse harus terintegrasi karena sumber data yang digunakan
secara bersama-sama dalam data warehouse berasal dari sistem aplikasi
perusahaan yang berbeda-beda. Hal ini menyebabkan format data yang digunakan
berbeda-beda atau tidak konsisten.
Data dalam data warehouse disimpan dalam suatu format yang konsisten
(penamaan variable, ukuran-ukuran, atribut fisik). Sumber data yang terintegrasi
harus konsisten untuk menampilkan view data yang seragam bagi user.
2.5.3 Time Variant
Data yang terdapat dalam data warehouse hanya akurat dan valid pada
titik dalam periode atau interval waktu tertentu (semester, tahun fiskal, atau
kuartal). Hal ini membantu dalam membentuk pengertian bisnis, sebagai contoh,
data hasil penjualan produk X pada kuartal pertama tahun 2001 di kota B.
Dengan data warehouse dapat dihasilkan data historical. Data historical
tersebut dapat digunakan untuk perbandingan trend dan forecasting di masa yang
akan datang.
16
2.5.4 Non – volatile
Data warehouse bersifat read-only, tidak dapat di-update secara real time
tetapi dapat di-refresh dari sistem operasional. User tidak bisa mengubah data
yang terdapat di dalamnya. Data baru selalu ditambahkan sebagai suplemen ke
dalam database, bukan me-replace data yang sudah ada.
Pada data warehouse hanya ada dua kegiatan memanipulasi data yaitu
loading data (mengambil data yang dibutuhkan dari data warehouse) dan akses
data (proses mengakses data warehouse), seperti melakukan Query atau
menampilkan laporan yang dibutuhkan. Dalam data warehouse tidak ada kegiatan
update data.
2.6 Struktur Data warehouse
Menurut Inmon (2002, p35) terdapat tingkat detil data yang berbeda dalam
data warehouse mulai dari current detail data, old detail data, lightly summarized
data dan highly summarized data. Tingkat detil data tersebut merupakan hasil
transformasi data yang terjadi pada jalur dari tingkat operasional menuju tingkat
data warehouse.
Perbedaan tingkat detil data ini dikenal dengan struktur data warehouse.
Di bawah ini akan dijelaskan lebih lanjut mengenai struktur data warehouse.
17
Gambar 2.1 Gambar Struktur Data warehouse
(Sumber : Inmon, 2002, p36)
2.6.1 Current Detail Data
Current detail data berisi data yang mencerminkan keadaan yang sedang
berjalan saat ini. Bagian ini sangat penting karena merefleksikan kejadian yang
sedang berlangsung dalam sebuah perusahaan. Berukuran sangat besar karena
merupakan tingkat terendah dan menyimpan semua informasi dan data yang ada
dalam perusahaan.
Current detail data menjadi perhatian utama, hal ini disebabkan karena:
merefleksikan kejadian yang sedang berlangsung dalam sebuah
perusahaan.
jumlah datanya sangat banyak dan disimpan pada tingkat penyimpanan
terendah.
biasanya disimpan dalam media penyimpanan agar cepat diakses tapi
mahal dan pengaturannya kompleks.
18
digunakan untuk merekapitulasi data sehingga current detail data harus
akurat.
2.6.2 Old Detail Data
Merupakan data histori dari perusahaan yang merupakan hasil back up
yang disimpan dalam media penyimpanan yang terpisah dan dapat diakses
kembali pada saat tertentu. Old detail data biasanya disimpan pada media
penyimpanan seperti tape disk karena pengaksesannya relatif jarang.
2.6.3 Lightly Summarized Data
Merupakan data detil yang di-summary dengan tingkat summary yang
sangat kecil. Misalnya informasi panggilan telepon di-summary menurut jam
panggilan telepon (Inmon, 2002, p50).
Fungsi summary dari informasi yaitu untuk mempercepat kerja query.
Biaya operasional dengan men-summary data memang meningkat namun hal ini
seimbang dengan hasilnya yang menghilangkan kebutuhan operasi summary
secara terus menerus (seperti sorting atau grouping) dalam query sehingga proses
menjadi lebih cepat. Data summary di-update secara terus menerus sebagai data
baru yang ditambahkan ke dalam data warehouse (Connolly, 2002, p1055).
2.6.4 Highly Summarized Data
Highly summarized data merupakan kumpulan data historis yang
dibutuhkan untuk mendukung keputusan strategis, sebagaimana halnya dengan
19
lightly summarized data. Highly summarized data bersama-sama dengan lightly
summarized data terlibat dalam data mart (Imhoff, 2003, p8).
Merupakan ringkasan yang bersifat totalitas, solid dan mudah diakses.
Highly summarized data digunakan untuk melakukan analisa perbandingan data
berdasarkan waktu dan analisis yang menggunakan multi dimensi.
2.6.5 Metadata
Metadata adalah data mengenai data, atau deskripsi struktur, isi, kunci,
indeks, dan deskripsi-deskripsi lainnya dari data (Inmon, 2002, p393). Metadata
memberikan definisi bagi data, perhitungan yang digunakan, informasi mengenai
dari mana data berasal (sistem sumber), apa yang dilakukan terhadap data
(transformasi, cleansing, algoritma integrasi), siapa yang menggunakan data,
kapan data digunakan, dan berbagai informasi lainnya mengenai data (Imhoff,
2003, p403).
Metadata menurut Connolly (2002, p1055) digunakan untuk berbagai
tujuan yaitu :
Proses ekstraksi dan loading – metadata digunakan untuk memetakan
sumber data ke view data dalam warehouse
Proses managemen warehouse – metadata digunakan untuk
mengotomatisasi produksi dari tabel summary
Sebagai bagian dari proses manajemen query – metadata digunakan untuk
mengarahkan query secara langsung ke sumber data yang paling tepat
20
Manajemen metadata dalam warehouse merupakan tugas yang sangat
kompleks dan sulit. Manajemen metadata merupakan permasalahan penting
dalam mencapai data warehouse yang terintegrasi. Tujuan utama dari metadata
adalah untuk menunjukkan jalur dari mana data berasal sehingga administrator
warehouse mengetahui historis data dalam warehouse (Connolly, 2002, p1065).
2.7 Arsitektur dan Infrastruktur Data Warehouse
2.7.1 Arsitektur Data Warehouse
Menurut Poe (1996, p24), arsitektur adalah sekumpulan aturan atau
struktur yang memberikan keterangan untuk keseluruhan rancangan suatu sistem
atau produk. Arsitektur data menyediakan kerangka ini dengan cara
mengidentifikasikan bagaimana data berpindah melalui sistem dan digunakan
dalam perusahaan. Komponen utama arsitektur data untuk data warehouse adalah
read-only database yang digunakan untuk mendukung pengambilan keputusan.
Menurut Connolly (2002, p1053), komponen-komponen yang terdapat
dalam arsitektur data warehouse yaitu
Data operasional, merupakan sumber data bagi data warehouse
Operational Data Store (ODS), merupakan tempat penyimpanan data
operasional yang terintegrasi, yang digunakan untuk analisis.
ODS dibuat ketika sistem operasional tidak mampu memenuhi syarat
untuk pembuatan laporan. Dengan membangun ODS, dapat membantu
dalam pembuatan suatu data warehouse karena ODS dapat men-supply
data yang telah diekstrak dari sumber data. Ini berarti bahwa kebutuhan
21
akan integrasi dan restruktur data bagi data warehouse telah
disederhanakan oleh ODS.
Load Manager, yang disebut juga komponen front-end, melakukan semua
operasi yang berhubungan dengan ekstraksi dan loading data ke dalam
warehouse
Warehouse Manager, melakukan semua operasi yang berhubungan
dengan manajemen data dalam warehouse
Query Manager, yang disebut juga komponen back-end, melakukan
semua operasi yang berhubungan dengan manajemen query user
Detailed Data, menyimpan semua data detil dalam skema database
Lightly dan Highly Summarized Data, menyimpan semua lightly
summarized data dan highly summarized data yang dihasilkan oleh
warehouse manager
Archive/Backup Data, menyimpan data detil dan summary untuk tujuan
archiving dan backup
Metadata, menyimpan semua definisi metadata yang digunakan oleh
semua proses dalam warehouse
22
Gambar 2.2 Gambar Arsitektur Data Warehouse
(Sumber : Connolly, 2002, p1053)
2.7.2 Infrastruktur Data Warehouse
Menurut Poe (1996, p54), pengertian infrastruktur adalah perangkat lunak,
perangkat keras, pelatihan dan komponen-komponen lain yang menyediakan
dukungan untuk mengimplementasikan arsitektur data warehouse. Infrastruktur
teknik berupa teknologi, platform, database, gateway dan komponen penting yang
mendukung arsitektur data warehouse yang dipilih.
Warehouse Manager
Metadata
Lightly summarized data
Detailed data
Highly summarized data
DBMS
Warehouse Manager
Query Manager
Load Manager
Data Operasional
sumber n
Data Operasional
sumber 1
Data Operasional
sumber 2
Operational Data Store (ODS)
Archive/ backup data
Reporting, query, application
development, and EIS tools
OLAP tools
Data mining tools
End-user access tools
23
Untuk mengaplikasikan sebuah arsitektur data warehouse dapat
diimplementasikan dengan beberapa cara yaitu menggunakan infrastruktur yang
berbeda. Arsitektur dan infrastruktur saling berkaitan erat dan saling mendukung
satu sama lain. Pengaruh dari lingkungan atau perusahaan juga secara otomatis
mempengaruhi pemilihan suatu infrastruktur yang akan dipilih (Poe, 1996, p51).
Pada data warehouse, biaya pembangunan infrastruktur tidak sebanding
dengan biaya pemeliharaannya. Biaya pemeliharaan data warehouse jauh
melebihi biaya infrastruktur awal (Inmon, 2002, p66). Walaupun infrastruktur
bagi data warehouse mahal dan sulit untuk dibangun, namun infrastruktur ini
hanya perlu dibangun sekali. Setelah selesai dibangun secara tepat, data
warehouse memberikan suatu dasar yang sangat fleksibel dan reusable bagi
perusahaan (Inmon, 2002, p45).
2.8 Teori Perancangan Data Warehouse
Komponen dasar dari data warehouse adalah tabel fakta dan tabel dimensi.
Komponen-komponen tersebut dapat digunakan dalam perancangan-perancangan
yang berbeda seperti perancangan skema bintang atau pun perancangan skema
snowflakes (Whalen, 2001, p236).
Menurut Kimball (2002, p30), urutan tahap-tahap perancangan logikal
data warehouse yaitu :
1. Memilih proses bisnis
User memegang peranan penting dalam pemilihan proses bisnis.
Ukuran performance data warehouse yang diharapkan oleh user
24
merupakan hasil dari proses pengukuran bisnis. Contoh proses bisnis
meliputi, pembelian bahan mentah, pemesanan, pengiriman, invoice, dan
persediaan.
Dengan berfokus pada proses bisnis, dan bukan pada departemen
bisnis, maka dapat dicapai informasi yang konsisten bagi perusahaan
secara keseluruhan. Jika data warehouse dibangun berdasarkan
departemen, maka akan terdapat data duplikat dengan label dan istilah
yang berbeda-beda, yang mengakibatkan data tidak konsisten. Cara terbaik
untuk memastikan konsistensi data adalah dengan mem-publish-kan data
sekali saja. Cara ini juga mengurangi upaya pertambahan extract-
transformation-load (ETL), mengurangi beban penyimpanan disk serta
manajemen data yang terus-menerus.
2. Menentukan grain dari proses bisnis
Menentukan grain berarti menspesifikasikan secara tepat apa yang
direpresentasikan oleh baris tabel fakta individual. Grain menyampaikan
level detil yang berhubungan dengan tabel fakta. Penentuan grain
merupakan tahap critical dalam perancangan logikal data warehouse.
3. Memilih dimensi-dimensi untuk setiap tabel fakta
Jika grain telah ditentukan dengan benar maka dimensi-dimensi
dapat diidentifikasikan dengan mudah. Pada dimensi, atribut-atribut
berupa teks dapat disertakan guna menyempurnakan tabel dimensi. Contoh
lazim dari dimensi meliputi waktu, produk, pelanggan, tipe transaksi, dan
status.
25
4. Mengidentifikasi fakta-fakta numerik untuk setiap tabel fakta
Fakta dapat diidentifikasi dengan memberikan jawaban atas
pertanyaan “Apa yang ingin diukur?“. Semua candidate fact haruslah
sesuai dengan grain yang telah didefinisikan dalam tahap 2. Fakta bagi
grain yang berbeda ditempatkan dalam tabel fakta terpisah. Nilai fakta
berupa numerik, seperti jumlah pesanan atau total dolar.
2.8.1 Skema Bintang
Menurut Wikipedia (http://en.wikipedia.org/wiki/Star_schema), skema
bintang adalah skema data warehouse yang paling sederhana di mana tabel fakta
tunggal berisi gabungan primary key dari setiap tabel dimensi dan kolom
tambahan yang berupa fakta numerik. Skema ini memungkinkan respon yang
cepat dalam menentukan query dan pemahaman yang mudah bagi analisis dari
end-user, maupun user yang tidak terbiasa dengan struktur database.
Skema bintang menurut Inmon (2002, p395), merupakan struktur data, di
mana data didenormalisasi untuk mengoptimalkan akses data. Skema bintang
merupakan dasar bagi perancangan data mart.
Menurut Connolly (2002, p1079), skema bintang merupakan struktur
logikal yang memiliki sebuah tabel fakta yang berisi data faktual pada bagian
pusat dari skema bintang, dan dikelilingi oleh tabel-tabel dimensi yang berisi data
referensi. Tabel fakta dapat menjadi relatif sangat besar dibanding tabel dimensi.
Menurut Poe (1996, p145), skema bintang terdiri dari 2 (dua) tipe tabel,
tabel fakta dan tabel dimensi.
26
Tabel Fakta
Tabel fakta merupakan tabel dalam data warehouse yang berisi
measure (Imhoff, 2003, p401). Measure sendiri merupakan suatu istilah
dalam data warehouse yang mengacu kepada nilai, biasanya berupa
numerik, yang mengukur beberapa aspek bisnis (Imhoff, 2003, p403).
Tabel Dimensi
Tabel dimensi merupakan sekelompok tabel referensi yang
menyediakan suatu basis dalam constraining dan grouping query bagi
informasi pada tabel fakta dalam data warehouse. Kunci dari tabel
dimensi merupakan bagian dari concatenated key/ composite key dari tabel
fakta (Imhoff, 2003, p400). Sedangkan menurut Inmon (2002, p389), tabel
dimensi merupakan tempat bagi sejumlah data yang berhubungan dengan
tabel fakta. Dimensi yang digunakan dalam skema bintang berhubungan
dengan area subjek, seperti pelanggan, produk, dan waktu (Imhoff, 2003,
p25).
Menurut Poe (1996, p121), beberapa keuntungan dari skema bintang yaitu :
Membentuk rancangan database yang memberikan waktu respon yang
cepat.
Menghasilkan suatu rancangan yang dapat dimodifikasi dengan mudah
sesuai dengan perkembangan data warehouse tersebut.
Dapat menyamakan persepsi antara user dan data warehouse sehingga
data dapat berguna bagi user.
27
Mempermudah pemahaman dan navigasi metadata baik bagi user atau
pengembang
Sedangkan menurut Inmon (2002, p139), keuntungan menggunakan
skema bintang yaitu mengefisienkan data bagi proses Decision Support System
(DSS). Dengan membuat redundancy yang selektif, pengaksesan dan
penganalisaan data disederhanakan dan diefisienkan. Skema bintang mendukung
analisis multidimensional dalam data mart, mendukung pembuatan query yang
dapat diprediksi dengan waktu respon yang sesuai, serta mendukung dalam
pembuatan laporan yang berulang (Imhoff, 2003, p18). Berikut contoh gambaran
skema bintang :
Keterangan :
PK = Primary Key FK = Foreign Key
Gambar 2.3 Gambar Skema Bintang
Pada gambar di atas dijelaskan bahwa terdapat sebuah tabel fakta dan 2
(dua) buah tabel dimensi. Tabel faktanya memiliki 2 (dua) foreign key yaitu
Tabel Dimensi1
Kunci1 (PK) Atribut1 Atribut2
Tabel Dimensi2
Kunci2 (PK) Atribut1 Atribut2
Tabel Fakta
Kunci1 (FK) Kunci2 (FK) Atribut1 Atribut2 Measure1 Measure2
28
kunci1 dan kunci2 yang masing-masing merupakan primary key dari tabel
dimensi1 dan tabel dimensi2.
2.8.2 Skema Snowflakes
Menurut Whalen (2001, p238), skema snowflakes merupakan hasil
normalisasi dari tabel-tabel dimensi, di mana tabel-tabel dimensi tersebut
bergabung dengan tabel-tabel dimensi lainnya sebelum di-join ke tabel fakta.
Skema snowflakes memiliki beberapa kelemahan yaitu hanya mampu
memberikan sedikit perbaikan terhadap performance, mempersulit perancangan
data konseptual, dan menyembunyikan area permasalahan yang potensial.
Connolly (2002, p1080) mengemukakan pendapatnya mengenai skema
snowflakes yaitu skema snowflakes merupakan variasi dari skema bintang di
mana data dalam tabel dimensi belum didenormalisasi. Berikut contoh skema
snowflakes.
Gambar 2.4 Gambar Skema Snowflakes
Cabang
Kd_cabang (PK) Nm_cabang Kota (FK)
Tabel Dimensi
Kota
Kota (PK) Daerah
FactPenjualan No_faktur Kd_pelanggan (FK) Kd_barang (FK) Kd_cabang (FK) Harga
Tabel Fakta
29
Gambar di atas merupakan bagian dari skema snowflakes yang
menunjukkan data dalam tabel dimensi Cabang belum didenormalisasi. Field
Kota yang berfungsi sebagai foreign key pada tabel Cabang merupakan primary
key dari tabel Kota.
2.8.3 Denormalisasi
Menurut Imhoff (2003, p315), denormalisasi merupakan suatu teknik yang
menambahkan kolom redundant ke tabel. Denormalisasi bertujuan mengurangi
jumlah join/ penggabungan yang dibutuhkan dalam query. Denormalisasi
mengacu pada kegiatan mereduksi bentuk ternormalisasi dari suatu model. Jika
diimplementasikan secara tepat dalam model fisikal, model yang terdenormalisasi
dapat meningkatkan performance data karena denormalisasi mengeliminasi join/
penggabungan dari query.
Denormalisasi mengakibatkan biaya yang signifikan untuk proses
updating karena kolom terdenormalisasi yang di-update biasanya meliputi banyak
baris. Oleh karena itu, penting untuk membandingkan biaya penyimpanan dan
biaya updating terhadap keuntungan yang diharapkan untuk menentukan apakah
denormalisasi diperlukan (Imhoff, 2003, p315).
Dari pengertian di atas, dapat disimpulkan bahwa proses denormalisasi
merupakan proses pembalikan dari normalisasi. Suatu database yang telah
dinormalisasi dapat menjadi beberapa tabel yang bebas dan terintegrasi penuh
melalui hubungan antara primary key dan foreign key. Proses denormalisasi
30
dilakukan untuk menghindari query yang terlalu kompleks di dalam sistem data
warehouse.
2.8.4 Agregasi
Vidette Poe (1996, p136) mengemukakan agregasi adalah proses
akumulasi data fakta yang berhubungan dengan atribut yang telah ditentukan.
Agregasi dibuat selama proses transformasi berlangsung dan pada saat pemuatan
data ke dalam data warehouse.
Fungsi agregasi yaitu untuk meningkatkan performance query dari end
user serta mengurangi siklus CPU yang digunakan. Dengan memilih level
agregasi yang tepat, performance query dan disk penyimpanan dalam data
warehouse dapat dioptimalkan.
2.8.5 Granularity
Inmon (2002, p43) mengemukakan granularity mengacu pada tingkat
kedetailan data dalam data warehouse. Semakin detail data, semakin rendah
tingkat granularity-nya. Sebaliknya, semakin ringkas data maka tingkat
granularity-nya semakin tinggi.
Granularity menyebabkan data pada data warehouse dapat dipakai ulang
(reusable) dan fleksibel. Contohnya dalam sebuah perusahaan, data yang sama
dapat memenuhi kebutuhan dari bagian marketing, penjualan dan akunting.
Ketiga bagian tersebut melihat pada data yang sama. Bagian marketing melihat
penjualan per bulan menurut area tertentu, bagian penjualan melihat penjualan per
31
minggu menurut salesperson, dan bagian akunting melihat penghasilan per
kuarter menurut produk tertentu.
2.9 Matriks
Matriks menurut Kimball (2002, p398) adalah tool yang digunakan untuk
membuat, mendokumentasikan, dan mengkomunikasikan arsitektur data, di mana
baris-baris pada matriks mengidentifikasikan proses bisnis perusahaan dan kolom-
kolomnya merepresentasikan dimensi-dimensi yang sesuai dengan proses bisnis
perusahaan. Intersection dari dimensi-dimensi yang relevan dengan masing-
masing proses bisnis diberi tanda untuk menunjukkan ada hubungan antara
dimensi dengan proses bisnis tertentu.
Matriks merupakan suatu device yang membantu penggunanya baik dalam
hal perencanaan maupun proses komunikasi. Meskipun matriks hanya terdiri dari
baris dan kolom, namun mampu mendefinisikan keseluruhan arsitektur data bagi
warehouse. Matriks memperlihatkan keseluruhan rencana yang dirancang dalam
suatu bentuk yang ringkas sehingga dapat digunakan untuk membantu senior IT
dan manajemen bisnis dalam mengkomunikasikan rancangan rencana (Kimball,
2002, p81).
Berikut contoh matriks untuk proses pembelian dan penjualan dengan
dimensi-dimensi yang relevan dengan proses bisnis tersebut. Pada gambar 2.9 di
bawah, proses pembelian yang memiliki relevansi dengan dimensi produk,
supplier dan waktu diberi tanda silang (X) pada intersection-nya, yang
menunjukkan ada relevansi antara proses bisnis dan dimensi. Demikian juga
32
halnya dengan proses penjualan yang memiliki relevansi dengan dimensi
pelanggan, produk, salesman dan waktu maka pada intersection-nya diberi tanda
silang (X).
Dimensi
Proses Bisnis
Gud
ang
Pela
ngga
n
Prod
uk
Sale
sman
Supp
lier
Wak
tu
Pembelian X X X
Penjualan X X X X
Tabel 2.1 Tabel Matriks Data Warehouse
2.10 Pengertian Penjualan dan Persediaan
2.10.1 Pengertian Penjualan
Mulyadi (1997, p204) berpendapat bahwa kegiatan penjualan terdiri dari
transaksi penjualan barang atau jasa, baik secara kredit maupun secara tunai.
Dalam transaksi penjualan kredit, jika order dari pelanggan telah dipenuhi dengan
pengiriman barang atau penyerahan jasa, untuk jangka waktu tertentu perusahaan
memiliki piutang kepada pelanggannya. Dalam transaksi penjualan tunai, barang
atau jasa baru diserahkan oleh perusahaan kepada pembeli jika perusahaan telah
menerima kas dari pembeli.
Jadi dapat dikatakan bahwa penjualan merupakan suatu kegiatan yang
dilakukan oleh penjual (perusahaan) dengan jalan menukarkan barang/ jasanya
kepada pembeli, dengan timbal balik berupa suatu imbalan yang sepadan dengan
besarnya nilai dari barang/ jasa yang diberikan tersebut. Imbalan tersebut dapat
33
diperoleh sebelum penyerahan barang/ jasa dilakukan (penjualan tunai), ataupun
dalam jangka waktu tertentu setelah barang/ jasa diserahkan (penjualan kredit).
2.10.2 Pengertian Persediaan
Dalam perusahaan manufaktur, persediaan terdiri dari persediaan produk
jadi, persediaan produk dalam proses, persediaan bahan baku, persediaan bahan
penolong, persediaan bahan habis pakai pabrik, dan persediaan suku cadang.
Dalam perusahaan dagang, persediaan hanya terdiri dari 1 (satu) golongan, yaitu
persediaan barang dagangan, yang merupakan barang yang dibeli untuk tujuan
dijual kembali. Transaksi yang mengubah persediaan produk jadi, persediaan
bahan baku, persediaan bahan penolong, persediaan bahan habis pakai pabrik, dan
persediaan suku cadang bersangkutan dengan transaksi intern perusahaan dan
transaksi yang menyangkut pihak luar perusahaan (penjualan dan pembelian),
sedangkan transaksi yang mengubah persediaan produk dalam proses seluruhnya
berupa transaksi intern perusahaan (Mulyadi, 1997, p555).
Dari penjelasan singkat di atas, dapat disimpulkan bahwa persediaan
berkaitan erat dengan transaksi penjualan dan pembelian perusahaan. Transaksi
penjualan mengharuskan perusahaan untuk memiliki persediaan atas produk yang
akan dijual ke konsumen, dan jika tuntutan ini telah terpenuhi maka transaksi
penjualan dapat dilakukan. Sedangkan pada transaksi pembelian, pemasokan
barang yang dibeli dari supplier akan menambah stok persediaan.