BAB 2 LANDASAN TEORI
2.1
Teori-Teori Umum 2.1.1
Data Data adalah sebuah rekaman fakta, konsep, atau instruksi pada sebuah media penyimpanan untuk komunikasi, pencarian, dan pemrosesan secara otomatis dan dapat memberikan informasi yang dapat dimengerti oleh pemiliknya atau pihak yang bersangkutan (Inmon, 2002, p388).
2.1.2
Informasi Informasi merupakan data yang telah diasimilasi dan dievaluasi
oleh
manusia
untuk
dapat
memecahkan
suatu
permasalahan atau pengambilan keputusan (Inmon, 2002, p388).
2.1.3
Database Database adalah sekumpulan
penyimpanan data
yang
berhubungan (sering dengan pengontrolan, redundansi dan terbatas) yang berdasarkan suatu skema (Inmon, 2002, p388).
2.1.4
Database Managament System (DBMS) Database Management System adalah sebuah sistem software berbasis komputer yang digunakan untuk membuat dan mengatur data (Inmon, 2002, p388).
10
11
2.1.5
ER Modeling ER Modeling adalah pendekatan top-down untuk perancangan database yang dimulai dengan mengidentifikasikan data yang penting yang disebut entitas dan relationship antar data harus diperlihatkan dalam model ini. Kemudian ditambahkan detail-detail seperti informasi yang ingin ditambahkan tentang entitas dan relationship yang disebut atribut dan berbagai constraint pada entitas, relationship, atribut, dan multiplicity (Connolly and Begg, 2005, p342).
2.1.5.1 Entitas (Entity) Entity adalah sekumpulan objek dengan properties yang
sama
yang
diidentifikasikan
oleh
perusahaan
(Connolly and Begg, 2005, p331).
Gambar 2.1 Diagram dari Entity Type Branch dan Staff (Sumber : Connolly and Begg, 2005, p333)
12
2.1.6
Agregasi Menurut
agregasi
merupakan
proses
pengelompokkan
beberapa record operasional menjadi satu record berdasarkan beberapa kejadian. Record ini disebut dengan profile record atau aggregate record, dimana berisi nilai dari hasil perhitungan dari beberapa record operasional yang dikelompokkan. Untuk melakukan agregasi, nilai dari data operasional yang dikelompokkan harus dapat dikenakan fungsi agregasi (Inmon, 2002, p114).
2.1.7
OLTP (Online Transaction Processing) OLTP adalah sistem yang dirancang untuk menangani jumlah hasil transaksi yang tinggi, dengan transaksi yang biasanya membuat perubahan kecil bagi data operasional organisasi, yaitu data yang memerlukan penanganan operasi setiap hari (Connolly and Begg, 2005, p1149).
2.1.8
OLAP (Online Analytical Processing) OLAP adalah sintesis, analisis, dan konsolidasi dinamis dari sejumlah besar multidimensional data (Connolly and Begg, 2005, p1205).
2.1.9
XAMPP Menurut XAMPP adalah suatu bundel web server yang populer digunakan untuk coba-coba di Windows karena kemudahan instalasinya. Bundel program open source tersebut berisi antara lain server web Apache, interpreter PHP, dan basis data MySQL. Setelah menginstall XAMPP, kita bisa memulai pemrograman PHP di
13 komputer sendiri maupun mencoba menginstall aplikasi-aplikasi web ( Bunafit Nugroho, 2008, p2 ).
2.1.10 PHP PHP
(PHP
Hypertext
Preprocessor)
adalah
bahasa
pemograman berbasis server yang dirancang khusus untuk web. Dalam halaman HTML, dapat dimasukkan kode PHP yang akan dieksekusi, setiap kali halaman web tersebut diakses. Kode PHP ini akan diterjemahkan oleh web server dan akan dijalankan bersamaan dengan HTML atau output lainnya, yang akan dilihat oleh pengunjung situs web (Welling dan Thompson, 2001, p4).
2.1.11 MySQL Menurut MySQL merupakan database yang berbasis server. Anda bisa menggunakan database MySQL apabila memiliki izin hak akses didalamnya. Hal ini seperti halnya pada saat anda hendak menggunakan klien MySQL untuk masuk pada server MySQL ( Bunafit Nugroho, 2008, p29 ). Keunggulan dari MySQL adalah : 1.
Bersifat open source.
2. Sistem software-nya tidak memberatkan kerja server atau komputer karena dapat bekerja di background. 2.1.11.1 Perintah-perintah MySQL Pada MySQL terdapat beberapa perintah. Perintahperintah pada MySQL ini hampir sama dengan perintahperintah pada database server lainnya. Perintah-perintah MySQL itu antara lain adalah sebagai berikut :
14 1. Create database, digunakan untuk membuat database pada database server. Sintaksnya adalah : Create database database_name Database_name adalah nama database yang akan dibuat. 2. Use database, digunakan untuk menunjuk database yang akan digunakan. Sintaksnya adalah : Use database_name Database_name adalah nama database yang akan digunakan. 3. Create table, digunakan untuk membuat tabel pada database yang digunakan. Sintaksnya adalah : Create table table_name ( Column1 column_type column_attributes, Column2 column_type column_attributes, Primary_key (column_name) ); Table_name adalah nama tabel yang akan dibuat. Column1 adalah nama kolom yang akan dibuat pada tabel. Column_type adalah tipe dari kolom tersebut , dapat berupa char, varchar, tinytext, mediumtext, longtext, enum, int, tinyint, mediumint, bigint, float, decimal, time, date, datetime, timestamp, year. 4. Insert, digunakan untuk menambahkan record pada tabel. Sintaksnya adalah :
15 Insert into table_name(column1, column2,..) values (value1,value2,..) Table_name adalah nama tabel yang akan ditambahkan record-nya. Column1, column2 adalah kolom yang akan ditambahkan data. Value1,value2 adalah data yang akan ditambahkan. 5. Update, digunakan untuk mengubah record yang sudah ada pada tabel. Sintaksnya adalah : Update
table_name
set
column1=value1,
column2=value2 where column=value Table_name adalah nama tabel yang akan dirubah record-nya. Column1, column2 adalah kolom yang akan dirubah data. Value1,value2 adalah data yang akan digantikan. 6. Drop
table,
digunakan
untuk
menghapus
tabel.
Sintaksnya adalah : Drop table table_name Table_name adalah nama tabel yang akan dihapus. 7. Show tables, digunakan untuk menampilkan tabel-tabel yang telah dibuat dalam database yang aktif. Sintaksnya adalah : Show tables 8. Show field, digunakan untuk menampilkan seluruh field dalam suatu tabel. Sintaksnya adalah : Show field from table_name
16 Table_name adalah nama tabel yang akan ditampilkan field-nya. 9. Alter table, digunakan untuk menambah,merubah, dan menghapus field dalam suatu tabel. Sintaksnya adalah :
a. Untuk menambahkan Alter table_name add column column1 column_type column_attributes Table_name
adalah
nama
tabel
yang
akan
ditambahkan field-nya. Column1 adalah nama field baru,
column_type
adalah
tipe
kolom
dan
column_attributes adalah atribut kolom yang akan ditambahkan. b.Untuk mengubah Alter
table_name
change
column1
column2
column_type column_attributes column1 adalah mana field yang akan dirubah, column2 adalah nama field baru, column_type adalah tipe kolom dan column_attributes adalah atribut kolom. c. Untuk menghapus Alter table table_name drop column column1 Table_name adalah tabel yang akan dihapus fieldnya. Column1 adalah nama field yang akan dihapus.
17
2.1.12 8 Golden Rules ( Delapan Aturan Emas ) Ada delapan aturan emas dalam perancangan antarmuka pengguna (user interface) yang diperlukan (Shneiderman, 2005, p7475), antara lain: 1.
Berusaha untuk konsisten Semua urutan aksi harus konsisten dalam situasi yang sama, seperti penggunaan istilah, warna, tampilan, dan jenis huruf yang sama.
2.
Memungkinkan user menggunakan shortcut Terkadang user menginginkan agar jumlah interaksi yang dilakukan dikurangi untuk
meningkatkan kepraktisannya.
Penggunaan shortcut dapat dilakukan untuk mengatasi hal tersebut dan meningkatkan kecepatan tampilan.
3.
Memberikan umpan balik yang informatif Respon harus berisi informasi kepada user sesuai dengan action yang dilakukannya. User harus mengetahui action apa yang telah dan akan dilakukan dengan respon balik tersebut.
4.
Merancang dialog yang memberikan keadaan akhir Urutan aksi harus diatur menjadi bagian awal, tengah, dan akhir. Hal ini dilakukan agar user mengetahui bahwa sekelompok tindakan telah dilakukan sehingga memberikan kepuasan pada user dan memberikan kesiapan untuk melakukan tindakan selanjutnya.
18 5.
Memberikan
pencegahan
kesalahan
dan
penanganan
kesalahan secara sederhana Sistem harus dirancang sedemikian rupa agar tidak membuat kesalahan yang serius. Jika terjadi kesalahan, sistem harus mendeteksi dan menawarkan mekanisme penanganan yang sederhana dan mudah dimengerti. 6.
Memungkinkan pembalikkan aksi yang mudah Aksi harus bisa dibalik untuk mengurangi kegelisahan dari user jika menjelajahi ke bagian yang tidak dikenal. Mendorong penjelajahan pilihan yang tidak biasa dipakai oleh user.
7.
Mendukung pusat kendali internal User harus menguasai sistem dan sistem bekerja sesuai dengan keinginannya. Kesulitan memperoleh informasi yang penting atau informasi yang diinginkan akan memberikan ketidakpuasan bagi user.
8.
Mengurangi beban ingatan jangka pendek Manusia memiliki ingatan yang terbatas oleh karena itu aplikasi harus dibuat sedemikian rupa agar user tidak terlalu banyak menyimpan memory.
2.1.13 UML 2.1.13.1 Pengertian UML Pengertian UML (Unified Modeling Language) adalah
satu
kumpulan
konvensi
pemodelan
yang
digunakan untuk menentukan atau menggambarkan sebuah sistem software yang terkait dengan objek
19 (Whitten, Bentley, dan Dittman 2004, p408).
2.1.13.2
Class Diagram Class diagram adalah gambar grafis mengenai struktur objek statis dari suatu sistem, menunjukkan kelaskelas objek yang menyusun sebuah sistem dan juga hubungan antara objek tersebut (Whitten, Bentley, dan Dittman 2004, p432),.
Gambar 2.2 Class Diagram
2.1.13.3 Usecase Diagram Usecase
diagram
adalah
diagram
yang
menggambarkan interaksi antara sistem dengan system eksternal dan pengguna. Dengan kata lain, secara grafis menggambarkan siapa yang akan menggunakan sistem dan dengan cara apa pengguna mengharapkan untuk berinteraksi dengan sistem (Whitten, Bentley, dan Dittman 2004, p257).
20
Gambar 2.3 Usecase Diagram
2.1.13.4 Sequence Diagram Sequence memodelkan
diagram
logika
sebuah
adalah usecase
diagram dengan
yang cara
menggambarkan interaksi pesan di antara objek-objek dalam rangkaian waktu (Whitten, Bentley, dan Dittman 2004, p663).
Gambar 2.4 Sequence Diagram
21
2.2
Teori-Teori Khusus 2.2.1
Data warehouse Data warehouse adalah gabungan teknologi-teknologi yang bertujuan mengefektifkan integrasi database relasional ke dalam lingkungan yang memungkinkan penggunaan data secara strategis (Inmon, 2002, p31). Data warehouse adalah suatu kumpulan data yang bersifat subject oriented, integrated, time variant, dan non-volatile dalam mendukung proses pengambilan keputusan manajemen. (Connolly and Begg, 2005, 1151). Berdasarkan pengertian-pengertian diatas, dapat disimpulkan bahwa data warehouse merupakan kumpulan data atau record dalam sistem komputer yang saling berelasi secara logikal satu dengan yang lainnya untuk pengambilan keputusan di tingkat manajerial.
2.2.1.1 Tujuan Perancangan Data warehouse Perancangan
data warehouse bertujuan untuk
memperbolehkan organisasi untuk menggunakan kumpulan data organisasi sehingga dapat membantu organisasi agar memperoleh keuntungan bisnis (Connolly and Begg, 2005, p1152).
2.2.1.2 Karakteristik Data warehouse (Inmon, 2002, p31), Data warehouse mempnyai sifat-sifat antara lain :
22 2.2.1.2.1
Subject Oriented (Berorientasi Subjek) Data warehouse berorientasi pada major subject
area
perusahaan
yang
sudah
didefinisikan dalam data model perusahaan tingkat tinggi. Data warehouse disusun berdasarkan subjek-subjek
yang
ada
dalam
sebuah
perusahaan, dimana setiap area subjek secara fisik diimplementasikan sebagai kumpulan dari tabel
yang
berhubungan
didalam
data
warehouse dan tidak berorientasi pada proses atau
fungsi
pengaksesan
aplikasi data
tertentu.
pengguna
pun
Dalam harus
berorientasi pada subjek tertentu.
2.2.1.2.2
Integrated (Terintegrasi) Data
dalam
data
warehouse
dikumpulkan dari berbagai sumber data dari seluruh
sistem
berbeda.
aplikasi
Sumber
data
perusahaan
yang
seringkali
tidak
konsisten. Oleh karena itu, sumber data terintegrasi
harus
dibuat
konsisten
untuk
menjamin kebenaran informasi yang dihasilkan. 2.2.1.2.3
Time variant (Rentang Waktu)
23 Setiap
unit
data
di
dalam
data
warehouse hanya valid dan akurat pada suatu waktu tertentu atau interval waktu tertentu. Untuk melihat interval waktu yang digunakan dalam
mengukur
keakuratan
suatu
data
warehouse. 2.2.1.2.4
Non-volatile Data dalam data warehouse tidak di update secara real time, tetapi di-refresh dari sistem operasional secara berkala. Data baru ditambahkan ke database sebagai pelengkap bukan pengganti, sehingga data histori tetap disimpan di dalam database.
2.2.1.3 Perancangan Data warehouse Metode perancangan menurut Kimball dalam buku terdapat
sembilan
tahapan
dalam
membangun
data
warehouse (nine step methodology) (Connolly and Begg, 2005, p1187), yaitu : 2.2.1.3.1
Pemilihan proses (choosing the process) Proses yang menunjuk pada subjek yang ada dari sebuah bagian data mart. Data mart pertama yang akan dibangun harus tepat waktu, disesuaikan dengan anggapan dari menjawab pertanyaan bisnis yang banyak diutarakan.
2.2.1.3.2
Pemilihan grain (choosing the grain)
24 Memilih grain berarti menentukan secara tepat apa yang direpresentasikan oleh record pada tabel fakta. Sebagai contoh PropertySale merepresentasikan
fakta
mengenai
setiap
penjualan properti dan menjadi tabel fakta dari skema bintang PropertySale. Oleh karena itu, grain dari tabel fakta PropertySale adalah penjualan itu sendiri. Ketika grain dari tabel fakta dipilih, dimensi dapat diidentifikasi dari tabel fakta. Sebagai
contoh
Branch,
Staff,
Owner,
ClientBuyer, PropertyForSale, dan Promotion entity akan digunakan untuk tabel dimensi pada skema bintang. Tabel dimensi Time termasuk dalam dimensi utama yang selalu ada dalam skema bintang. Memutuskan grain untuk tabel fakta juga menentukan grain untuk setiap tabel dimensi. Misalnya, grain pada tabel fakta PropertySale adalah setiap penjualan property itu sendiri, kemudian grain pada dimensi client adalah detail dari client yang membeli property.
25 2.2.1.3.3
Identifikasi
dan
penyesuaian
dimensi
(identifying and conforming the dimension) Dimensi menetapkan konteks pertanyaan mengenai fakta dalam tabel fakta. Kumpulan dimensi yang baik membuat data mart mudah dimengerti
dan
diidentifikasikan
digunakan. dengan
Dimensi
detail
untuk
menjelaskan suatu hal seperti client dan properti pada grain yang tepat. Sebagai contoh dimensi client buyer mendeskripsikan atribut ID, nama, tipe, kota, area dan Negara. 2.2.1.3.4
Pemilihan fakta (choosing the fact) Grain dari tabel fakta menentukan fakta yang bisa digunakan. Misalnya, grain dari tabel fakta
adalah
setiap
penjualan
property,
kemudian semua fakta numerik harus menunjuk pada penjualan ini. Fakta-fakta tersebut harus numerik dan dapat ditambah. 2.2.1.3.5
Penyimpanan pre-calculation di tabel fakta (storing precalculation in the fact table) Setelah fakta-fakta dipilih maka dilakukan pengkajian ulang untuk menentukan apakah ada fakta-fakta yang dapat diterapkan untuk precalculation (kalkulasi awal). Contoh umum dari kebutuhan untuk penyimpanan pre-calculation
26 muncul ketika fakta berisi pernyataan untung dan rugi. Situasi ini akan meningkat ketika tabel fakta didasarkan pada invoice atau sales. 2.2.1.3.6
Memastikan tabel dimensi (rounding out the dimension table) Dalam
langkah
ini,
kembali
pada
dimension table dan menambahkan gambaran teks terhadap dimensi yang memungkinkan. Gambaran teks harus mudah digunakan dan dimengerti oleh user. Kegunaan suatu data mart ditentukan oleh lingkup dan atribut tabel dimensi. 2.2.1.3.7
Pemilihan durasi database ( choosing the duration of the database) Sebagai
contoh,
perusahaan
asuransi
memiliki kebutuhan untuk menyimpan data dalam jangka waktu lima tahun atau lebih. Tabel fakta yang sangat besar menimbulkan dua persoalan. Pertama, semakin tua umur data, akan
muncul
masalah
pembacaan
dan
interpretasi file lama. Kedua, menimbulkan kemungkinan versi dimensi lama digunakan, bukan versi terbarunya. Hal ini akan dibahas lebih lanjut pada tahap delapan “Tracking slowly changing dimensions”.
27 2.2.1.3.8 Tracking
slowly
changing
dimension
(Melacak perubahan dari dimensi secara perlahan) Mengamati perubahan dari dimensi pada dimension table. Ada tiga tipe dasar dari perubahan dimensi secara perlahan, yaitu : 1. Dimana
atribut
dimensi
yang
diubah
dimensi
yang
diubah
dituliskan ulang. 2. Dimana
atribut
menyebabkan pembentukan record baru. 3. Dimana
atribut
dimensi
yang
diubah
mengakibatkan sebuah atribut atau kolom alternative dibuat, jadi antara record yang lama dan baru diakses secara bersama-sama. 2.2.1.3.9
Penentuan
prioritas
dan
model
query
(deciding the query priorities and the query models) Mempertimbangkan
pengaruh
dari
rancangan fisik, seperti penyortiran urutan tabel fakta
pada
disk
dan
keberadaan
dari
penyimpanan awal ringkasan (summaries) atau penjumlahan (aggregate). Selain itu, masalah administrasi,
backup,
kinerja
indeks,
dan
keamanan juga merupakan faktor yang harus diperhatikan.
28
2.2.1.4 Keuntungan Data warehouse pengimplementasian yang sukses dari sebuah data warehouse dapat memberikan keuntungan besar bagi perusahaan (Conolly dan Begg 2005, p1152), yaitu: 1.
Keuntungan potensial yang besar dalam investasi. Suatu organisasi harus memiliki sumber daya dalam jumlah
besar
untuk
memastikan
kesuksesan
pengimplementasian data warehouse dan jumlah biaya yang dikeluarkan bervariasi besarnya tergantung dari solusi teknis yang tersedia. Tetapi investasi dalam data warehouse dapat memberikan keuntungan yang besar setelah pengimplementasiannya. 2.
Keuntungan yang kompetitif Keuntungan
kompetitif
didapatkan
dengan
memperbolehkan para pengambil keputusan untuk mengakses data yang dapat mengungkapkan data-data yang sebelumnya tidak tersedia, tidak diketahui dan informasi yang tidak tercatat. 3.
Meningkatnya
produktivitas
dari
pengambil
keputusan perusahaan Dengan mentransformasikan data menjadi informasi yang berarti, data warehouse memungkinkan para manajer bisnis melakukan analisa yang lebih konsisten, akurat dan substantive sehingga terjadi peningkatan produktivitas dari pengambilan keputusan perusahaan.
29
2.2.1.5 Struktur Data warehouse Ada beberapa tingkatan detail pada lingkungan data warehouse. Tingkatan ini dikategorikan menjadi empat, yaitu Older Detail Level, Current Detail Level, Lightly Summarized Data Level dan Highly Summarized Data Level. Aliran data awalnya terjadi dari lingkungan operasional ke dalam data warehouse. Pada aliran data inilah proses transforamsi terjadi. Aliran data pada data warehouse selanjutnya berada pada tingkatan detail. Seiring berjalannya waktu, data dari Current Detail Level mengalir menuju Older Detail Level. Apabila terjadi summarize, maka data akan beralih dari Current Detail Level menuju Lightly Summarized Data Level yang kemudian akan menuju Highly Summarized Data Level p35).
(Inmon, 2002,
30
Gambar 2.5 Struktur data warehouse (Sumber : Inmon, 2002, p36) Komponen–komponen
struktur
data
warehouse
sebagai berikut : 1.
Current Detailed Data Data yang mencerminkan keadaan yang sedang berjalan saat ini dan merupakan level terendah dari data warehouse. Oleh karena itu, data di level ini belum efisien untuk digunakan sekalipun datanya detail. Hal ini karena proses analisis data menjadi rumit jika dilakukan dengan data dalam jumlah besar.
31 2.
Old Detailed Data Data historis berupa hasil
backup yang
disimpan dalam media penyimpanan terpisah, seperti tape atau disk dengan frekuensi akses yang relatif rendah. File atau direktori dari data ini disusun berdasarkan umur dari data untuk mempermudah pencarian atau pengaksesan kembali. 3.
Lightly Summarized Data Data hasil ringkasan dari current detailed data. Pada tingkat ini, data hasil ringkasan masih belum dapat digunakan dalam proses pengambilan keputusan karena belum bersifat total summary dan masih bersifat detail. Biasanya digunakan untuk gambaran dari keadaan yang sedang atau sudah berlangsung.
4.
Highly Summarized Data Data hasil summary yang bersifat total dan mudah diakses. Data di level ini dapat digunakan untuk mendukung eksekutif
pengambilan perusahaan
keputusan karena
di
dianggap
kalangan sudah
representatif dan ringkas. Data ini tetap dapat merepresentasikan
keadaan
secara
keseluruhan
sehingga memudahkan eksekutif karena tidak perlu membaca dan menganalisis data untuk waktu yang lama.
32
2.2.1.6 Arsitektur Data Warehouse
Gambar 2.6 Arsitektur Data Warehouse (Connoly, 2005, p1157) Mengidentifikasi komponen data warehouse yang terdapat pada arsitektur data warehouse. (Conolly dan Begg 2005, p1156-1161), yaitu : 1.
Operational Data Data
operasional
transaksional.
Data
berfokus ini
pada
merupakan
fungsi-fungsi bagian
dari
infrastruktur perusahaan, detil, tidak ada redudansi (data tidak berulang-ulang), dapat di-update (diubahubah), dan data ini merefleksikan nilai sekarang.
33 2.
Operational Datastore (ODS) ODS adalah tempat penyimpanan sementara dari data operasional saat ini yang terintegrasi yang digunakan untuk analisis. Membangun ODS dapat merupakan tahap yang berguna dalam membangun data warehouse karena sebuah ODS dapat menyuplai data yang sudah diekstrak dari sistem sumber dan dibersihkan. Ini berarti pekerjaan mengintegrasi dan menstrukturisasi data untuk data warehouse menjadi lebih sederhana.
3.
Load Manager Load Manager menampilkan semua operasi yang terkait dengan ekstraksi dan loading data ke dalam data warehouse. Data bisa saja diekstrak secara langsung dari sumber data atau secara umum dari ODS.
4.
Warehouse Manager Warehouse Manager menampilkan semua operasi yang terkait dengan manajemen data dari data warehouse. Operasi yang ditampilkan oleh warehouse manager meliputi : a.
Analisis data untuk menjamin konsistensi.
b.
Perubahan dan penggabungan sumber data dari tempat penyimpanan sementara ke tabel data warehouse.
c.
Pembuatan indeks dan tampilan pada tabel base.
d.
Membuat denormalisasi (jika diperlukan).
34
5.
e.
Membuat agregasi (jika diperlukan).
f.
Membuat data cadangan dan arsip data.
Query manager Query manager menampilkan semua operasi yang terkait dengan manajemen query pengguna. Operasi yang
ditampilkan
oleh
komponen
ini
meliputi
mengarahkan query pada tabel yang cocok dan menjadwalkan pelaksanaan query. 6.
Detailed data Komponen ini menyimpan semua detail data dalam skema database. Detail data terbagi 2 yaitu : a.
Current detail data Data
ini
database,
berasal dan
langsung
selalu
dari
mengacu
operasional pada
data
perusahaan sekarang. Current detail data diatur sepanjang sisi-sisi subyek seperti data profil pelanggan, data aktivitas pelanggan, data sales, data demografis, dan lain-lain. b.
Old detail data Data ini menampilkan current detail data yang berumur atau histori dari subyek area. Data ini yang dipakai untuk menganalisis trend yang akan dihasilkan.
35 7.
Lightly and highly summarized data Areadata warehouse ini menyimpan semua data lightly dan
highly
summarized
yang
sudah
terdefinisi
sebelumnya yang dibuat oleh warehouse manager. Tujuan
informasi
yang
terangkum
ini
adalah
meningkatkan performa query. 8.
Archive / Backup Data Area warehouse ini menyimpan detail data dan summarized data
dengan tujuan mengarsip dan
melakukan backupdata. 9.
Metadata Metadata
merupakan
data
mengenai
data
yang
mendeskripsikan data warehouse. Metadata digunakan untuk
membangun,
memelihara,
mengatur
dan
menggunakan data warehouse. Metadata mengandung lokasi dan deskripsi dari komponen–komponen data warehouse; nama, definisi, struktur, dan isi dari data warehouse dan end user view; identifikasi dari pembuat sumber–sumber data (record system); aturan–aturan integrasi dan transformasi yang digunakan untuk mempopulasikan data warehouse history dari update dan refreshdata warehouse; pola–pola matriks yang digunakan
untuk
performa
warehouse; dan seterusnya.
menganalisis
data
36 10. End - user access tool Tool ini mencakup : a.
Reporting and query tool.
b.
Application development tool.
c.
Executive information system (EIS) tool.
d.
Online analytical processing (OLAP) tool.
e.
Data mining tool.
2.2.1.7 Perbandingan Data Warehouse dengan OLTP Biasanya sebuah organisasi mempunyai beberapa sistem Online Transaction Processing (OLTP) yang berbeda untuk setiap proses bisnis, seperti pengawasan persediaan
(inventory
control),
pesanan
pelanggan
(invoicing customer) dan tingkat penjualan. Sistem ini menghasilkan data operasional yang detil, terbaru, dan selalu berubah. Sistem OLTP optimal jika digunakan untuk sejumlah transaksi yang dapat diramalkan (predictable), berulang (repetitive), dan sering diperbaharui (update intensive). Data OLTP diorganisasikan berdasarkan syaratsyarat dari transaksi dihubungkan dengan aplikasi bisnis dan mendukung keputusan per hari dalam sejumlah besar operasional user yang konkruen. Data warehouse didesain untuk mendukung transaksi yang tidak dapat diramalkan (unpredictable), dan memerlukan jawaban untuk query khusus (ad hoc), tidak terstruktur dan heuristic. Data
37 warehouse diorganisasikan berdasarkan pada syarat-syarat query yang potensial dan mendukung keputusan strategis jangka panjang dari sejumlah kecil user tingkat manajerial (Connolly dan Begg, 2005, p1153). Di bawah ini adalah tabel perbandingan antara sistem OLTP dengan sistem data warehouse (Connolly dan Begg, 2005, p1153) : Tabel 2.1 Perbandingan OLTP dan Data Warehouse
38 Sistem OLTP mengandung data terkini, sistem data warehouse
mengandung
data
historis
(data
lama)
menyimpan data yang rinci, sedang, ringkas data bersifat dinamis Data bersifat statis prosesnya berulang prosesnya tidak
terstruktur,
ditujukan
untuk
maksud
tertentu
digunakan untuk transaksi digunakan untuk analisis transaksi tingkat tinggi transaksi tingkat menengah sampai rendah berorientasi pada aplikasi berorientasi pada subjek penggunaannya dapat diprediksi penggunaannya tidak dapat diprediksi
sebelumnya
mendukung
keputusan
harian
mendukung keputusan yang bersifat strategis digunakan oleh banyak user operasional digunakan oleh sedikit user manajerial.
2.2.2
Data Mart Data mart adalah sebuah struktur data yang terbagi-bagi yang diperoleh dari data warehouse di mana data tersebut telah didenormalisasi berdasarkan
kebutuhan informasi manajemen
(Inmon, 2002, p389).
2.2.3
Dimensionality Modeling Dimensionality Modeling adalah teknik logikal design yang bertujuan untuk menghadirkan data dalam bentuk standard dan intuitif yang memungkinkan pengaksesan database dengan performa yang tinggi. Beberapa konsep pemodelan data warehouse pada dimensionality modeling, antara lain Skema Bintang, Skema Snowflake, dan Skema Starflake (Connolly and Begg, 2005, p1183).
39
2.2.3.1 Skema Bintang Skema bintang adalah sebuah struktur logikal yang memiliki tabel fakta ditengahnya, yang terdiri atas data faktual, dan dikelilingi oleh tabel-tabel dimensi yang berisi referensi
data.
Skema
bintang
mengeksploitasi
karakteristik data faktual seperti fakta yang digenerasikan oleh events yang muncul pada waktu yang lampau dan tidak berubah. Skema bintang dapat digunakan untuk mempercepat kinerja query dengan informasi referensi denormalisasi ke tabel dimensi tunggal (Connolly and Begg, 2005, p1183).
2.2.4
Tabel Fakta Tabel fakta adalah tabel pusat dari skema bintang dimana data yang sering muncul akan ditempatkan di tabel tersebut. Tabel fakta disebut juga tabel utama (major table), merupakan inti dari skema bintang dan berisi data actual yang akan dianalisis (data kuantitatif dan transaksi). Tabel fakta adalah tabel yang umumnya mengandung angka dan data historis dimana key (kunci) yang dihasilkan sangat unik karena merupakan kumpulan foreign key dan primary key yang ada pada masing–masing tabel dimensi yang berhubungan atau merupakan tabel terpusat dari skema bintang. Tabel fakta menyimpan tipe-tipe measure yang berbeda, seperti measure, yang secara langsung terhubung dengan tabel dimensi dan measure yang tidak berhubungan dengan tabel dimensi (Inmon, 2002, p391).
40
2.2.5
Tabel Dimensi Tabel dimensi adalah tempat dimana data–data yang tidak berhubungan yang berelasi dengan tabel fakta ditempatkan di dalam tabel multidimensional. Tabel dimensi disebut juga tabel kecil (minor table), karena biasanya lebih kecil dan memegang data deskriptif yang mencerminkan dimensi suatu bisnis. Tabel dimensi merupakan tabel yang berisi kategori dengan ringkasan data detail yang dapat dilaporkan, seperti laporan keuntungan pada tabel fakta dapat dilaporkan sebagai dimensi waktu (berupa per bulan atau per tahun) (Inmon, 2002, p389).
2.2.6
ETL ( Extraction, Transformation, Loading ) ETL
adalah
proses
melakukan
pencarian
data,
mengintegrasikan, dan menempatkan data ke dalam sebuah data warehouse (Inmon, 2002, p390). Proses ini terdiri dari tiga tahap, yaitu : a.
Extraction Langkah pertama dari proses ETL adalah proses penarikan data dari satu atau lebih sistem operasional sebagai sumber data (biasa diambil dari sistem OLTP, tapi bisa juga dari sumber data diluar sistem database). Kebanyakan proyek data warehouse menggabungkan data dari sumber-sumber yang berbeda. Pada hakekatnya, proses ekstraksi adalah proses penguraian dan pembersihan data yang diekstrak untuk mendapatkan suatu pola atau struktur data yang diinginkan.
41 b.
Transformation Proses membersihkan data yang telah diambil pada proses extract sehingga data itu sesuai dengan struktur data warehouse atau data mart.
c.
Loading Merupakan tahap akhir dalam proses ETL. Proses memasukkan data ke dalam target akhir, dalam hal ini adalah data warehouse atau data mart. Data berasal dari proses transformasi. Setelah data yang dihasilkan dari proses transformasi sesuai dengan kondisi yang diinginkan pada data warehouse atau data mart, maka proses loading akan berjalan. Data dari staging area akan dipindahkan ke dalam data warehouse atau data mart.
Gambar 2.7 Extract, Transform, Load (Sumber : www.unisys.com/eprise/main/admin/corporate/doc/ELTSQ L.pdf )
42
2.2.7
Metadata Metadata adalah data mengenai data atau deskripsi dari struktur, isi, kunci, indeks, dan lain-lain mengenai data (Inmon, 2002, p393). Peranan metadata yaitu : 1.
Sebagai direktori yang dipakai user untuk menempatkan isi data dan mengetahui lokasi data dalam data warehouse.
2.
Sebagai panduan untuk menempatkan data pada saat data ditransformasikan dari OLTP ke dalam data warehouse.
3.
Sebagai panduan untuk proses summary data dari current detail data menjadi lightly summarized data dan kemudian menjadi highly summarized data.
2.2.8
Penjualan Penjualan merupakan sebuah proses dimana kebutuhan pembeli dan kebutuhan penjualan dipenuhi, melalui antar pertukaran informasi dan kepentingan. Jadi konsep penjualan adalah cara untuk mempengaruhi konsumen untuk membeli produk yang ditawarkan. Dalam kenyataannya penjualan mempunyai dua sistem yang biasa diterapkan oleh suatu perusahaan dagang yaitu penjualan yang dilakukan dengan cara tunai dan penjualan yang dilakukan secara kredit atau sering disebut cara angsuran (Kotler and Amstrong, 2006, p457).
2.2.9
Persediaan Persediaan adalah bahan atau barang yang disimpan yang akan digunakan untuk memenuhi tujuan tertentu, misalnya untuk proses
43 produksi atau perakitan, untuk dijual kembali, dan untuk suku cadang dari suatu peralatan atau mesin. Persediaan dapat berupa bahan mentah, bahan pembantu, barang dalam proses, barang jadi, ataupun suku cadang (Herjanto, 1999, p219).