OPTIMASI SCHEDULING UNTUK PROSES EXTRACT, TRANSFORM, LOAD

Download Jurnal Pengembangan Teknologi Informasi dan Ilmu Komputer e-ISSN: 2548- 964X. Vol. 1, No. 11, November 2017, hlm. 1358-1366 http://j-ptiik.u...

0 downloads 449 Views 937KB Size
Jurnal Pengembangan Teknologi Informasi dan Ilmu Komputer Vol. 1, No. 11, November 2017, hlm. 1358-1366

e-ISSN: 2548-964X http://j-ptiik.ub.ac.id

Optimasi Scheduling untuk Proses Extract, Transform, Load (ETL) pada Data Warehouse Menggunakan Metode Round Robin Data Partitioning (Studi Kasus: Universitas XYZ) Agung Yudha Berliantara1, Satrio Agung Wicaksono2, Aryo Pinandito3 Program Studi Sistem Informasi, Fakultas Ilmu Komputer, Universitas Brawijaya Email: [email protected], 2 [email protected], [email protected] Abstrak Data yang ada di dalam data warehouse dapat diambil dari banyak sumber melalui proses ETL (extract, transform, dan load). Proses scheduling pada ETL data warehouse adalah proses yang harus dilalui untuk pembentukan data warehouse. Masalah yang muncul ketika melakukan proses scheduling untuk proses ETL contohnya, untuk melakukan proses ETL dalam memproses data yang sangat besar akan dibutuhkan time cost yang sangat besar pula. Apabila tidak ditangani dengan baik, maka kemungkinan akan membutuhkan waktu yang sangat lama untuk eksekusi hingga ketidakkonsistenan data. Proses ETL dengan cara konvensional (tidak menggunakan metode Round-Robin) akan diujikan dan dibandingkan dengan proses ETL yang menggunakan metode Round-Robin untuk mendapatkan hasil uji coba pada penelitian ini. Perbedaan dari kedua proses ini terdapat pada jumlah tabel partisi yang digunakan dalam proses ETL. Pada proses ETL metode Round-robin, tabel target akan dibagi (dipartisi) menjadi beberapa bagian, sedangkan untuk cara yang konvensional tidak diperlukan pembagian tabel target (partisi). Setelah uji coba selesai, ditemukan perbedaan dari kedua metode tersebut dalam segi waktu eksekusi. Melalui percobaan tersebut, diperoleh kesimpulan bahwa metode Round-robin memberikan waktu eksekusi yang lebih efisien hingga 60,1% tergantung dari jumlah data dan banyaknya partisi yang digunakan. Kata kunci: optimasi, ETL, scheduling, Round-Robin Abstract The data in the data warehouse can be extracted from many sources through the ETL (extract, transform, and load) processes. The scheduling process in ETL data warehouse is a process that must be passed for the establishment of data warehouse. Problems that arise when performing the scheduling process for the ETL process are to perform the ETL process for very large data, it will require a very large time cost as well. If it is not handled properly, it will probably take a very long time for execution and inconsistency data. The ETL process in the conventional way (not using the Round-Robin method) will be tested and compared with the ETL process using the Round-Robin method to obtain test results for this research. The difference between these two processes is the number of partition tables used in the ETL process. In the ETL process of the Round-robin method, the table target will be partitioned into sections, whereas for the conventional way there is no need to partitioning the table target. After the trial is complete, the difference between the two methods is found in terms of execution time. Through the experiment, it is concluded that the Round-robin method gives a more efficient execution time up to 60,1% depending on the amount of data and the number of partitions used. Keywords: optimization, ETL, scheduling, Round-robin Indonesia, dan Universitas XYZ menerapkan teknologi data warehouse. Universitas XYZ memprioritaskan banyak hal dalam proses bisnisnya. Sehingga salah satu kebutuhan utama bagi Universitas XYZ yaitu analisis data akademik mahasiswa yang meliputi sebaran

1. PENDAHULUAN Dalam perkembangan teknologi pesat seperti saat ini, berbagai macam bentuk teknologi masuk ke dalam berbagai macam bidang kehidupan. Terutama pada teknologi basis data. Ada banyak Universitas ternama di Fakultas Ilmu Komputer Universitas Brawijaya

1358

Jurnal Pengembangan Teknologi Informasi dan Ilmu Komputer

