Anda di halaman 1dari 6

Jurnal Pengembangan Teknologi Informasi dan Ilmu Komputer e-ISSN: 2548-964X

Vol. 2, No. 4, April 2018, hlm. 1366-1371 http://j-ptiik.ub.ac.id

Analisis Peningkatan Performa Proses ETL (Extract, Transform, Dan


Loading) Pada Data Warehouse Dengan Menerapkan Delta Extraction
Menggunakan Historical Table
Arif Bimo Winnetou1, Satrio Agung Wicaksono2, Aryo Pinandito3
Program Studi Sistem Informasi, Fakultas Ilmu Komputer, Universitas Brawijaya
Email: 1arif.bimo24@gmail.com, 2satrio.agung@ub.ac.id, 3aryo.pinandito@gmail.com

Abstrak
Dalam jangka waktu tertentu, umumnya instansi pendidikan menghasilkan data dengan kapasitas yang
sangat besar dari kegiatan operasionalnya. Dari data tersebut akan muncul kebutuhan untuk
mendapatkan informasi tertentu yang berguna sebagai bahan evaluasi kinerja atau bahkan sebagai
bahan untuk mengambil keputusan manajemen kedepannya. Data warehouse merupakan salah satu
solusi dari kebutuhan tersebut. Dengan bertambahnya kapasitas dan kompleksitas suatu data
warehouse yang dimiliki maka teknik full extract dalam proses Extract Transform Loading (ETL)
menjadi tidak memadai bahkan pada kasus tertentu proses ini tidak bisa diaplikasikan, salah satunya
dikarenakan teknik ini menyebabkan cost yang besar. Delta extraction dapat menjadi salah satu solusi
dari permasalahan tersebut dikarenakan prosesnya yang hanya meng-extract data yang mengalami
perubahan saja pada proses ETL. Teknik delta extraction ini akan diuji coba pada DBMS MySQL
dengan menggunakan historical table dan trigger. Dari hasil uji coba beban didapatkan kesimpulan
bahwa pengimplementasian trigger memberikan beban terhadap tabel parent-nya, namun waktu
tunggu yang dibutuhkan masih dapat ditoleransi.
Kata kunci: Data, Data warehouse, ETL, Cost, Delta extraction

Abstract
In a certain period of time, most educational institutions produce data with a huge capacity from their
operational activities. From those data will appear the need to obtain certain information which is
useful as a material of performance evaluation or even as a material of management decision. Data
warehouse is one of solutions of these needs. When the capacity and complexity of data warehouse has
been increasing, then full extract technique in Extract Transform Loading (ETL) process becomes
inadequate, even in others case this technique can not be applied, because this technique causes a
large cost. Delta extraction can be one of the solutions of this problem because the process is to
extract only the data which has been changing in ETL process. Delta extraction technique will be
tested on MySQL DBMS using historical table and trigger. From the result of load test, it can be
concluded that trigger gives the load to its parent table, but the waiting time that is required is still
tolerable.
Keywords: Data, Data warehouse, ETL, Cost, Delta extraction

memenuhi kebutuhan tersebut adalah data


1. PENDAHULUAN warehouse (Firmansyah, 2016). Data
Dalam jangka waktu tertentu, umumnya warehouse dapat mengelola data dengan jumlah
instansi pendidikan menghasilkan data dengan yang sangat besar dan mampu menyediakan
kapasitas yang sangat besar dari kegiatan informasi secara akurat serta cepat dari satu
operasionalnya. Dari data tersebut akan muncul atau beberapa sumber data (database).
kebutuhan untuk mendapatkan informasi Lalu, akan muncul suatu masalah jika
tertentu yang berguna sebagai bahan evaluasi dalam mengelola data warehouse masih
kinerja atau bahkan sebagai bahan untuk menggunakan pendekatan tradisional untuk
mengambil keputusan manajemen kedepannya. proses ETL-nya. Maksudnya adalah proses
Tools yang dapat menangani masalah dan ETL tersebut masih menggunakan skenario

Fakultas Ilmu Komputer


