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 masingmasing 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 benarbenar 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 Warehouse Manager
Data Operasional sumber 1
Reporting, query, application development, and EIS tools Highly summarized data
Metadata Load Manager Data Operasional sumber 2
Lightly summarized data
Query Manager
DBMS OLAP tools
Detailed data Warehouse Manager Data Operasional sumber n Data mining tools
Operational Data Store (ODS)
Archive/ backup data
End-user access tools
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.
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 extracttransformation-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 : Tabel Dimensi1
Tabel Fakta
Tabel Dimensi2
Kunci1 (PK) Atribut1 Atribut2
Kunci1 (FK) Kunci2 (FK) Atribut1 Atribut2 Measure1 Measure2
Kunci2 (PK) Atribut1 Atribut2
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
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. Tabel Dimensi Cabang
Kd_cabang (PK) Nm_cabang Kota (FK)
Tabel Fakta FactPenjualan
No_faktur Kd_pelanggan (FK) Kd_barang (FK) Kd_cabang (FK) Harga
Kota
Kota (PK) Daerah
Gambar 2.4 Gambar Skema Snowflakes
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 kolomkolomnya merepresentasikan dimensi-dimensi yang sesuai dengan proses bisnis perusahaan. Intersection dari dimensi-dimensi yang relevan dengan masingmasing 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
X
X
Supplier
Waktu
Salesman
X
Pembelian Penjualan
Produk
Proses Bisnis
Gudang
Dimensi
Pelanggan
silang (X).
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.