IPK, pemasukan fakultas setiap semester, dan hasil kuesioner mahasiswa setiap semester. Berdasarkan website resmi Universitas XYZ sampai dengan Januari 2015, Universitas XYZ memiliki total 64.037 mahasiswa aktif dari jenjang-jenjang yang tersebar di 15 fakultas (Universitas XYZ, Maret 2016). Contoh dari data tersebut dapat disimpulkan bahwa data yang dimiliki Universitas XYZ sangat banyak. Karena data Universitas XYZ memiliki jumlah yang sangat banyak, dan ketika akan melakukan analisis pada data tersebut maka akan dibutuhkan sumber daya yang sangat besar. Agar data yang jumlahnya sangat banyak tersebut dapat diolah dan akhirnya menyediakan informasi yang bermanfaat, diperlukanlah tools yang berfungsi untuk mengumpulkan seluruh data dari banyak sumber sehingga hasilnya nanti dapat digunakan untuk mendukung keputusan pada level manajerial. Salah satu alternatif solusi yang menjanjikan yakni penerapan data warehouse. Pemanfaatan data warehouse pada beberapa instansi pendidikan telah memberikan banyak sekali manfaat dalam menyediakan dan memberikan informasi yang akurat sebagai pendukung di dalam pengambilan keputusan pada level manajerial. Data di dalam data warehouse dapat diambil dari banyak sumber data melalui proses Extract, Transform, dan Load (ETL). Data warehouse menggunakan model multidimensional (schema) untuk menyimpan data, dengan kata lain data warehouse berfokus pada pengukuran, fakta yang ada pada proses bisnis. Model multidimensional memiliki komponenkomponen dasar, yakni tabel dimensi dan tabel fakta. Isi dari tabel fakta berupa pengukuran numerik, seperti jumlah. Sedangkan isi dari tabel dimensi adalah dimensi entitas perusahaan yang berkaitan dengan tabel fakta. Maka dari itu diperlukan susunan skema data multidimensi yang tepat dalam proses implementasi data warehouse. Terdapat masalah yang muncul ketika melakukan proses scheduling untuk proses ETL sebagai contoh, ketika melakukan proses ETL untuk memproses data yang sangat besar akan membutuhkan time cost yang sangat besar. Seperti pada paper journal yang ditulis oleh Revathy Sreekumar pada penelitiannya yang berjudul “ETL Scheduling in Real-Time Data Warehousing” membahas mengenai arsitektur data warehouse, time cost, dan betapa pentingnya scheduling. Maka diperlukanlah Fakultas Ilmu Komputer, Universitas Brawijaya

1359

scheduling untuk proses ETL yang efisien sebagai solusi dari permasalahan tersebut. Penghematan waktu sangat dibutuhkan ketika proses ETL mengingat dalam penelitian ini berfokus pada instansi pendidikan dan membutuhkan penyajian data yang cepat. Penelitian ini juga merujuk pada penelitian yang ditulis oleh Anastasion Karagiannis yang berjudul “Scheduling Strategies For Efficient ETL Execution”. Pembahasan dari jurnal ini tidak jauh berbeda dengan jurnal yang ditulis oleh Revathy Sreekumar pada penelitiannya, namun terdapat perbandingan antar algoritme scheduling dengan parameter alokasi memori yang digunakan dan waktu eksekusi. Proses scheduling pada ETL data warehouse adalah proses yang harus dilalui untuk pembentukan data warehouse (Kimball & Caserta, 2004). Apabila tidak ditangani dengan baik, maka kemungkinan akan terjadi ketidakkonsistenan data ketika data dalam proses dimuat (load) ke dalam data warehouse. Tidak hanya itu, menurut Anastasios Karagiannis proses scheduling pada ETL sangat relevan untuk optimasi response time pada aliran proses operasi pengolahan (konsumsi) data pada tuple, penggunaan waktu proses ETL yang lebih efisien. Selain itu, masalah yang timbul dari proses ETL scheduling adalah meminimalkan waktu eksekusi dan/ atau konsumsi memori tanpa kehilangan data, serta menghindari deadlock (Karagiannis, et al., 2013). Maka dari itu diperlukan sebuah cara atau metode untuk menjalankan proses ETL tersebut sehingga bisa mendapatkan hasil yang maksimal. Metode Round-robin dipilih karena proses ini juga digunakan sebagian besar untuk mengevaluasi algoritme yang lebih canggih, untuk meningkatkan algoritme yang akan dikembangkan dan algoritme round-robin menangani semua aktivitas tanpa prioritas tertentu. Keuntungan menggunakan penjadwalan Round-robin adalah setiap proses yang dijalanakan akan mendapat pembagian CPU yang adil, mudah diimplementasi, dan dapat digunakan untuk mengetahui waktu terburuk untuk sebuah response time pada sebuah proses (Krzyzanowski, 2015). Penelitian yang dilakukan Karagiannis menyebutkan bahwa metode Round-robin jauh lebih baik dalam hasil eksekusi waktu untuk proses ETL apabila dibandingkan dengan metode ETL Minimum-Memory. Karena Round-robin berfokus pada konsumsi waktu yang digunakan untuk memproses ETL, sedangkan Minimum-