Universitas Brawijaya 1366
Jurnal Pengembangan Teknologi Informasi dan Ilmu Komputer 1367

refreshment yang mengulang proses initial menggunakan DBMS MySQL dikarenakan


loading, atau yang biasa dikenal dengan istilah masih banyaknya instansi pendidikan yang
Full extract (Mekterović & Brkić, 2015). menggunakan DBMS tersebut, salah satunya
Dengan kata lain, teknik ini melakukan proses adalah Universitas Budi Luhur, Jakarta
ETL seluruhnya kembali dari awal. Dengan (Warnars, 2010). Selain itu MySQL merupakan
bertambahnya kapasitas dan kompleksitas data salah satu database relasional yang banyak
warehouse yang dimiliki maka teknik full digunakan (Zhang, et al., 2015). Universitas
extract menjadi tidak memadai bahkan pada Brawijaya sebagai salah satu instansi
kasus tertentu proses ini tidak bisa pendidikan yang memiliki sangat banyak data,
diaplikasikan. Selain itu teknik ETL dengan akan dilibatkan sebagai data referensi dan
skenario refreshment seperti ini juga sebagai data latih bagi penelitian ini. Hasil dari
menyebabkan cost yang besar. Cost yang penelitian ini diharapkan dapat menjadi bahan
difokuskan disini adalah waktu yang rekomendasi untuk mempercepat proses ETL.
dibutuhkan dalam melakukan proses ETL.
Solusi untuk menangani masalah tersebut 2. PENELITIAN TERKAIT
adalah dengan menerapkan proses ETL yang Dalam penelitiannya yang berjudul
menggunakan skenario refreshment bertahap, “Extracting Delta for Incremental Data
sesuai dengan perubahan yang terjadi di sumber warehouse Maintenance” Prabhu Ram dan
data setelah sinkronisasi terakhir. Dengan kata Lyman Do menjelaskan bahwa dengan
lain, user hanya perlu memperbarui data yang melakukan delta extraction dapat mereduksi
mengalami perubahan setelah proses reload waktu yang dibutuhkan untuk proses extract
yang sebelumnya sudah dilakukan. Teknik atau daripada proses extract biasa. Dan jika ingin
pendekatan ini dikenal dengan istilah menangkap status perubahannya juga, maka
Incremental Loading (Mekterović & Brkić, trigger bisa menjadi metode yang dapat
2015). Teknik tersebut juga memiliki istilah digunakan dalam proses delta extraction (Ram
lain yaitu delta extraction yang prosesnya juga & Do, 2000).
hanya meng-extract data yang mengalami Halim Elamy et al. dalam penilitiannya
perubahan saja pada proses ETL. Data yang yang berjudul “Building Data warehouse with
sudah di-load dan tidak mengalami perubahan Incremental Maintenance for Decision
maka tidak akan di-extract kembali dan tidak Support” berhasil melakukan proses loading
perlu dihapus terlebih dahulu sebelum proses dan updating pada tabel fakta secara
load (incremental update). Hal ini dapat incremental yang mampu meningkatkan
meningkatkan performa data warehouse performa query. Penulis juga berhasil
dibandingkan dengan teknik proses ETL membuktikan bahwa trigger dapat berjalan
keseluruhan data (SAP, 2016). Sementara itu, otomatis saat terjadi pembaharuan data dan
delta extraction dapat dilakukan dengan dapat langsung mencerminkannya pada data
berbagai cara, salah satunya menggunakan warehouse yang dituju (Elamy, et al., 2005).
historical table (Mekterović & Brkić, 2015).
Historical table ini nantinya akan 3. LANDASAN KEPUSTAKAAN
menampung histori atau perubahan data yang
terjadi pada tabel tertentu. Selain itu, juga 3.1. Data warehouse
diperlukan trigger untuk memasok data ke
historical table. Trigger adalah sekumpulan Data warehouse adalah tools yang dapat
perintah Structured Query Language (SQL) dijadikan sebagai pendukung pengambilan
yang otomatis akan melakukan suatu aksi saat keputusan yang berupa kolam data. Biasanya
operasi spesifik, seperti perubahan data dalam suatu data telah disediakan secara terstruktur
tabel terjadi (Tech Target, 2017). Namun, dan siap diproses (yaitu: Online Analytical
pemakaian trigger tersebut akan meningkatkan Processing [OLAP], data mining, laporan dan
beban yang perlu ditanggung oleh tabel parent- bentuk aplikasi pendukung pengambilan
nya. Maka dari itu, perlu dilakukan pengujian keputusan lainnya). Data warehouse adalah
untuk mengetahui apakah akibat penggunaan penyimpanan data historis terintegrasi yang
trigger tersebut sangat membebani tabel parent- berasal dari beberapa sumber data yang
nya atau tidak yang dihitung dalam satuan digunakan untuk kepentingan analisis sehingga
waktu. mampu menjadi komponen pendukung
Penelitian ini dilakukan dengan pengambilan keputusan (Turban, et al., 2010).

