7
BAB II LANDASAN TEORI
2.1
PT XYZ
PT XYZ adalah salah satu distributor perusahaan milik swasta yang menjual semen kebeberapa wilayah diantaranya Jakarta, Bogor, Tangerang dan Bekasi yang memiliki reputasi baik pada skala nasional, mampu tumbuh dan berkembang secara sehat serta menjadi pilihan terbaik bagi pelanggan. Pertumbuhan dan perkembangan perusahaan senantiasa diiringi dengan peningkatan kualitas produk dan layanan yang prima dengan penerapan sistem manajemen mutu yang memadai, penerapan pengelolaan perusahaan yang baik yang didukung budaya perusahaan dan komitmen manajemen dan segenap karyawan.
2.1.1 Sejarah Semen Semen adalah zat yang digunakan untuk merekat batu, bata, batako, maupun bahan bangunan lainnya. Sedangkan kata semen sendiri berasal dari caementum (bahasa Latin), yang artinya "memotong menjadi bagian-bagian kecil tak beraturan". Meski sempat populer di zamannya, nenek moyang semen made in Napoli ini tak berumur panjang. Menyusul runtuhnya Kerajaan Romawi, sekitar abad pertengahan (tahun 1100-1500 M) resep ramuan pozzuolana sempat menghilang dari peredaran. Dalam perkembangan peradaban manusia khususnya dalam hal bangunan, tentu kerap mendengar cerita tentang kemampuan nenek moyang merekatkan batu-batu raksasa hanya dengan mengandalkan zat putih telur, ketan atau lainnya. Alhasil, berdirilah bangunan fenomenal, seperti Candi Borobudur atau Candi Prambanan di Indonesia ataupun jembatan di Cina yang menurut legenda menggunakan ketan sebagai perekat. Ataupun menggunakan aspal alam sebagaimana peradaban di Mahenjo Daro dan Harappa di India ataupun bangunan kuno yang dijumpai di Pulau Buton.
7
8
Benar atau tidak, cerita, legenda tadi menunjukkan dikenalnya fungsi semen sejak zaman dahulu. Sebelum mencapai bentuk seperti sekarang, perekat dan penguat bangunan ini awalnya merupakan hasil percampuran batu kapur dan abu vulkanis. Pertama kali ditemukan di zaman Kerajaan Romawi, tepatnya di Pozzuoli, dekat teluk Napoli, Italia. Bubuk itu lantas dinamai pozzuolana. Baru pada abad ke-18 (ada juga sumber yang menyebut sekitar tahun 1700-an M), John Smeaton insinyur asal Inggris menemukan kembali ramuan kuno berkhasiat luar biasa ini. Dia membuat adonan dengan memanfaatkan campuran batu kapur dan tanah liat saat membangun menara suar Eddystone di lepas pantai Cornwall, Inggris. Ironisnya, bukan Smeaton yang akhirnya mematenkan proses pembuatan cikal bakal semen ini. Adalah Joseph Aspdin, juga insinyur berkebangsaan Inggris, pada 1824 mengurus hak paten ramuan yang kemudian dia sebut semen portland. Dinamai begitu karena warna hasil akhir olahannya mirip tanah liat Pulau Portland, Inggris. Hasil rekayasa Aspdin inilah yang sekarang banyak dipajang di toko-toko bangunan. Sebenarnya, adonan Aspdin tak beda jauh dengan Smeaton. Dia tetap mengandalkan dua bahan utama, batu kapur (kaya akan kalsium karbonat) dan tanah lempung yang banyak mengandung silika (sejenis mineral berbentuk pasir), aluminium oksida (alumina) serta oksida besi. Bahan-bahan itu kemudian dihaluskan dan dipanaskan pada suhu tinggi sampai terbentuk campuran baru. Selama
proses
pemanasan,
terbentuklah
campuran
padat
yang
mengandung zat besi. Nah, agar tak mengeras seperti batu, ramuan diberi bubuk gips dan dihaluskan hingga berbentuk partikel-partikel kecil mirip bedak. Lazimnya, untuk mencapai kekuatan tertentu, semen portland berkolaborasi dengan bahan lain. Jika bertemu air (minus bahan-bahan lain), misalnya, memunculkan reaksi kimia yang sanggup mengubah ramuan jadi sekeras batu. Jika ditambah pasir, terciptalah perekat tembok nan kokoh. Namun untuk membuat pondasi bangunan, campuran tadi biasanya masih ditambah dengan bongkahan batu atau kerikil, biasa disebut concrete atau beton. Beton bisa disebut sebagai mahakarya semen yang tiada duanya di dunia. Nama asingnya, concrete diambil dari gabungan prefiks bahasa Latin com, yang
9
artinya bersama-sama, dan crescere (tumbuh). Maksudnya kira-kira, kekuatan yang tumbuh karena adanya campuran zat tertentu. Dewasa ini, nyaris tak ada gedung pencakar langit berdiri tanpa bantuan beton.
Meski bahan bakunya sama, "dosis" semen sebenarnya bisa disesuaikan dengan beragam kebutuhan. Misalnya, jika kadar aluminanya diperbanyak, kolaborasi dengan bahan bangunan lainnya bisa menghasilkan bahan tahan api. Ini karena sifat alumina yang tahan terhadap suhu tinggi. Ada juga semen yang cocok buat mengecor karena campurannya bisa mengisi pori-pori bagian yang hendak diperkuat.
2.1.2 Jenis-jenis Semen 2.1.2.1 Ordinary Portland Cement (OPC) -
Indonesian Standard : SNI 15-2049-2004
-
American Standard : ASTM C 150-04a
-
European Standard : EN 197-1:2000 Semen Portland Jenis I merupakan jenis semen yang cocok untuk berbagai macam aplikasi beton dimana syarat-syarat khusus tidak diperlukan.
2.1.2.2 Ordinary Portland Cement (OPC) Jenis II -
Indonesian Standard : SNI 15-7064-2004
-
American Standard : ASTM C 150-04a
-
Semen Portland Jenis II merupakan jenis semen yang cocok untuk berbagai macam aplikasi beton dimana diperlukan daya tahan yang baik terhadap kadar sulfat sedang. Semen jenis ini banyak digunakan di daerah-daerah yang berkadar sulfat sedang,antara lain daerah-daerah rawa dan bangunan-bangunan tepi pantai,bendungan,pondasi jembatan dll.
2.1.2.3 Ordinary Portland Cement (OPC) Jenis V -
Indonesian Standard : SNI 15-2049-2004
10
-
American Standard : ASTM C 150-04a
-
Semen Portland Jenis V merupakan jenis semen yang cocok untuk berbagai macan aplikasi beton dimana diperlukan daya tahan yang baik terhadap kadar sulfat yang tinggi.
-
Semen jenis ini banayak digunakan di daerah-daerah yang berkadar sulfat tinggi, missal daerah-daerah rawa dengan tingkat keasaman tinggi, dermaga (bangunan-bangunan pantai), bendungan, pondasi jembatan, silo bahan-bahan kimia dll.
2.1.2.4 Portland Coposite Cement (PCC) -
Indonesian Standard : SNI 15-7064-2004
-
European Standard : EN 197-1:2000 (42.5 N & 42.5 R)
-
PCC (Portland Composite Cement) digunakan untuk bangunanbangunan pada umumnya, sama dengan penggunaan Semen Portland Jenis I dengan kuat tekanan yang sama.
-
PCC mempunyai panas hidrasi yang lebih rendah selama proses pendinginan dibandingkan dengan semen Portland Jenis I, sehingga pengerjaannya akan lebih mudah dan menghasilkan permukaan beton/plester yang lebih rapat dan lebih halus.
2.1.2.5 Oil Well Cement (OWC) / Semen Sumur Minyak -
American Standard : API Spec 10A Class G-HSR Oil Well Cement (OWC) digunakan untuk penyekat pada pengeboran sumur minyak. Oleh karenanya semen jenis ini juga disebut semen sumur minyak. Sumur-sumur minyak atas gas dibuat dengan pengebor lubang dalam tanah / bumi dengan kedalaman ratusan sampai dengan 20.000 kaki (sekitar 7.000 meter). Pipa besi yang disebut casing ditempatkan pada lubang sumur dan semen dipompa ke bawah melalui pipa tsb. Sewaktu semen terpompa keluar melalui dasar casing tsb. Dan kembali ke permukaan melalui bagian luar casing, ia akan membentuk ikatan kritis antara bagian luar casing dengan dinding sumur yang telah dibor.
11
Ikan ini akan melindungi minyak, gas dan air bawah tanah sehingga tidak tercampur di dalam sumur tsb. Kekokohan semen tergantung pada serangan sulfat dengan kadar, suhu dan tekanan yang tinggi selama proses pemompaan berlangsung. Dikarenakan keharusan waktu pemekatan yang ketat, maka OWC diproduksi dengan standar mutu yang ketat sesuai dengan standar API (American Petroleum Institute).
2.1.2.6 White Portland Cement (WPC) / Semen Portland Putih -
Indonesian Standard : SNI 15-0129-2004
-
American Standard : ASTM C 150-04a
White Portland Cement (WPC) / Semen Portland Putih merupakan jenis semen bermutu tinggi. Semen Portland Putih terutama digunakan untuk keperluan pekerjaan-pekerjaan arsitektur, precast dan beton yang diperkuat dengan fiber, panel, permukaan teraso, stucco, cat semen, nat / keramik serta struktur yang bersifat dekoratif. Semen Portland Putih dibuat dari bahan-bahan baku pilihan yang rendah kandungan
besi
dan
magnesium
oksideanya
(bahan-bahan
tsb.
Menyebabkan semen berwarna abu-abu). Derajat keputihannya diukur menurut standar yang berbeda-beda,namun mutu semen Portland Putih Tiga Rida mencapai angka sekitar 85 dengan menggunakan metode kett C1 Semen Portland Putih dapat juga digunakan untuk proses konstruksi pada umumnya dan saat ini merupakan satu-satunya Smen Portland Putih produksi dalam negeri.
2.1.2.7 Acian Putih TR30 Acian Putih TR30 merupakan produk terbaru yang sangat sesuai untuk Acian. Keuntungan menggunakan Acian Putih TR30 antara lain dapat menghasilkan permukaan acian yang lebih halus, mengurangi retak dan terkelupasnya permukaan karena mempunyai sifat plastis dengan daya rekat tinggi,cepat dan mudah dalam pengerjaan, hemat dalam pemakaian
12
serta dapat digunakan pada permukaan beton dengan menambhkan lem putih.
2.1.2.8 Sistem Operasi Jenis semen yang dijual oleh PT XYZ adalah Portland Coposite Cement (PCC), PCC mempunyai panas hidrasi yang lebih rendah selama proses pendinginan
dibandingkan
dengan
semen
Portland
Jenis
I,
sehingga
pengerjaannya akan lebih mudah dan menghasilkan permukaan beton/plester yang lebih rapat dan lebih halus. Dalam penjualan semen type PCC ini tersedia dalam dua kemasan yaitu kemasan 50kg dan 40kg. Kemasan 50kg dalam 1 Delivery Order (DO) terdapat 160zak, sedangkan kemasan 40kg terdapat 200zak dan dalam 1 Delivery Order terdapat 8 ton. Untuk system operasi penjualan semen pada PT XYZ yaitu meliputi Pabrik Gudang
Toko
Proyek
a. Pabrik Merupakan produsen semen yang berkualitas yang kemudian dikirim kegudang-gudang. Dalam pengiriman barang dari pabrik ke gudang mempunyai surat jalan pengiriman sebagai bukti transaksi pengiriman barang, seperti tertera digambar 2.1. Surat pengantar barang ini merupakan surat yang menjelaskan informasi barang yang dikirim. Dalam surat jalan ini harus mencantumkan tanggal pengiriman, paraf pengirim, nama supir/kurir beserta tanda tangannya, nomor polisi mobil dicantumkan juga, tanggal diterima barang nama penerima digudang dan paraf penerima.
13
Gambar 2.1 Surat Jalan Pabrik ke Gudang
b. Gudang Adalah sebagai distribusi kegiatan yang berusaha memperlancar dan mempermudah penyampaian barang dan jasa dari pabrik ketoko atau proyek. Gudang memegang peranan penting dalam aspek pemasaran, membeli produk dalam jumlah besar dan menyalurkannya ketoko-toko. -
Gudang Jakarta sebagai titik pemasaran pendistribusian untuk area Jakarta Barat, Jakarta Selatan, Jakarta pusat.
-
Gudang Bogor sebagai titik pemasaran pendistribusian untuk area Bogor dan Depok.
-
Gudang Tangerang sebagai titik pemasaran pendistribusian untuk area Serpong dan Tangerang.
-
Gudang Bekasi sebagai titik pemasaran pendistribusian untuk area Bekasi. Untuk pengiriman barang dari Gudang ke toko atau proyek, surat jalannya berbeda dengan surat jalan dari pabrik kegudang.
Untuk pengiriman semen dari Gudang ke toko atau proyek juga mempunyai surat jalan pengiriman sebagai bukti transaksi pengiriman barang, seperti tertera digambar 2.2.
14
Gambar 2.2 Surat Jalan Gudang ke Toko c. Toko adalah sebuah tempat yang didalamnya terjadi kegiatan perdagangan semen kekonsumen. d. Proyek Maksud proyek disini yaitu pengiriman langsung dari Gudang ke lokasi proyek berdasarkan order para kontraktor ke PT XYZ.
2.2
Data Warehouse
2.2.1 Pengertian Data Warehouse Berikut ini adalah beberapa pendapat tentang data warehouse (Vincent Rainardi 2008:16) :
Menurut Bill Inmon, data warehouse adalah kumpulan data yang berorientasi subjek, terintegrasi, bervariasi waktu, dan non-volatile, yang mendukung proses pengambilan keputusan oleh manajemen.
Menurut Ralph Kimball, data warehouse adalah suatu sistem yang mengekstrak, membersihkan, menyesuaikan diri, dan mengirim sumber data ke dalam suatu data penyimpanan dimensional dan kemudian mendukung implementasi query dan analisis untuk tujuan pengambilan keputusan.
15
Menurut Vincent Rainardi, data warehouse adalah suatu sistem yang mengambil dan mengkonsolisaikan data secara berkala dari sistem sumber ke dalam data penyimpanan yang bersifat dimensional atau normalisasi.
Dari beberapa pendapat di atas dapat disimpulkan bahwa suatu data warehouse mengintegrasikan data dari berbagai sumber sistem operasional. Data warehouse adalah database yang saling bereaksi yang dapat digunakan untuk query dan analisisis, bersifat orientasi subjek, terintegrasi, timevariant, tidak berubah yang digunakan untuk membantu para pengambil keputusan. Data warehouse digunakan untuk proses pembuatan keputusan, bukan proses transaksi. Database yang ada merupakan database yang berorientasikan pada transaksi mendukung Online Transaction Processing (OLTP). Data warehouse tidak berorientasikan pada transaksi, data warehouse ada untuk mendukung berbagai macam pekerjaan pengambilan keputusan sehingga data warehouse ada untuk mendukung berbagai macam pekerjaan pengambilan keputusan sehingga data warehouse mendukung metode Online Analytical Processing (OLAP).
2.2.2 Karakteristik Data Warehouse Karakteristik data warehouse menurut Inmon (1993) adalah sebagai berikut : 2.2.2.1 Subject Oriented (Berorientasi pada Subjek) Data warehouse berorientasi subjek adalah data warehouse yang didesain dengan kebutuhan untuk menganalisa penyimpanan data yang mendukung subjek-subjek dalam pengambilan keputusan bukan data yang berorientasi pada aplikasi. Analisa data menjadi lebih baik jika data diorganisasikan berdasarkan subjek, sehingga pengambilan keputusan bisa dilakukan secara khusus dan cepat berdasarkan data yang telah disesuaikan dengan kebutuhan.
2.2.2.2 Integrated (Terintegrasi) Data yang berasal dari sumber data yang berbeda – beda dalam suatu perusahaan menyebabkan sumber data yang ada tidak konsisten, karena
16
adanya perbedaan format. Data warehouse merupakan suatu wadah tunggal yang secara konsisten menggabungkan berbagai format yang berasal dari sumber data yang terpisah dan disesuaikan kedalam format yang konsisten dan saling terintegrasi satu dengan lainnya.
2.2.2.3 Time-variant (Rentang Waktu) Data pada data warehouse akan menjadi akurat dan valid pada beberapa saat atau rentang waktu tertentu. Time-variance juga menampilkan perpanjangan waktu dari data yang ada, secara implisit atau eksplisit keterhubungan waku dengan keseluruhan data, dan kenyataan bahwa mempresentasikan serangkaian kejadian.
2.2.2.4 Non-volatile Data pada data warehouse tidak di-update secara real time tetapi di refresh dari sistem operasional secara reguler. Data baru selalu ditambahkan sebagai suplemen/tambahan pada basis data, bukan penggantian data. Basis data secara terus menerus menyerap data yang baru ini, secara incremental diintegrasikan dengan data sebelumnya.
2.2.3 Istilah-istilah yang berhubungan dengan data Warehouse Istilah-istilah yang berkaitan dengan data warehouse: 2.2.3.1 Data Mart Adalah suatu bagian pada data warehouse yang mendukung pembuatan laporan dan analisa data pada suatu unit, bagian atau operasi pada suatu perusahaan.
2.2.3.2 On-Line Analytical Processing (OLAP) Merupakan suatu pemrosesan database yang menggunakan tabel fakta dan dimensi untuk dapat menampilkan berbagai macam bentuk laporan, analisis, query dari data yang berukuran besar.
2.2.3.3 On-Line Transaction Processing (OLTP)
17
Merupakan suatu pemrosesan yang menyimpan data mengenai kegiatan operasional transaksi sehari-hari.
2.2.3.4 Dimension Table Tabel yang berisikan kategori dengan ringkasan data detail yang dapat dilaporkan. Seperti laporan laba pada tabel fakta dapat dilaporkan sebagai dimensi waktu(yang berupa perbulan, perkwartal dan pertahun). 2.2.3.5 Fact Table Merupakan tabel yang umumnya mengandung angka dan data history dimana key (kunci) yang dihasilkan sangat unik, karena key tersebut terdiri dari foreign key (kunci asing) yang merupakan primary key (kunci utama) dari beberapa dimension table yang berhubungan. 2.2.3.6 DSS Merupakan sistem yang menyediakan informasi kepada pengguna yang menjelaskan bagaimana sistem ini dapat menganalisa situasi dan mendukung suatu keputusan yang baik.
2.2.4 Keuntungan Data Warehouse Kesuksesan implementasi data warehouse dapat membawa manfaat utama bagi suatu organisasi antara lain sebagai berikut : 2.2.4.1 Potential high returns on investment Suatu organisasi harus menjalankan sejumlah besar sumberdaya untuk memastikan kesuksesan implementasi dari data warehouse dengan biaya variatif. 2.2.4.2 Competitive advantage Rasio laba modal yang sangat besar untuk perusahaan yang telah sukses mengimplemetasikan data warehouse adalah bukti dari manfaat kompetisi yang hebat menyertai teknologi ini. Manfaat kompetisi diperoleh dengan membiarkan
akses
pembuat
keputusan
pada
data
yang
dapat
mengungkapkan informasi yang sebelumnya tidak tersedia, tidak dikenal, dan informasi yang belum dimanfaatkan, sebagai contoh, pelanggan, kecenderungan, dan permintaan.
18
2.2.4.3 Increased productivity of corporate decision-maker Data warehouse meningkatkan produktivitas pengambil keputusan pada perusahaan dengan membangun suatu database terintegrasi yang konsisten, berorientasi subjek, dan data historis. Data yang terintegrasi tersebut berasal dari berbagai sistem yang berbeda ke dalam suatu format yang menyediakan satu pandangan yang konsisten tentang organisasi. Dengan melakukan transformasi data ke dalam informasi yang berarti, suatu data warehouse mengijinkan pengambil keputusan pada perusahaan untuk melaksanakan analisis yang lebih subtantif, akurat, dan konsisten.
2.2.5 Tugas-tugas Data Warehouse Ada empat tugas yang bisa dilakukan dengan adanya data warehouse. Menurut Williams, keempat tugas tersebut yaitu: 2.2.5.1 Pembuatan laporan Pembuatan laporan merupakan salah satu kegunaan data warehouse yang paling umum dilakukan. Dengan menggunakan query sederhana didapatkan laporan perhari, perbulan, pertahun atau jangka waktu kapanpun yang diinginkan. 2.2.5.2 On-Line Analytical Processing (OLAP) Dengan adanya data warehouse, semua informasi baik detail maupun hasil summary yang dibutuhkan dalam proses analisa mudah didapat. OLAP mendayagunakan konsep data multi dimensi dan memungkinkan para pemakai menganalisa data sampai mendetail, tanpa mengetikkan satupun perintah SQL. Hal ini dimungkinkan karena pada konsep multidimensi, maka data yang berupa fakta yang sama bisa dilihat dengan menggunakan fungsi yang berbeda. Fasilitas lain yang ada pada software OLAP adalah fasilitas rool-up dan drill-down. Drill-down adalah kemampuan untuk melihat detail dari suatu informasi dan roll-up adalah kebalikannya. 2.2.5.3 Data mining Data mining merupakan proses untuk menggali (mining) pengetahuan dan informasi baru dari data yang berjumlah banyak pada data warehouse,
19
dengan menggunakan kecerdasan buatan (Artificial Intelegence), statistik dan matematika. Data mining merupakan teknologi yang diharapkan dapat menjembatani komunikasi antara data dan pemakainya. Beberapa solusi yang diberikan data mining antara lain : 1. Menebak target pasar Data mining dapat mengelompokkan (clustering) model-model pembeli dan melakukan klasifikasi terhadap setiap pembeli dan melakukan klasifikasi terhadap setiap pemebeli sesuai dengan karakteristik yang diinginkan. 2. Melihat pola beli dari waktu ke waktu Data mining dapat digunakan untuk melihat pola beli dari waktu ke waktu. 3. cross-market analysis Data mining dapat dimanfaatkan untuk melihat hubungan antara satu produk dengan produk lainnya. 4. Profil pelanggan Data mining bisa membantu pengguna untuk melihat profil pembeli sehingga dapat diketahui kelompok pembeli tertentu cenderung kepada suatu produk apa saja. 5. Informasi summary Data mining dapat membuat laporan summary yang bersifat multi dimensi dan dilengkapi dengan informasi statistik lainnya. 2.2.5.4 Proses informasi executive Data warehouse dapat membuat 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 mengetahui segala rinciannya secara lengkap, sehingga mempermudah proses pengambilan keputusan. Informasi dan data pada laporan data warehouse menjadi target informative bagi user.
20
2.2.6 Penyimpanan Data pada Data Warehouse Terdapat dua pendekatan utama untuk menyimpan data ke dalam data warehouse, yaitu pendekatan dimensional dan normalisasi.
2.2.6.1 Pendekatan Dimensional Pada pendekatan dimensional atau permodelan dimensional (dimesional data store), data transaksi dibagi ke dalam tabel fakta menurut data transaksi atau dimensi, yang merupakan acuan yang memberi konteks terhadap fakta. Sebagai contoh adalah data transaksi penjualan yang dipecah ke dalam fakta seperti jumlah produk yang dipesan dan biaya harus dibayar dan kedalam dimensi seperti tanggal pesanan, nama pelanggan, nomor produk, lokasi pengiriman dan tagihan, dan penjual. Permodelan dimensional dapat diimplentasikan secara fisik pada beberapa format skema yang berbeda. Contohnya adalah skema bintang (star schema), skema gumpalan salju (snowflake schema), dan skema galaksi (galaxy schema). Gambar 2.3 merupakan contoh salah satu skema yaitu skema bintang.
Gambar 2.3 Skema Bintang
21
(Vincent Rainardi, 2008:8)
2.2.6.2 Pendekatan Normalisasi Pada pendekatan normalisasi atau permodelan normalisasi (normalized data store), data pada data warehouse disimpan berdasarkan tingkatan, mengikuti aturan normalisasi basis data. Tabel dikelompokkan berdasarkan area subjek yaitu kategori data secara umum, seperti: data pada pelanggan, produk, keuangan, dll. Permodelan normalisasi adalah keterhubungan satu atau lebih basis data dengan sedikit atau tanpa data yang mubazir/redundan. Hubungan basis data tersebut terdiri dari kesatuan tabel keterhubungan antara tabel induk dan anak. Normalisasi
adalah
proses
membuang
data
mubazir
dengan
mengimplementasikan aturan normalisasi. Ada lima tingkatan format normal, penyimpanan data secara normalisasi biasanya dalam bentuk normal ketiga atau lebih.
Gambar 2.4 Permodelan Normalisasi (Vincent Rainardi, 2008:9)
Permodelan dimensional merupakan format yang lebih baik untuk menyimpan data pada warehouse/gudang untuk tujuan melakukan query dan
22
penganalisisan data daripada normalisasi. Hal ini karena lebih sederhana dan memberi pencapaian query yang lebih baik. Permodelan normalisasi merupakan format yang lebih baik untuk mengintegrasikan data dari berbagai sumber, terutama bentuk normal ketiga atau lebih. Hal ini karena hanya ada satu tempat untuk memperbarui tanpa data yang mubazir, seperti pada penyimpanan data secara normalisasi.
2.2.6.3 Permodelan Dimensional Pada permodelan dimensional terdapat dua tabel utama yaitu: tabel fakta dan tabel dimensi. Tabel fakta adalah atribut yang menjelaskan kondisi-kondisi dari kesatuan ketika peristiwa bisnis terjadi. Sebagai contoh Gambar 2.5, kita mempunyai suatu kunci dimensi yang disebut customer_key. Tabel tersebut menerangkan bahwa kolom tersebut berisi kunci (atau ID) dari pelanggan yang membeli produk. Pada gambar tersebut dapat kita lihat tabel dimensi pelanggan terhubung dengan tabel fakta yang menggunakan kolom customer_key. Kolom customer_key adalah kunci utama/primary key pada tabel dimensi pelanggan, dan merupakan kunci tamu/foreign key pada tabel fakta.
Gambar 2.5 Contoh Tabel Fakta dan Tabel Dimensi (Vincent Rainardi 2008:72)
23
Tabel dimensi berisi berbagai atribut yang menjelaskan kondisi-kondisi dari kesatuan yang terlibat pada peristiwa bisnis yang tersimpan pada tabel fakta. Atribut disimpan sebagai kolom di tabel dimensi, dan dikenal sebagai atribut dimensional. Dimensi pelanggan terdiri dari kolom yang menjelaskan kondisi dari pelanggan yang melakukan pembelian, meliputi data nama pelanggan, alamat, nomor telepon, tanggal lahir, alamat email, jenis kelamin, minat, pekerjaan, dan seterusnya. Dimensi produk terdiri dari kolom yang menjelaskan kondisi-kondisi dari produk yang dibeli, meliputi data nama produk, jenis produk, kategori produk, media, SKU, minimum level pesanan, kode produk, biaya unit, dan harga satuan. a. Skema Bintang (Star Schema) Skema Bintang adalah model yang paling sederhana dari skema data warehouse. Skema bintang terdiri suatu tabel fakta yang terletak di pusat/sebagai pusatnya, yang dikelilingi oleh tabel dimensi yang berisi data pendukung.
24
Gambar 2.6 Skema Bintang (Thomas C dan Carolyn B, 2005:1184)
Skema bintang dapat digunakan untuk mempercepat kinerja query dengan tanpa normalisasi mengacu pada informasi kedalam tabel dimensi tunggal. Sebagai contoh beberapa tabel (seperti Property For Sales, Branch, ClientBuyer, Staff, dan Owner) berisi tentang data lokasi (city, region, dan country), dimana diulang pada masing-masing tabel.
b. Skema Gumpalan Salju (Snowflake Schema) Skema gumpalan salju merupakan suatu variasi dari skema bintang, meliputi normalisasi dari tabel dimensi. Pada skema gumpalan salju, tabel dimensi dinormalisasi kedalam berbagai tabel yang terhubung, hal ini dilakukan ketika pada skema gumpalan salju akan
25
diperinci, dimana diperbolehkan tabel dimensi memiliki tabel dimensi. Hal ini terlihat pada tabel diagram di bawah ini:
Gambar 2.7 Skema Gumpalan Salju (Thomas C dan Carolyn B, 2005:1185)
Gambar diatas menerangkan bahwa kita dapat melakukan normalisasi data lokasi (city, region, dan country) dalam dimensi Branch dan seterusnya.
2.2.7 Langkah-langkah Proses Desain Dimensional Berikut ini adalah pemahaman dari http://semantic.nectec.or.th/marut/dw/, mengenai empat langkah dalam proses desain dimensional menurut pendapat Kimball (2002), antara lain: 2.2.7.1 Memilih Proses Bisnis (Select the Business Process) Memahami kebutuhan bisnis untuk menjawab masalah bisnis yang paling utama. Menentukan model proses bisnis apa ke dalam data mart. Sebagai contoh, sebuah department store mungkin memiliki proses bisnis sebagai berikut: pembelian pelanggan, produk return, stok pesanan. Jika pengguna ingin mengetahui tentang pembelian pelanggan, data mart harus dibangun untuk data pembelian pelanggan
26
Dipilih Proses Bisnis untuk Data Mart
Proses bisnis Pembelian pelanggan Produk return Stok pesanan
Pembelian pelanggan
Gambar 2.8 Memilih Proses Bisnis
2.2.7.2 Menentukan Grain (Declare the Grain of the Business Process) Setelah proses bisnis teridentifikasi, perancang warehouse harus menentukan level detail yang harus disimpan dalam tabel fakta. Biasanya informasi yang paling atomis dari proses bisnis yang harus disimpan, yaitu informasi dengan sangat rinci. Misalnya, setiap transaksi penjualan adalah informasi yang paling atomis dari pembelian pelanggan. Kemungkinan tingkat rincian Total penjualan dalam satu bulan Total penjualan dalam satu minggu Total penjualan dalam satu hari Penjualan untuk setiap pelanggan (pelanggan setiap transaksi pembelian)
Grain dipilih untuk Tabel Fakta
Setiap pembelian pelanggan
Gambar 2.9 Menentukan Grain
2.2.7.3 Memilih Dimensi (Choose the Dimensions) Setelah grain dari tabel fakta dipilih, dimensi ditambahkan ke tabel fakta. Dimensi mengatur konteks untuk bertanya tentang fakta-fakta dalam tabel fakta, dimana dimensi waktu harus selalu ada. Misalnya, pembelian setiap pelanggan dapat memiliki dimensi sebagai berikut. Produk, Toko, Pelanggan, dan Tanggal Pembelian.
27
Produk
Toko
Produk_ID (PK)
Toko_ID (PK) Pembelian Pelanggan Waktu_ID (FK) Produk_ID (FK) Toko_ID (FK) Gudang_ID (FK)
Pelanggan
Waktu
Gudang_ID (PK)
Waktu_ID (PK) Dimensi
Gambar 2.10 Memilih Dimensi 2.2.7.4 Mengidentifikasi Fakta (Identify the Facts) Langkah terakhir adalah memilih fakta yang akan ditampilkan dalam tabel fakta dimana harus sesuai dengan grain. Misalnya, untuk setiap transaksi pembelian pelanggan, fakta yang sesuai dengan grain tersebut adalah:
Jumlah unit yang dibeli
Total jumlah penjualan
Harga per unit (dapat berasal dari yang lain)
Produk
Toko
Produk_ID (PK)
Toko_ID (PK)
Pembelian Pelanggan Waktu_ID (FK) Produk_ID (FK) Toko_ID (FK) Pelanggan_ID (FK) Unit_yang_dibeli Total_jumlah_penjualan
Pelanggan Pelanggan_ID (PK)
Fakta (ukuran)
Waktu Waktu_ID (PK)
Gambar 2.11 Mengidentifikasi Fakta
28
2.3
Pentaho
Pentaho adalah kumpulan aplikasi yang mempunyai focus terhadap Business Intelligence yang bersifat free open source software (FOSS) dan berjalan di atas platform Java. Aplikasi-aplikasi Pentaho dikembangkan oleh Pentaho corp yang berpusat di Orlanda, Amerika Serikat.
Gambar 2.12 Logo Pentaho
Pentaho Corporation berdiri pada tahun 2004 dan didirikan oleh Richard Daley. Richard sebelumnya telah bekerja di IBM pada bagian BI. Pentaho dalam perjalanannya melakukan akuisisi terhadap berbagai proyek open source terkenal dan melakukan perbaikan terhadapnya seperti contohnya JFreeReport. Disusul oleh Mondrian, Kettle dan Weka dimana semua lead developer dari proyek ini tetap dipertahankan.
2.3.1 Pentaho BI Server Pentaho BI Server merupakan portal yang memiliki layanan web service, workflow engine, dan sebagai user interface untuk menampilkan laporan operasional maupun analisis di aplikasi Pentaho.
Aplikasi pada BI Server terdiri dari 2 aplikasi yaitu :
29
1. PUC (Pentaho User Console) : aplikasi berbasis web yang digunakan untuk membuat report, analysis, dan dashboard dan mengakses dan mengeksekusi workflow Pentaho.
Gambar 2.13 Pentaho User Console
Analisis OLAP dilakukan di Pentaho User Console dengan menampilkan beberapa toolbar pendukung agar dapat melihat data dari sudut pandang yang berbeda. Berikut toobal jpivot yang terdapat di Pentaho User Console :
30
Gambar 2.14 Toolbar jpivot
Pentaho Administration Console: aplikasi berbasis web yang digunakan untuk membuat dan mengoganisasikan administrasi user/role, serta pengaturan akses ke database yang digunakan oleh workflow Pentaho User Console.
31
Gambar 2.15 Pentaho Administration Console
2.3.2 Pentaho Data Integration Pentaho Data Integration atau biasanya disebut kettle adalah aplikasi berbasis GUI (Graphical User Interface) bagian dari Pentaho yang digunakan untuk proses ETL (Extract, Transformation and Load) dan memiliki kemampuan dalam mengelola proses integrasi data, dan sangat populer karena sifatnya yang open source dan free.
Gambar 2.16 Pentaho Data Integration
32
Gambar 2.17 Proses ETL Pentaho Data Integration
Komponen Kettle terdiri dari 4 aplikasi, yaitu: -
Spoon, yaitu aplikasi grafis berbasis GUI yang digunakan untuk merancang file skema job dan transformation
-
Pan,
yaitu
script
yang digunakan
untuk
menjalankan
file
skema
transformation melalui terminal / command line -
Kitchen, yaitu script yang digunakan untuk menjalankan file skema job melalui terminal / command line
-
Carte, yaitu temporary web server yang digunakan untuk mengeksekusi job/transformation secara cluster atau parallel
Kesemua aplikasi tersebut di atas dijalankan melalui shell atau batch script yang berkaitan. Pentaho Data Integration memiliki fitur – fitur diantaranya : -
Memiliki utilitas grafik yang dapat digunakan merancang control flow umum maupun data flow (aliran data).
-
Multi platform - karena dikembangkan di atas Java yang notabene berjalan di banyak platform sistem operasi.
-
Bersifat concurrent, dalam arti row-row data diambil oleh suatu step dan diserahkan ke step lain secara parallel.
-
Scalable - dapat beradaptasi dengan penambahan kapasitas memori RAM atau pun storage (scale up) dan dapat node komputer / cluster (scale out).
-
Koleksi step transformation dan job yang cukup banyak
33
-
Extensible, kita dapat membuat step transformation dan job baru dengan sistem plugin.
-
Dukungan luas berbagai produk database yang terkenal di pasaran baik itu proprietary maupun free open source seperti Oracle, SQL Server, MySQL, PostgreSQL dan lain sebagainya.
Pentaho Data Integration memiliki banyak plugin yang digunakan untuk melakukan proses ETL (Extract, Transformation and Load). Berikut ini merupakan beberapa plugin yang digunakan dalam impelementasi ini. Kesemua aplikasi tersebut di atas dijalankan melalui shell atau batch script yang berkaitan.
Pentaho Data Integration memiliki fitur – fitur diantaranya : -
Memiliki utilitas grafik yang dapat digunakan merancang control flow umum maupun data flow (aliran data).
-
Multi platform - karena dikembangkan di atas Java yang notabene berjalan di banyak platform sistem operasi.
-
Bersifat concurrent, dalam arti row-row data diambil oleh suatu step dan diserahkan ke step lain secara parallel.
-
Scalable - dapat beradaptasi dengan penambahan kapasitas memori RAM atau pun storage (scale up) dan dapat node komputer / cluster (scale out).
-
Koleksi step transformation dan job yang cukup banyak
-
Extensible, kita dapat membuat step transformation dan job baru dengan sistem plugin.
-
Dukungan luas berbagai produk database yang terkenal di pasaran baik itu proprietary maupun free open source seperti Oracle, SQL Server, MySQL, PostgreSQL dan lain sebagainya.
Pentaho Data Integration memiliki banyak plugin yang digunakan untuk melakukan proses ETL (Extract, Transformation and Load). Berikut ini merupakan beberapa plugin yang digunakan dalam impelementasi ini 50 yang
34
terdapat pada aplikasi Pentaho Data Integration beserta penjelasan dari masingmasing plugins:
Gambar 2.18 Plugin Pentaho Data Integration
2.3.3 Pengertian Schema Worbench Pentaho Schema Worbench adalah aplikasi yang berbasis java dengan kemampuan Graphica User Interface yang digunakan untuk memetakan cube,
35
dimension dan measure dengan relational database untuk merancang skema XML Mondrian.
Gambar 2.19 Pentaho Schema Worbench
2.4
MYSQL
MYSQL merupakan software system manajemen database relasional yang juga berguna sebagai suatu Database server. Mysql menjadi populer karena sifatnya yang free (tidak perlu membayar lisensi dalam menggunakannya) dan cocok pada banyak platform. MYSQL dapat didownload melalui http://www.mysql.com. Database server merupakan suatu software yang bertugas untuk melayani permintaan dari client.
MySQL sebagai suatu database server mempunyai beberapa kemampuan, salah satunya harus menyediakan suatu sistem manajemen database yang dapat mengatur
bagaimana
menyimpan,
transaksitransaksi database lainnya.
menambah,
mengakses
data
dan
36
Menurut situs resmi dari MySQL, http://www.mysql.com. MySQL memiliki beberapa keistimewaan, antara lain: -
Portabilitas MySQL dapat berjalan stabil pada berbagai sistem operasi seperti Windows, Linux, FreeBSD, Mac Os X Server, Solaris dan masih banyak lagi.
-
Open Source MySQL didistribusikan secara open source, dibawah lisensi GPL sehingga dapat digunakan secara cuma-cuma.
-
Multiuser MySQL dapat digunakan oleh beberapa user dalam waktu yang bersamaan tanpa mengalami masalah atau konflik.
-
Performance tuning MySQL memiliki kecepatan yang menakjubkan dalam menangani query sederhana, dengan kata lain dapat memproses lebih banyak SQL per satuan waktu.
-
Jenis Kolom MySQL memiliki tipe kolom yang sangat kompleks, seperti signed / unsigned integer, float, double, char, text, date, time stamp, dan lain-lain.
-
Perintah dan Fungsi MySQL memiliki operator dan fungsi secara penuh yang mendukung perintah Select dan Where dalam perintah (query).
-
Keamanan MySQL memiliki beberapa lapisan sekuritas seperti level subnet mask, nama host, dan izin akses user dengan sistem perizinan yang mendetail serta sandi terenkripsi.
-
Skalabilitas dan Pembatasan MySQL mampu menangani basis data dalam skala besar, dengan jumlah rekaman (records) lebih dari 50 juta dan 60 ribu tabel serta 5 milyar baris. Selain itu batas indeks yang dapat ditampung mencapai 32 indeks pada tiap tabelnya.
-
Konektivitas
37
MySQL dapat melakukan koneksi dengan klien menggunakan protokol TCP/IP, Unix soket (UNIX), atau Named Pipes (NT). -
Lokalisasi MySQL dapat mendeteksi pesan kesalahan pada klien dengan menggunakan lebih dari dua puluh bahasa. Meski pun demikian, bahasa Indonesia belum termasuk di dalamnya.
-
Antar Muka MySQL memiliki interface (antar muka) terhadap berbagai aplikasi dan bahasa pemrograman dengan menggunakan fungsi API (Application Programming Interface).
-
Klien dan Peralatan MySQL dilengkapi dengan berbagai peralatan (tool) yang dapat digunakan untuk administrasi basis data, dan pada setiap peralatan yang ada disertakan petunjuk online.
-
Struktur tabel MySQL memiliki struktur tabel yang lebih fleksibel dalam menangani ALTER TABLE, dibandingkan basis data lainnya semacam PostgreSQL ataupun Oracle.
Pada saat instalasi, secara default MySQL akan membuat sebuah database bernama mysql. Salah satu isi dari database ini adalah tabel user, tabel ini berisi nama dan password user yang dapat mengakses data pada database yang dibuat di mysql. Database ini juga berisi hak-hak yang diberikan pada setiap user. Berikut adalah penjelasan singkat tentang field atau kolom yang terdapat pada tabel user yang perlu diketahui : -
Host menyatakan nama host tempat pemakai melakukan perintah.
-
User menyatakan nama pemakai.
-
Password menyatakan password pemakai.
-
Select_priv menyatakan pemakai bisa melakukan instruksi SQL SELECT (melihat isi tabel) atau tidak. Nilai N berarti tidak bisa dan Y berarti bisa.
-
Insert_priv menyatakan pemakai bisa melakukan instruksi SQL INSERT (menambah data) atau tidak. Nilai N berarti tiak bisa nilai Y berarti bisa.
38
-
Update_priv menyatakan pemakai bisa melakukan instruksi SQL UPDATE (mengganti data) atau tidak. Nilai N berarti taidak bisa nilai Y berarti bisa.
-
Delete_priv menyatakan pemakai bisa melakukan instruksi SQL DELETE (menghapus data) atau tidak. Nilai N berarti tidak bisa nilai Y berarti bisa.
-
Create_priv menyatakan pemakai bisa melakukan penciptaan database/tabel atau tidak. Nilai N berarti tidak bisa nilai Y berarti bisa.
-
Drop_priv menyatakan pemakai bisa melakukan penghapusan database/tabel atau tidak. Nilai N berarti tidak bisa nilai Y berarti bisa.
-
Alter_priv menyatakan pemakai bisa melakukan instruksi ALTER TABLE (mengubah struktur tabel) atau tidak.Nilai N berarti tidak bisa nilai Y berarti bisa.
-
File_priv menyatakan pemakai bisa membaca atau merekam berkas pada server menggunakan perintah LOAD DATA INFILE dan SELECT…..INTO OUTFILE atau tidak. Nilai N berarti tidak bisa nilai Y berarti bisa.
-
Grant_priv menyatakan pemakai bisa melakukan pemberian izin wewenang ke pemakai lain atau tidak. Niali N berarti tidak bisa nilai Y berarti bisa.
-
Reload_priv
menyatakan
pemakai
bisa
melakukan
instruksi
seperti
FLUSHPREVILEGES dan RELOAD (membaca kembali tabel wewenang) atau tidak. Nilai N berarti tidak bisa nilai Y berarti bisa. -
Shutdown_priv menyatakan pemakai bisa melakukan instruksi untuk mematikan server atau tidak. Nilai N berarti tidak bisa nilai Y berarti bisa.
-
Process_priv menyatakan pemakai bisa melakukan instruksi SHOW PROCESSLIST (menampilkan informasi proses yang sedang berjalan) atau tidak. Nilai N berarti tidak bisa nilai Y berarti bisa.
-
Index_priv menyatakan pemakai bisa melakukan instruksi menciptakan dan menghapus indeks atau tidak. Nilai N berarti tidak bisa nilai Y berarti bisa.