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