Jurnal Pengembangan Teknologi Informasi dan Ilmu Komputer

Memory berfokus pada pembagian resource memory. Namun yang perlu digarisbawahi dalam penerapan metode Round-robin pada ETL adalah aliran data yang akan diproses. Dengan dasar gambaran permasalahan di atas maka dapat memberikan gambaran untuk pengembangan struktur data multidimensi terhadap kebutuhan data warehouse Universitas XYZ yang benar. Selain itu struktur ETL yang tepat untuk penerapan alur ETL metode Roundrobin. Lalu, diharapkan metode Round-robin dapat diimplementasikan ke dalam proses ETL sehingga memberikan manfaat dan dampak dari segi kualitas dan kuantitas terhadap data yang akan disajikan serta penghematan waktu eksekusi. 2. PENELITIAN TERKAIT Revathy Sreekumar pada penelitiannya yang berjudul “ETL Scheduling in Real-Time Data Warehousing” membahas mengenai arsitektur data warehouse, betapa pentingnya scheduling, dan penjelasan mengenai beberapa algoritme scheduling yang sering diterapkan pada proses ETL (Sreekumar & Balaji, 2014). Output dari paper journal ini adalah hasil perbandingan dari masing-masing algoritme yang bertujuan untuk meningkatkan waktu eksekusi dan mengurangi konsumsi memori. Anastasion Karagiannis pada penelitiannya yang berjudul “Scheduling Strategies for Efficient ETL Execuiton”. Pembahasan dari paper journal ini tidak jauh berbeda dengan jurnal yang ditulis oleh Revathy Sreekumar pada penelitiannya yang berjudul “ETL Scheduling in Real-Time Data Warehousing”, namun terdapat perbandingan antar algoritme scheduling dengan parameter alokasi memori yang digunakan dan waktu eksekusi (Kimball & Caserta, 2004). Berdasarkan penelitian-penelitian di atas, maka dapat ditarik kesimpulan bahwa pengimplementasian scheduling pada ETL. Yaitu dapat membantu suatu organisasi untuk meminimalisir alokasi memori yang selanjutnya akan digunakan untuk proses tersebut dan juga waktu eksekusi dari proses tersebut. 3. LANDASAN KEPUSTAKAAN 3.1. Algoritme Round-robin Scheduling pada ETL Sreekumar (2014) dalam penelitiannya menyebutkan algoritme penjadwalan (scheduling algorithm) sangat penting untuk sistem yang real-time. Banyak algoritme penjadwalan yang tersedia. Pilihan algoritme Fakultas Ilmu Komputer, Universitas Brawijaya

1360

sangat penting dalam setiap sistem real-time dan sangat dipengaruhi oleh jenis sistem algoritme akan dijalankan. Sebuah scheduler memberikan kebijakan untuk mengerjakan berbagai proses dalam sistem real-time. Scheduler memastikan bahwa semua proses dijalankan sesuai prioritas yang ditetapkan. Sebuah online scheduler membuat keputusan penjadwalan berdasarkan algoritme penjadwalan dan keadaan saat ini sistem (Sreekumar & Balaji, 2014). Algoritme Round-robin scheduling juga bisa diterapkan pada proses ETL scheduling data warehouse, berikut penjelasan singkatnya (Sreekumar & Balaji, 2014); Round-robin scheduling dapat diimplementasikan dalam proses ETL. Daftar dari input tables di mana data telah diperbarui dalam staging database dapat diperoleh dengan menggunakan system tables. Untuk ETL scheduling, diasumsikan bahwa push technology akan digunakan untuk mengambil data dari sumber data ke dalam staging database. Dalam Round-robin scheduling, semua input tables akan diberikan waktu untuk mendorong data ke dalam proses ETL. Pada proses ETL yang menerapkan algoritme Round-robin, bisa menerapkan teknik partisi pada data yang akan dimuat (load) ke dalam data warehouse. Di dalam lingkungan klasik, proses ETL berjalan pada mesin yang unik yang disebut “ETL server” di mana data semuanya diproses oleh satu kasus ETL. Untuk mendistribusikan proses ETL pada sebuah kluster di komputer dan menjalankannya pada sebuah jalan paralel, data juga harus didistribusikan. Dengan begitu “data partitioning” adalah persoalan dalam sebuah lingkungan paralel/ terdistribusi (Bala, et al., 2014). Pada teknik partisi data yang dilakukan dalam proses ETL juga terdapat rumus persamaan yang akan membagi data ke dalam partisi data tersebut. Persamaan tersebut yaitu: 𝑠𝑖𝑧𝑒(𝑝𝑎𝑟𝑡𝑖𝑡𝑖𝑜𝑛) = 𝑠𝑖𝑧𝑒(𝑣)/𝑛𝑏_𝑝𝑎𝑟𝑡