Fakultas Ilmu Komputer, Universitas Brawijaya


Jurnal Pengembangan Teknologi Informasi dan Ilmu Komputer 1368

Data warehouse melakukan pengekstrakan, 4.2. Analisis Kebutuhan dan Pengumpulan


pembersihan, penyesuaian, dan pengiriman Data
sumber data ke dalam dimensional data store,
Langkah selanjutnya setelah melakukan
yang kemudian dapat dilakukan analisis dan
studi literatur adalah analisis kebutuhan dan
penerapan query tertentu sebagai bahan
pengumpulan data. Tahap analisis kebutuhan
pendukung pengambilan keputusan (Kimball &
dan pengumpulan data ini merupakan tahapan
Caserta, 2004).
dimana akan dilakukan analisis kebutuhan dan
pengumpulan data untuk sistem yang akan
3.2. Delta extraction Menggunakan Historical
dibuat nantinya. Tahap ini dilakukan untuk
Table
mengetahui apa saja pelaporan yang
Metode ini membutuhkan tabel staging dibutuhkan, seperti apa keadaan environment
yang dijadikan sebagai historical table untuk database OLTP yang sudah ada saat ini, dan
tempat sementara hasil capture perubahan data bagaimana keadaan environment data
yang terjadi (Mekterović & Brkić, 2015). Satu warehouse yang diharapkan. Adapun proses
historical table di sisi Online Transaction yang dilakukan ketika analisis kebutuhan dan
Processing (OLTP) dan satu lagi historical pengumpulan data, yaitu dengan wawancara.
table di sisi OLAP. Tabel transaksi di OLTP Wawancara ini dilakukan kepada pihak TIK
akan dipasang trigger untuk menangkap Universitas Brawijaya. Hasil dari tahap ini akan
perubahan yang terjadi lalu hasil tangkapannya digunakan sebagai acuan untuk proses
dimasukkan ke historical table yang ada di perancangan sistem.
OLTP. Historical table tersebut akan dijadikan
sebagai source dalam proses extract yang 4.3. Perancangan OLTP dan Data warehouse
destination table-nya adalah historical table
Pada tahap ini akan dilakukan perancangan
yang berada di OLAP. Historical table OLAP
OLTP dan data warehouse serta sistem delta
tersebut akan dipasang trigger yang akan
extraction yang nantinya akan dibangun. Hasil
menangkap perubahan data yang terjadi, lalu
dari tahap ini dijadikan sebagai dasar dari
hasil tangkapannya dimasukkan ke tabel
implementasi OLTP dan data warehouse yang
dimensi atau tabel fakta yang ada di OLAP.
akan dibangun. Dibawah ini merupakan rincian
Dengan begitu maka tabel dimensi atau tabel
dari perancangan yang dilakukan:
fakta yang dituju sudah memiliki data yang
1. Perancangan Database OLTP
bersih sesuai kebutuhan (Ram & Do, 2000).
Pada tahap ini akan dilakukan perancangan
Gambar 1. merupakan ilustrasi dari penjelasan
physical data model dari database OLTP sesuai
diatas.
dengan lingkungan sistem yang sudah ada di
Universitas Brawijaya dengan mengacu pada
hasil tahap analisis kebutuhan dan
pengumpulan data.
2. Perancangan Data warehouse
Pada tahap ini akan dilakukan perancangan
data warehouse mengacu pada analisis
kebutuhan dari pengguna.
3. Perancangan Proses Delta extraction dan
ETL
Gambar 1. Ilustrasi proses delta extraction Pada tahap ini akan dilakukan perancangan
menggunakan historical table
proses delta extraction dan proses ETL yang
Sumber: (Ram & Do, 2000) direpresentasikan ke dalam penjelasan singkat
dan konseptual ETL.
4. METODOLOGI
4.4. Pembangkitan Data
4.1. Studi Pustaka
Pada langkah ini akan dilakukan
Pada tahap ini akan dilakukan perancangan dan pembangkitan data dengan
pengumpulan dan membaca jurnal, e-book, lingkup jenjang sarjana dengan mengacu pada
buku, naskah penelitian, dan informasi dari hasil tahap analisis kebutuhan dan
internet sebagai bahan referensi untuk pengumpulan data. Data ini dibuat untuk
melakukan penelitian ini. nantinya dimasukkan kedalam database OLTP.
Fakultas Ilmu Komputer, Universitas Brawijaya
Jurnal Pengembangan Teknologi Informasi dan Ilmu Komputer 1369

