64
BAB IV IMPLEMENTASI
4.1. Spesifikasi Perangkat Keras dan Lunak
Dalam penelitian ini DBMS yang digunakan adalah Oracle 11g. Perangkat keras yang digunakan untuk melakukan pengujian query dengan
spesifikasi sebagai berikut : -
Processor : IntelR CoreTM i3 CPU
- Memory
: 6144 MB RAM -
Sistem Operasi : Windows 7 Ultimate 32-bit
- Browser
: Mozilla Firefox
4.2. Langkah Membangun Gudang Data
4.2.1. Membaca Data Legacy
Pada tahap ini untuk menggali informasi yang ada menggunakan tahap-tahap yang ada pada data mining dan tahap yang digunakan adalah
pembersihan data dan seleksi data sedangkan untuk tahap lainnya menggunakan tahap dalam membangun gudang data. Berikut ini adalah
penjelasan tersebut.
1. Pembersihan data
Pada tahap ini dilakukan dengan membuat data menjadi konsisten karena memiliki isian-isian yang tidak sempurna seperti data yang hilang,
data yang tidak valid atau juga hanya sekedar salah ketik. Pada tahap ini untuk memudahkan dalam mengkonversi data ke dalam basis data maka
dengan data yang ada dilakukan dengan menambah kolom bulan, tahun dan menghapus data yang bukan merupakan penyakit seperti kecelakaan. Setiap
tahap dapat dilihat pada Tabel 4.1 sampai 4.3
Tabel 4. 1 Preprocessing dengan menghilangkan data yang bukan penyakit
1. Melakukan
preprocessing dengan
menghapus data yang bukan
merupakan penyakit
Menghapus ke dua data
tersebut karena
bukan merupakan
penyakit
Tabel 4. 2 Preprocessing dengan menambah kolom bulan 2.
Melakukan preprocessing
dengan menambah kolom bulan.
Agar dapat mengetahui penyakit tersebut muncul
di bulan apa. Menambah kolom BULAN
Tabel 4. 3 Preprocessing dengan menambah kolom tahun
3. Melakukan
preprocessing dengan
menambah kolom
tahun. Agar
dapat mengetahui
penyakit terjadi
pada tahun
berapa. Menambah kolom TAHUN
69 2.
Seleksi data Dari data yang ada dilakukan seleksi data karena tidak semua data
digunakan. Pada kasus ini SP2TP tidak digunakan dan diganti dengan kolom nama penyakit. Karena SP2TP juga bukan merupakan data yang
dirasa penting karena hanya berisi nomor urut dari nama penyakit yang digunakan untuk pelaporan. Untuk tahap selanjutnya setelah melakukan
tahap preprocessing kemudian melakukan tahap menggabungkan data dari berbagai sumber terpisah.
4.2.2. Menggabungkan Data dari Berbagai Sumber Terpisah
Seperti yang telah diilustrasikan pada bab 3, penggabungan data perlu dilakukan karena data yang ada tidak seluruhnya berbentuk file Excel.
4.2.3. Memindahkan Data ke Server Gudang Data
Sebelum membuat dimensi dan tabel fakta, maka terlebih dahulu membuat tabel master yang nantinya akan menjadi sumber untuk membuat
dimensi dalam gudang data. Tabel master yang dibuat meliputi ms_penyakit dan ms_kelompok_umur.
1. Master penyakit
Gambar 4. 1 Proses pembuatan tabel ms_penyakit di Oracle .ktr
Gambar 4.1 merupakan proses pembuatan tabel ms_penyakit di Oracle, dengan inputan berupa file excel. Sort rows berfungsi untuk
mengurutkan data, karena untuk menghilangkan redundancy data dengan menggunakan unique rows data harus diurutkan terlebih dahulu. Pada
id_penyakit menggunakan bantuan add sequence untuk membuat id penyakitnya mengingat data penyakit yang ada dalam jumlah besar. Select
values untuk mengkonversi data dari file ke dalam format database yang
diinginkan atau mengubah nama kolom atau menghapus kolom yang tidak digunakan. Table output digunakan untuk membuat tabel pada database.
Tabel 4. 4 ms_penyakit
Tabel 4.4 adalah hasil dari tabel ms_penyakit pada database, terdiri dari kolom id penyakit, SP2TP, ICD_X dan jenis penyakit.
2. Master kelompok umur
Gambar 4. 2 Proses pembuatan tabel ms_kelompok_umur di Oracle .ktr
Gambar 4.2
merupakan proses
pembuatan tabel
ms_kelompok_umur, untuk membuat tabel master ini menggunakan inputan berupa file excel. Select values untuk mengkonversi data dari file
ke dalam format database yang diinginkan atau mengubah nama kolom atau menghapus kolom yang tidak digunakan. Table output digunakan
untuk membuat tabel pada database.
Tabel 4. 5 ms_kelompok_umur
Tabel 4.5 adalah hasil dari tabel ms_kelompok_umur pada database,
terdiri dari kolom id kelompok umur dan nama kelompok umur.
4.2.4. Memecah Gudang Data dalam Tabel Fakta dan Tabel Dimensi
1. Tr penyakit
Gambar 4. 3 Proses pembuatan tr_penyakit di Oracle .ktr
Sumber data dari tr_penyakit berupa data penyakit tahun 2010 sampai 2012 .xls, sumber lainnya berasal dari tabel ms_penyakit dan
ms_kelompok_umur. Terdapat stream lookup pada ms kelompok umur yang digunakan untuk membaca id kelompok umur dari ms kelompok umur dan
tr penyakit, demikian juga stream lookup pada ms penyakit berfungsi untuk membaca id penyakit dari tr penyakit dan ms penyakit. Add sequence
digunakan untuk menambah kolom id tr pada tabel tr penyakit, id tr merupakan primary key dari tabel ini. Select values berfungsi untuk
mengkonversi data ke dalam format database, kemudian tabel tr penyakit dibuat pada database dengan menggunakan tabel output.
Tabel 4. 6 tr penyakit
Tabel 4.6 merupakan hasil pembuatan tr penyakit pada database.
2. Dimensi nama penyakit
Gambar 4. 4 Proses pembuatan dimensi nama penyakit di Oracle .ktr
Sumber data dari dimensi ini berasal dari tabel master ms_penyakit. Terdapat add sequence yang berfungsi untuk menambah
kolom sk nama penyakit yang merupakan surrogate key dari dimensi ini. Select values
digunakan untuk mengkonversi data ke dalam format database
yang diinginkan atau mengubah nama kolom atau menghapus
kolom yang tidak digunakan. Table output digunakan untuk create table pada database.
Tabel 4. 7 dim nama penyakit
Tabel 4.7 merupakan hasil pembuatan dim nama penyakit di Oracle.
3. Dimensi kelompok umur
Gambar 4. 5 Proses pembuatan dimensi kelompok umur di Oracle .ktr
Tabel master kelompok umur merupakan sumber data yang digunakan untuk membuat dimensi kelompok umur. Terdapat add sequence
yang digunakan untuk menambah surrogate key yakni sk kelompok umur yang bertipe integer. Select values digunakan untuk mengkonversi data ke
dalam format database, serta digunakan untuk memilih atau menghapus kolom. Table output digunakan untuk membuat tabel dim kelompok umur
pada basis data.
Tabel 4. 8 dim kelompok umur
Hasil pembuatan tabel ini di Oracle dapat dilihat pada Tabel 4.8
4. Dimensi waktu
Gambar 4. 6 Proses pembuatan dimensi waktu di Oracle .ktr
Sumber data dari dimensi waktu berasal dari tr penyakit, data dari tr penyakit diurutkan terlebih dahulu menggunakan sort rows, sebelum
menghilangkan redundancy data menggunakan unique rows. Sk waktu merupakan surrogate key yang ditambahkan pada dimensi waktu, sk waktu
dibuat menggunakan add sequence. Untuk membuat kolom id tahun dan nama bulan menggunakan modified java script value. Select values
digunakan untuk mengkonversi data ke dalam format database. Untuk membuat tabel dim waktu pada database menggunakan table output. Tabel
4.9 merupakan hasil pembuatan dimensi waktu di Oracle.
Tabel 4. 9 dim waktu
5. Tabel fakta
Gambar 4. 7 Proses pembuatan tabel fakta di Oracle .ktr
Tabel fakta berisi measures yakni B,L dan K serta berisi semua sk dari masing-masing dimensi. Tabel ini sumber datanya berasal dari tr
penyakit. Stream lookup pada dim kelompok umur digunakan untuk membaca id kelompok umur milik dim kelompok umur dan tr penyakit, id
dari masing-masing tabel tersebut digunakan untuk mengambil sk kelompok umur. Demikian juga stream lookup yang terdapat pada dim
nama penyakit dan dim waktu fungsinya sama dengan stream lookup pada dim kelompok umur. Select values digunakan untuk mengkonversi data ke
dalam format database. Table output digunakan untuk membuat tabel fakta pada database. Tabel 4.10 merupakan hasil pembuatan tabel fakta.
Tabel 4. 10 tabel fakta
4.3. OLAP
Gambar 4. 8 Skema Penyakit
Skema penyakit ini terdiri dari tiga dimensi dan memiliki measures yakni B, L dan K. Pada dimensi nama penyakit terdapat hirarki yang
didalamnya terdapat level ICD_X dan level nama penyakit. Dimensi waktu didalamnya terdapat hirarki yang didalamnya berisi level tahun dan
bulan. Dimensi kelompok umur terdapat hirarki yang didalamnya terdapat level kelompok umur. Detail dari pembuatan skema penyakit dapat dilihat
pada listing XML berikut ini.
Tabel 4. 11 Listing skema penyakit
Schema name=skripsi Dimension type=StandardDimension name=Nama Penyakit
Hierarchy hasAll=true allMemberName=Semua Penyakit primaryKey=SK_NAMA_PENYAKIT
Table name=DIM_NAMA_PENYAKIT schema=SKRIPSITable Level
name=ICD_X column=ICD_X
nameColumn=ICD_X ordinalColumn=ICD_X
type=String uniqueMembers=false levelType=Regular hideMemberIf=Never
Level Level name=Nama Penyakit column=SP2TP
nameColumn=JENIS_PENYAKIT ordinalColumn=SP2TP type=String uniqueMembers=false levelType=Regular hideMemberIf=Never
Level Hierarchy
Dimension Dimension type=TimeDimension name=Waktu
Hierarchy hasAll=true allMemberName=Semua Waktu primaryKey=SK_WAKTU
Table name=DIM_WAKTU schema=SKRIPSI Table
Level name=Tahun
column=ID_TAHUN nameColumn=TAHUN
ordinalColumn=ID_TAHUN type=String
uniqueMembers=false levelType=TimeYears hideMemberIf=Never Level
Level name=Bulan
column=BULAN nameColumn=NAMA_BULAN ordinalColumn=BULAN type=String
uniqueMembers=false levelType=TimeMonths hideMemberIf=Never Level
Hierarchy Dimension
Dimension type=StandardDimension name=Kelompok Umur Hierarchy
hasAll=true allMemberName=Semua
Kelompok Umur primaryKey=SK_KELOMPOK_UMUR Table
name=DIM_KELOMPOK_UMUR schema=SKRIPSI
Table Level
name=Kelompok Umur
column=ID_KELOMPOK_UMUR nameColumn=NAMA_KELOMPOK_UMUR
ordinalColumn=ID_KELOMPOK_UMUR type=String
uniqueMembers=false levelType=Regular hideMemberIf=Never Level
Hierarchy Dimension
Cube name=penyakit cache=true enabled=true Table
name=TABEL_FAKTA_PENYAKIT schema=SKRIPSI
Table DimensionUsage source=Nama Penyakit name=Nama
Penyakit foreignKey=SK_NAMA_PENYAKIT DimensionUsage
DimensionUsage source=Waktu
name=Waktu foreignKey=SK_WAKTU
DimensionUsage DimensionUsage
source=Kelompok Umur
name=Kelompok Umur foreignKey=SK_KELOMPOK_UMUR DimensionUsage
Measure name=Jumlah
B column=B
datatype=Numeric aggregator=sum visible=true Measure
Measure name=Jumlah L column=L datatype=Numeric aggregator=sum visible=true
Measure Measure
name=Jumlah K
column=K datatype=Numeric aggregator=sum visible=true
Measure Cube
Schema
4.4. Tampilan Hasil Query I