(P 1)

Seperti yang terlihat pada persamaan P 1, partisi sederhana diberikan sebuah data volume v, teknik sederhana menghasilkan partisi sama besar pada persamaan P 1 di mana nb_part adalah jumlah partisi data. Gambar 1 akan menggambarkan bagaimana pada Persamaan P 1 diimplementasi ke dalam proses ETL. Seperti yang telah dijelaskan sebelumnya, dalam Gambar 1 merupakan gambaran umum pada persamaan P 1. Persamaan tersebut membagi data pada sebelah kiri ke dalam sesi

Jurnal Pengembangan Teknologi Informasi dan Ilmu Komputer

partisi sebelah kanan yang membagi data menjadi tiga empat partisi.

Gambar 1. Contoh penerapan metode Round-robin pada ETL

Untuk volume data dengan jumlah yang besar, kebijakan paralel yang berbeda harus dirancang: membagi (partitioning) dari dataset ke dalam set yang lebih kecil. Gagasan tersebut adalah dengan menggunakan contoh yang berbeda dari proses ETL untuk menangani setiap data partisi. Pada akhir proses, partisi data akan digabungkan (merge) dan dimuat (load) ke target recordset. Untuk membagi (partitioning), banyak implementasi yang telah diusulkan dengan bertujuan untuk menyediakan partisi berukuran sama untuk memfasilitasi load data ke satu target, salah satunya yaitu dengan Roundrobin partitioning. Pada metode Round-robin partitioning, record didistribusikan antara node pengolahan yang berbeda secara round-robin: record pertama dikirim ke node pertama, record kedua node kedua, dan sebagainya. Metode ini sesuai untuk mengubah ukuran partisi yang memiliki set data (Kozielski & Wrembel, 2008). Dapat disimpulkan bahwa partisi menggunakan metode Round-robin adalah untuk membagi jumlah data secara rata ke dalam masing-masing partisi yang telah dibuat sebelumnya. Tujuan untuk membagi data ke dalam partisi adalah untuk menyeimbangkan jumlah data yang dikirimkan ke data warehouse ketika dalam proses ETL. Dalam partisi Round-robin Adaptive Server tidak menggunakan kriteria partisi. Adaptive Server memberikan baris secara Round-robin untuk setiap partisi sehingga setiap partisi berisi jumlah data yang sama atau kurang lebih sama dari baris, sehingga load balancing pada data yang diolah dapat dicapai. Karena tidak ada kriteria pada partisi, baris Fakultas Ilmu Komputer, Universitas Brawijaya

1361