Data ini akan digunakan untuk tahap Performa ETL yang diuji pada penelitian ini
selanjutnya yaitu implementasi sistem. dilihat dari segi waktu untuk eksekusi query-
nya. Pengujian ini akan menghasilkan
4.5. Implementasi Sistem perbandingan kecepatan eksekusi proses ETL
Pada tahap ini akan dilakukan eksekusi antara data warehouse yang diimplementasikan
atau implementasi terhadap rancangan delta extraction dengan data warehouse yang
database, dan proses ETL, serta data yang tidak diimplementasikan delta extraction.
sudah dibuat. Implementasi yang dilakukan
4.7. Kesimpulan
diantara lain:
1. Implementasi Database OLTP Pada tahap ini akan menghasilkan
Pada langkah ini akan dilakukan kesimpulan dan saran dari hasil analisis yang
pembangunan database OLTP dan meng- ditemukan. Tahap ini merupakan penjabaran
import data penelitian yang sudah dibuat. jawaban dari rumusan masalah dan tujuan
penelitian ini.
2. Implementasi Data warehouse
Pada langkah ini akan dilakukan 5. PENGUJIAN DAN HASIL ANALISIS
pembangunan data warehouse pada server
OLAP. 5.1. Pengujian Beban pada Tabel
3. Implementasi proses Delta extraction dan ISIAN_KUESIONER_MHS
Proses ETL Data rata-rata waktu eksekusi query dari
Nantinya hasil dari tahap ini akan hasil pengujian dengan jumlah transaksi 200
digunakan sebagai bahan untuk dilakukan insert dan 20 update disajikan dalam Tabel 1.
pengujian dan analisis hasil. Dapat dilihat bahwa rata-rata waktu eksekusi
query yang dihasilkan oleh tabel
4.6. Pengujian dan Hasil Analisis ISIAN_KUESIONER_MHS saat dipasangkan
Pada tahap ini akan dilakukan pengujian trigger lebih besar (169,4 ms) dibandingkan
untuk menilai kelayakan dari hasil saat tidak dipasangkan trigger (94,4 ms), dan
implementasi yang telah dibangun. Selain itu itu berarti saat dipasangkan trigger transaksi
juga akan dilakukan analisis dari hasil yang dilakukan rata-rata selesai lebih lama.
pengujian tersebut untuk menunjukkan hasil Tetapi waktu eksekusi query saat dipasangkan
akhir yang didapat. Terdapat 2 pengujian yang trigger juga masih dalam batas toleransi waktu
akan dilakukan pada penilitian ini, yaitu tunggu user. Grafik perbandingannya disajikan
pengujian beban OLTP dan pengujian performa dalam Gambar 2.
ETL. Tabel 1. Hasil rata-rata waktu eksekusi query tabel
1. Pengujian beban OLTP ISIAN_KUESIONER_MHS - 200 insert dan 20
Pada pengujian ini akan dilakukan analisis update
dari dampak hasil implementasi trigger
Tanpa Trigger Trigger
terhadap beban yang harus ditanggung oleh 94,4 ms 169,4 ms
database OLTP yang dihitung dalam satuan
waktu. Karena pengimplementasian trigger 5.2. Pengujian Beban pada Tabel KHS
akan memberikan beban lebih terhadap tabel
induknya maka perlu dilakukan suatu pengujian Data rata-rata waktu eksekusi query dari
yang bertujuan untuk mengidentifikasi apakah hasil pengujian dengan jumlah transaksi 200
ada penurunan kecepatan yang signifikan pada insert, 20 update, dan 10 delete disajikan dalam
OLTP setelah diimplementasikan trigger. Tabel 2. Dapat dilihat bahwa waktu eksekusi
Pengujian ini akan menghasilkan perbandingan query yang dihasilkan oleh tabel KHS saat
kecepatan eksekusi transaksi antara tabel pada dipasangkan trigger lebih besar (627,8 ms)
OLTP yang diimplementasikan trigger dengan dibandingkan saat tidak dipasangkan trigger
tabel pada OLTP yang tidak diimplementasikan (142,6 ms), dan itu berarti saat dipasangkan
trigger. trigger transaksi yang dilakukan rata-rata
2. Pengujian performa ETL selesai lebih lama. Untuk lebih detilnya
Pada pengujian ini akan dilakukan analisis disajikan dalam Gambar 3.
performa dari proses ETL yang telah
diimplementasikan dalam data warehouse.