didistribusikan secara acak di seluruh partisi (Sybase Inc., 2009). Selain itu, hanya karena partisi, perhitungan dari hasil akhir query secara parsial sangat cepat dan memiliki dampak yang tidak terlalu berarti dalam waktu eksekusi query keseluruhan. Namun waktu eksekusi pun juga bervariasi tergantung dari kompleksitas query dan yang paling penting adalah jumlah baris yang merupakan hasil dari parsial data (Bernardino & Madeira, 2001). Dari sturktur ETL menggunakakn metode Round-robin, yang membedakan struktur ETL tersebut dengan metode konvensional adalah terletak partisi. Seperti yang djelaskan sebelumnya, metode Round-robin membagi data dengan partisi, sedangkan metode konvensional tidak menggunakan partisi data. Sehingga data yang masuk dalam tahap loading data hanya memiliki satu jalan. Atau dengan kata lain, data tersebut diantrekan untuk bisa masuk ke dalam tabel dimensi atau fakta. 4. METODOLOGI 4.1 Studi Pustaka Studi pustaka merupakan tahap pencarian dan pengumpulan referensi yang dapat didapatkan dari paper jurnal, buku, e-book, naskah penelitian, dan internet untuk mendapatkan keterangan serta penjelasan mengenai teori-teori yang digunakan untuk mendukung dasar dalam penelitian ini. Dari pengumpulan literator, terdapat beberapa literator yang mendukung penelitian. 4.2 Wawancara Pada tahap wawancara, tahap ini dilakukan untuk mendapatkan informasi tentang lingkungan (environment) untuk mengelola database Universitas Brawijaya. Tujuan dari wawancara ini adalah sebagai bahan rujukan untuk pembangunan environment database yang akan digunakan untuk mendukung penelitian ini, supaya proses implementasi yang nantinya akan dijalankan setidaknya menyerupai keadaan environment yang sesungguhnya. Tahap wawancara dilakukan untuk mengetahui keadaan lingkungan (environment) sistem yang digunakan untuk mengolah basis data meliputi OLTP dan data warehouse itu sendiri. Tahap ini dilakukan dengan cara menggali informasi melalui wawancara yang dilakukan dengan pihak TIK Universitas Brawijaya. Berdasarkan hasil wawancara, diketahui bahwa untuk mengelola data akademik

Jurnal Pengembangan Teknologi Informasi dan Ilmu Komputer

mahasiswa Universitas Brawijaya terdapat beberapa fakultas yang mengelola data dengan menggunakan database tersendiri. Fakultasfakultas tersebut antara lain: Fakultas Hukum, Fakultas Ilmu Administrasi, Fakultas Peternakan, Fakultas Pertanian, Fakultas Kedokteran, Fakultas Matematika dan Ilmu Pengetahuan Alam, dan Fakultas Ilmu Sipil. Sedangkan beberapa fakultas yang lain menggunakan satu database untuk digunakan bersama dalam mengelola data akademiknya. Fakultas-fakultas tersebut antara lain: Fakultas Ilmu Komputer, Fakultas Teknologi Pertanian, dan Fakultas Ekonomi dan Bisnis. Sehingga dapat disimpulkan bahwa jumlah yang dibutuhkan untuk mengelola data akademik fakultas terdapat 8 (delapan) database berbeda dalam satu server pada Universitas Brawijaya. Selain untuk mengelola data akademik, database ini juga digunakan untuk menampung hasil kuesioner mahasiswa terhadap dosen, kuesioner tersebut dilakukan setiap akhir semester. Selain itu, untuk mengelola data keuangan setiap fakultas yang terdapat pada Universitas Brawijaya dibutuhkan 1 buah database. Database tersebut untuk menampung pemasukan keuangan masing-masing fakultas setiap semester. 4.3 Analisis dan Desain Database Proses analisis adalah digunakan untuk menarik kesimpulan dari hasil wawancara yang telah dilakukan sebelumnya. Pada proses wawancara sebelumnya yang menghasilkan gambaran environment database pada keadaan yang sebenarnya, akan dilakukan proses implementasi environment database pada penelitian ini. Sehingga penelitian ini dilakukan berdasarkan gambaran lingkungan basis data dalam keadaan yang sebenarnya. Lalu dilakukan juga analisis untuk perancangan struktur database, seperti melakukan observasi untuk mengetahui tabel-tabel apa saja dalam database yang akan digunakan untuk menyimpan data yang akan digunakan selanjutnya. Lalu setelah proses analisis, kemudian tahap selanjutnya adalah melakukan desain skema database yang selanjutnya diterapkan pada database dengan SQL DDL untuk membuat tabel. Pada tahap analisis dan desain database ini akan dilakukan perancangan Physical Data Modelling (PDM) dan perancangan arsitektur fisik yang akan diterapkan pada database OLTP dan database data warehouse. Sesuai dengan hasil wawancara yang telah dilaksanakan dan melalui proses verifikasi rancangan skema pada Fakultas Ilmu Komputer, Universitas Brawijaya

1362

OLTP dan data warehouse, terdapat 2 (dua) skema besar pada database akademik dan database keuangan, lalu ada satu skema lain untuk data warehouse. Maka dari itu, skema tabel-tabel database ini dirancang menyerupai keadaan sebenarnya pada Universitas XYZ. 4.4 Implementasi Desain Implementasi desain pada tahap ini adalah untuk mengimplementasikan hasil rancangan lingkungan basis data yang telah dilakukan pada tahap analisis. Lalu setelah itu dilakukan pula implementasi desain skema tabel-tabel database dengan cara menulis syntax SQL pada SQL tools agar menghasilkan tabel-tabel di dalam database. Implementasi basis data yang akan dijelaskan meliputi implementasi atau penerapan skema OLTP pada skema akademik maupun skema OLTP bagian keuangan. Untuk melakukan implementasi rancangan data warehouse sebagai pemodelan multidimensional, implementasi menggunakan bahasa Structured Query Language (SQL) yang berupa Data Definition Language (DDL). 4.5 Pembangunan Data Pada tahap ini, dilakukan proses pembangunan data. Pembangunan data yang dimaksud adalah untuk membangun data untuk dimasukkan ke dalam tabel-tabel pada skema database, yang selanjutnya data-data ini akan digunakan untuk diolah dan sebagai bahan proses ETL. Dalam perancangan data untuk mengisi data pada tabel-tabel OLTP, digunakan data tiruan (dummy). Untuk membangun data dummy tersebut diperlukan perangkat lunak (software) pengolah angka (spreadsheet). Dalam membuat data satu tabel, diperlukan setidaknya satu sheet pada satu file spreadsheet tersebut. Untuk data seperti nama mahasiswa, nim mahasiswa, nama dosen dan nip dosen bisa menggunakan pengurutan dan pengisian data otomatis yang disediakan oleh software tersebut untuk menghasilkan data angka dan nama yang terurut. Lalu, data disimpan dalam bentuk CSV. Untuk pembangunan data mahasiswa dan mata kuliah, diperlukan data jumlah mahasiswa masing-masing program studi dan data mata kuliah terlebih dahulu. Data tersebut didapatkan dari hasil wawancara dan permohonan data kepada pihak TIK Universitas Brawijaya. Untuk pembangunan data jumlah dosen, data tersebut didapatkan dari PDDIKTI. Lalu data yang sudah

Jurnal Pengembangan Teknologi Informasi dan Ilmu Komputer

jadi dan siap dimasukkan ke dalam tabel database. Setelah pembuatan data pada masingmasing tabel pada skema OLTP selesai, langkah selanjutnya adalah melakukan proses memasukkan data (import) ke dalam tabel-tabel dalam skema OLTP. Proses ini dilakukan dengan menggunakan software pengolah SQL. 4.6 Desain Struktur ETL Desain struktur ETL adalah proses yang digunakan untuk merancang aliran data yang akan diproses dalam proses ETL. Tahap ini digunakan agar dapat mengetahui dari mana saja data yang diproses sehingga dapat dilakukan proses mapping pada ETL dan dimasukkan ke dalam skema data warehouse. Setelah melakukan perancangan sistem, yang di dalamnya meliputi perancangan PDM pada OLTP dan pada skema data warehouse dan kemudian melakukan perancangan dan pembangunan data, maka selanjutnya adalah melakukan perancangan proses ETL. Perancangan ini berguna untuk memetakan (mapping) atribut-atribut pada tabel skema OLTP ke skema data warehouse untuk proses ETL. 4.7 Implementasi Struktur ETL Pada tahap implementasi struktur ETL ini, dilakukan penerapan desain struktur ETL yang sebelumnya dirancang. Implementasi ini akan menghasilkan struktur ETL yang akan digunakan, sehingga pada proses selanjutnya dapat dilakukan analisis terhadap proses ETL ini. Pada tahap implementasi struktur ETL ini, dilakukan implementasi struktur ETL yang telah dirancang sebelumnya. Selain itu, pada bagian ini juga akan dilakukan implementasi pengujian proses ETL yang menggunakan metode roundrobin dan yang tidak menggunakan metode round-robin. Setelah itu akan ditunjukkan pula hasil dari proses implementasi ini. Untuk metode round-robin sendiri akan menggunakan empat partisi kelompok partisi, yaitu 2 partisi, 4 partisi, 5 partisi dan 6 partisi. 4.8 Pengujian Tujuan dari pengujian adalah untuk menilai hasil implementasi ETL yang telah dirancang sebelumnya. Pengujian yang dilakukan adalah pengujian performa dari ETL. Performa ETL yang diuji pada penelitian ini dilihat dari segi waktu eksekusi. Tahap pengujian performa ETL ini adalah dengan cara membandingkan data flow ETL yang menerapkan metode RoundFakultas Ilmu Komputer, Universitas Brawijaya