Fakultas Ilmu Komputer, Universitas Brawijaya


Jurnal Pengembangan Teknologi Informasi dan Ilmu Komputer 1370

5.4. Analisis Hasil Pengujian


Berikut beberapa hasil analisis yang
didapatkan dari hasil pengujian yang telah
dilakukan, antara lain:
1. Dapat diketahui bahwa jika rata-rata waktu
hasil eksekusi query tiap operasi dari hasil
pengujian beban pada tabel KHS
disatukan, maka akan menghasilkan rata-
rata waktu hasil eksekusi query saat tidak
menggunakan trigger sebesar 113,68 ms
atau 0,11368 detik. Sementara saat
menggunakan trigger menghasilkan rata-
rata waktu eksekusi query sebesar 500,91
ms atau 0,50091 detik. Lalu rata-rata
waktu hasil eksekusi query keseluruhan
Gambar 2. Hasil perbandingan rata-rata waktu operasi pada tabel
eksekusi query tabel ISIAN_KUESIONER_MHS – ISIAN_KUESIONER_MHS saat tidak
200 insert dan 20 update menggunakan trigger sebesar 63,56 ms
atau 0,06356 detik, dan untuk saat
Tabel 2. Hasil rata-rata waktu eksekusi query tabel
menggunakan trigger sebesar 137,57 ms
KHS - 200 insert, 20 update dan 10 delete
atau 0,13757 detik. Dapat diketahui bahwa
Tanpa Trigger Trigger setiap rata-rata waktu eksekusi query yang
142,6 ms 627,8 ms dihasilkan oleh masing-masing tabel, baik
saat tidak menggunakan trigger maupun
saat menggunakan trigger, seluruhnya
masih berada dalam kategori waktu yang
dapat ditoleransi user. Dapat diketahui
pula bahwa terdapat perbedaan kecepatan
eksekusi query yang dihasilkan oleh tabel
KHS dan tabel
ISIAN_KUESIONER_MHS yang cukup
besar, hal itu dikarenakan berbedanya
jumlah dan jenis operasi yang dilakukan
oleh tiap tabel tersebut, dan juga
berbedanya isi dari trigger yang
dibutuhkan oleh masing-masing tabel
tersebut. Jadi, jumlah dan jenis operasi,
serta isi trigger yang dimiliki suatu tabel
akan berpengaruh pada waktu eksekusi
query yang dihasilkan.
Gambar 3. Hasil perbandingan rata-rata waktu 2. Dari semua hasil data pengujian yang telah
eksekusi query tabel KHS – 200 insert, 20 update dilakukan, dapat diketahui bahwa teknik
dan 10 delete delta extraction dengan menggunakan
historical table dapat meningkatkan
5.3. Perhitungan Perubahan Nilai kecepatan proses ETL, namun hal ini juga
Selanjutnya dilakukan perhitungan untuk memiliki konsekuensi terhadap beban yang
melihat seberapa besar kenaikan waktu ditimbulkan dari pengimplementasian
eksekusi query setelah diimplementasikan trigger dilihat dari segi waktu, dalam hal
trigger pada tabel KHS dan ini waktu eksekusi query yang dihasilkan
ISIAN_KUESIONER_MHS. Dari perhitungan dari pengimplementasian trigger akan
tersebut didapatkan angka kenaikan persentase lebih lambat 246,3%. Namun, kembali
yang dialami setelah pengimplementasian merujuk poin pertama, bahwa dalam hal
trigger, paling kecil sebesar 79,4% dan yang ini waktu yang dihasilkan dari
paling besar sebesar 471,1%. pengimplementasian trigger masih dapat