1363

robin scheduling dengan yang tidak menggunakan metode Round-robin. Sehingga akan menghasilkan grafik perbedaan antara proses ETL menggunakan metode Round-robin scheduling dan yang tidak menggunakan metode Round-robin. Pada tahap pengujian performa ETL, akan dilakukan analisis kecepatan transfer data yang diterima oleh tabel dimensi dan fakta. Analisis kecepatan tersebut dilihat dari langkah yang diproses dalam tabel output yang digunakan sebagai target. Dalam menganalisis hasil proses ini, dilakukan proses eksekusi ETL (run) sebanyak 5 kali. Namun sebelum dilakukan proses run, data pada tabel target, yaitu dimensi atau fakta, terlebih dahulu akan dikosongkan, sehingga tidak ada proses update data atau murni hanya untuk proses insert data. Dalam proses analisis yang dilakukan sebanyak 5 kali dan akan diamati dari waktu eksekusi pada masing-masing proses eksekusi. Untuk proses ETL yang menggunakan metode round-robin akan diambil rata-rata waktu eksekusi pada masing-masing tabel output atau partisi. 5. HASIL Dalam paper ini telah dilakukan implementasi optimasi ETL scheduling dengan membandingkan hasil eksekusi waktu dari eksekusi ETL dengan cara menggunakan metode Round-robin dan metode konvensional. Seperti yang telah digambarkan hasilnya pada Gambar 2 sampai Gambar 10 hasil dari waktu eksekusi menunjukkan hasil yang berbeda, dan beberapa yang lain menunjukkan hasil yang sama meskipun telah menggunakan metode Roundrobin.

Gambar 2. Grafik DIM_DOSEN

hasil

pengujian

ETL

tabel

Dalam hasil eksekusi dengan menggunakan metode Round-robin hasilnya cenderung lebih unggul atau lebih efisien. Karena data dibagi ke

Jurnal Pengembangan Teknologi Informasi dan Ilmu Komputer

dalam partisi yang telah disediakan sebelumnya. Data yang sebelumnya diproses dalam proses extract dan transform akan dibagi ke dalam beberapa kelompok ketika memasuki proses loading.

Gambar 3. Grafik DIM_MATKUL

hasil

pengujian

Gambar 4. Grafik hasil pengujian DIM_PERTANYAAN_KUESIONER

ETL

ETL

1364

dibagi secara rata ke dalam kelompok-kelompok partisi. Sebagai contoh ada 1000 baris data dengan 3 partisi untuk Round-robin, data pada baris ke 1 akan masuk ke partisi 1, data baris ke dua akan masuk ke partisi 2, data baris ke tiga akan masuk ke partisi 3, data baris ke empat masuk ke partisi 1, data baris ke lima masuk ke partisi ke 2, dan seterusnya. Setelah data tersebut dimuat (load) lalu secara bersama-sama data yang tersimpan pada langkah loading dimasukkan ke dalam tabel target.

tabel

Gambar 7. Grafik hasil DIM_STATUS_KULIAH

pengujian

ETL

tabel

Gambar 8. Grafik FACT_KUESIONER

hasil

pengujian

ETL

tabel

Gambar 9. Grafik FACT_MAHASISWA

hasil

pengujian

ETL

tabel

tabel

Gambar 5. Grafik hasil pengujian ETL tabel DIM_PRODI

Gambar 6. Grafik DIM_SELEKSI

hasil

pengujian

ETL

tabel

Dalam proses loading tersebut data akan Fakultas Ilmu Komputer, Universitas Brawijaya

Metode Round-robin menjadi lebih unggul karena beberapa baris data dimasukkan secara bersama-sama sehingga menyingkat waktu eksekusi. Sedangkan cara konvensional data akan didistribusikan satu per satu ke dalam tabel targetnya.

Jurnal Pengembangan Teknologi Informasi dan Ilmu Komputer

Dari hasil pengujian di atas didapat beberapa hasil yang menunjukkan perbedaan antara pengujian menggunakan kedua metode. Contoh hasil pengujian yang menunjukkan hasil perbedaan waktu eksekusi seperti yang terlihat pada Gambar 10. Pada Gambar 10 dilakukan pengujian ETL menggunakan metode Roundrobin.

Gambar 10. Contoh perbedaan hasil pengujian dengan menggunakan metode Round-robin

Pada Gambar 10 terlihat pula perbedaan hasil waktu eksekusi untuk proses ETL menggunakan metode Round-robin. Dapat terlihat bahwa semakin banyak partisi yang digunakan, maka akan semakin menghemat waktu untuk proses eksekusi. Namun ada beberapa pengujian yang memiliki hasil eksekusi tidak memiliki perbedaan. Contohnya seperti yang terlihat pada Gambar 11.

Gambar 11. Contoh hasil pengujian dengan menggunakan metode Round-robin yang tidak memiliki perbedaan hasil

Hasil eksekusi yang ditampilkan seperti pada Gambar 11, tidak ada perbedaan hasil eksekusi. Meskipun partisi ditambahkan tidak ada perbedaan hasil eksekusi. Hal ini juga karena pengaruh jumlah data yang diproses yaitu hanya 8 baris data. 6. KESIMPULAN Hasil perancangan skema multidimensi data warehouse sesuai dengan kebutuhan menghasilkan 2 tabel fakta ditambah dengan 7 tabel dimensidan telah mendapat verifikasi kelayakan dari pihak TIK Universitas Brawijaya. Hasil skema multidimensi ini yang digunakan untuk menyimpan data uji coba ETL dalam penelitian ini. Untuk proses ETL pada data warehouse Universitas XYZ dibagi menjadi 2 (dua) jenis struktur. Yaitu yang pertama proses ETL konvensional. Proses dari eksekusi ini adalah data yang dikirimkan ke tabel dimensi atau fakta Fakultas Ilmu Komputer, Universitas Brawijaya

1365

tidak dibagi ke dalam beberapa kelompok (partisi), sehingga data yang masuk akan diantrekan (queue). Sedangkan struktur ETL kedua adalah struktur ETL menggunakan metode Round-robin, data akan dibagi ke dalam partisi-partisi yang telah disediakan. Sehingga waktu yang digunakan untuk memproses data yang masuk ke tabel target akan lebih sedikit. Lalu merujuk dari pembahasan di atas adalah proses ETL scheduling dengan metode konvensional terbukti kurang efisien apabila dibandingkan dengan proses ETL scheduling menggunakan metode Round-robin. Dimana ketika menggunakan metode scheduling Roundrobin dapat dilakukan penghematan waktu hingga 60,1% tergantung dari jumlah data dan banyaknya partisi. Lalu dengan menambahkan jumlah partisi, maka waktu yang dibutuhkan untuk menjalankan proses ETL akan semakin sedikit atau dengan kata lain, semakin banyak partisi yang disediakan akan semakin sedikit waktu yang dibutuhkan untuk proses ETL. 7. DAFTAR PUSTAKA Bala, M., Boussaid, O. & Alimazighi, Z., 2014. P-ETL: Parallel-ETL based on the MapReduce Paradigm. IEEE. Bernardino, J. & Madeira, H., 2001. Experimental Evaluation of a New Distributed Partitioning Technique for Data Warehouses. IEEE, pp. 318-319. Karagiannis, A., Vassiliadis, P. & AlkisSimitsis, 2013. Scheduling strategies for efficient ETL execution. Elsevier. Kimball, R. & Caserta, J., 2004. The Data Warehouse ETL Toolkit : Practical Techniques for Extracting, Cleaning, Conforming, and Delivering Data. s.l.:Wiley. Kozielski, S. & Wrembel, R., 2008. New Trends in Data Warehousing and Data Analysis. 3rd ed. s.l.:Springer Science & Business Media. Krzyzanowski, P., 2015. Paul Krzyzanowski's Site. [Online] Tersedia di: https://www.cs.rutgers.edu/~pxk/416/notes /07-scheduling.html [Diakses 18 September 2016]. Sreekumar, R. & Balaji, S., 2014. ETL Scheduling in Real-Time Data Warehousing. International Journal of

Jurnal Pengembangan Teknologi Informasi dan Ilmu Komputer

Computer Science & Engineering Technology (IJCSET), Volume 5. Sybase Inc., 2009. SyBooks Online. [Online] Tersedia di: http://infocenter.sybase.com/help/index.jsp ?topic=/com.sybase.infocenter.dc32300.15 50/html/sqlug/sqlug448.htm [Diakses 10 November 2016].

Fakultas Ilmu Komputer, Universitas Brawijaya

1366