Fakultas Ilmu Komputer, Universitas Brawijaya


Jurnal Pengembangan Teknologi Informasi dan Ilmu Komputer 1371

ditoleransi oleh user. Turban, E., Sharda , R., Delen, D. & King, D.,
2010. Business Intelligence: A
6. KESIMPULAN Managerial Approach. 2nd ed.
Setelah dilaksanakannya semua langkah s.l.:Prentice Hall.
dalam penelitian ini, maka dapat ditarik Warnars, S., 2010. Tata Kelola Database
beberapa kesimpulan untuk menjawab rumusan Perguruan Tinggi yang Optimal dengan
masalah, antara lain: Data warehouse. Telkomnika.
1. Pengimplementasian trigger memberikan Zhang, H. et al., 2015. In-Memory Big Data
dampak beban terhadap tabel parent-nya Management and Processing: A
sehingga memperlambat kecepatan Survey.
eksekusi query-nya, namun waktu tunggu
yang dihasilkan dari waktu eksekusi query-
nya masih berada dalam batas toleransi
waktu tunggu user.
2. Kecepatan eksekusi proses ETL yang
dihasilkan dengan teknik delta extraction
lebih cepat secara signifikan jika
dibandingkan dengan kecepatan eksekusi
proses ETL dengan teknik full extract.

7. DAFTAR PUSTAKA
Elamy, A. H., Alhajj, R. S. & Far, B. H., 2005.
Building Data warehouse with
Incremental Maintenance for Decision
Support.
Firmansyah, Muchlis, 2016. Pembangunan
Data Warehouse Keuangan Pada
Instansi Pendidikan (Studi Kasus:
Fakultas ABC), Malang: S1.
Universitas Brawijaya.
Kimball, R. & Caserta, J., 2004. The Data
warehouse ETL Toolkit: Practical
Techniques for Extracting, Cleaning,
Conforming, and Delivering Data.
s.l.:Wiley India Pvt. Limited.
Mekterović, I. & Brkić, L., 2015. Delta View
Generation for Incremental Loading of
Large Dimensions in a Data
warehouse.
Ram, P. & Do, L., 2000. Extracting Delta for
Incremental Data warehouse
Maintenance.
SAP, 2016. Delta extraction. [Online]
Tersedia pada:
http://help.sap.com/saphelp_dm40/help
data/en/d0/4cc138944cfa06e10000000a
11405a/content.html
[Diakses pada 23 Januari 2017].
Tech Target, 2017. Definition Trigger. [Online]
Tersedia pada:
http://searchsqlserver.techtarget.com/de
finition/trigger
[Diakses pada 25 Januari 2017].

Fakultas Ilmu Komputer, Universitas Brawijaya

Anda mungkin juga menyukai