• Tidak ada hasil yang ditemukan

Peningkatan Kinerja Sistem Spatial Data Warehouse Kebakaran Hutan Menggunakan GeoServer dan GeoMondrian

N/A
N/A
Protected

Academic year: 2017

Membagikan "Peningkatan Kinerja Sistem Spatial Data Warehouse Kebakaran Hutan Menggunakan GeoServer dan GeoMondrian"

Copied!
34
0
0

Teks penuh

(1)

PENINGKATAN KINERJA SISTEM

SPATIAL DATA

WAREHOUSE

KEBAKARAN HUTAN MENGGUNAKAN

GEOSERVER DAN GEOMONDRIAN

LUKSIE WIPRIYANCE

ILMU KOMPUTER

FAKULTAS MATEMATIKA DAN ILMU PENGETAHUAN ALAM INSTITUT PERTANIAN BOGOR

(2)
(3)

PERNYATAAN MENGENAI SKRIPSI DAN

SUMBER INFORMASI SERTA PELIMPAHAN HAK CIPTA

Dengan ini saya menyatakan bahwa skripsi berjudul Peningkatan Kinerja Sistem Spatial Data Warehouse Kebakaran Hutan Menggunakan GeoServer dan GeoMondrian adalah benar karya saya dengan arahan dari komisi pembimbing dan belum diajukan dalam bentuk apa pun kepada perguruan tinggi mana pun. Sumber informasi yang berasal atau dikutip dari karya yang diterbitkan maupun tidak diterbitkan dari penulis lain telah disebutkan dalam teks dan dicantumkan dalam Daftar Pustaka di bagian akhir skripsi ini.

Dengan ini saya melimpahkan hak cipta dari karya tulis saya kepada Institut Pertanian Bogor.

(4)

ABSTRAK

LUKSIE WIPRIYANCE. Peningkatan Kinerja Sistem Spatial Data Warehouse Kebakaran Hutan Menggunakan GeoServer dan GeoMondrian. Dibimbing oleh HARI AGUNG ADRIANTO dan AGUS BUONO.

Kebakaran hutan dapat dideteksi secara periodik oleh satelit sebagai area titik panas yang terjadi pada waktu dan lokasi tertentu. Frekuensi terjadinya kebakaran hutan di Indonesia tergolong tinggi sehingga kumpulan data titik panas akan berukuran sangat besar. Kumpulan data titik panas tersebut dapat disimpan ke dalam tempat penyimpanan khusus misalnya data warehouse. Sistem data warehouse kebakaran hutan sudah pernah dikembangkan pada penelitian sebelumnya dengan menggunakan GeoServer sebagai web map server dan GeoMondrian sebagai OLAP server. Namun, sistem tersebut masih memiliki beberapa kekurangan diantaranya runtime sistem lambat dan rendahnya jumlah titik panas yang ditampilkan. Pada penelitian ini dilakukan konfigurasi ulang sistem yang bertujuan memperbaiki kekurangan tersebut sehingga kinerja sistem meningkat. Konfigurasi dilakukan pada bagian Java Runtime Environment, sumber database, skema kubus data, dan penanganan error pada OpenLayers. Konfigurasi tersebut menghasilkan runtime sistem yang lebih cepat dan jumlah titik panas yang lebih besar.

Kata kunci: data warehouse, kebakaran hutan, web map server,OLAP server.

ABSTRACT

LUKSIE WIPRIYANCE. System Performance Optimization in Spatial Data Warehouse of Forest Fire Using GeoServer and GeoMondrian. Supervised by HARI AGUNG ADRIANTO and AGUS BUONO.

Forest fire can be periodically detected by satellite as hotspot areas that occur at specified time and location. The frequency of forest fire in Indonesia is high so the data collection of hotspots will be very large. That data collection of hotspots can be stored into specific storage such as data warehouse. A data warehouse system of forest fire was built in the previous research using GeoServer as web map server and GeoMondrian as OLAP Server. However, that system still has some limitations such as the poor system runtime and the low amount of retrieved hotspots. In this research, the system would be re-configurated in order to fix those limitations so that the system performance would increase. The configuration involves some part of the system including Java Runtime Environment, database source, data cube schema, and error handling in OpenLayers. It has resulted 155 ms higher speed of runtime and 1310 higher number of retrieved hotspots.

(5)

Skripsi

sebagai salah satu syarat untuk memperoleh gelar Sarjana Komputer

pada

Departemen Ilmu Komputer

PENINGKATAN KINERJA SISTEM

SPATIAL DATA

WAREHOUSE

KEBAKARAN HUTAN MENGGUNAKAN

GEOSERVER DAN GEOMONDRIAN

LUKSIE WIPRIYANCE

ILMU KOMPUTER

FAKULTAS MATEMATIKA DAN ILMU PENGETAHUAN ALAM INSTITUT PERTANIAN BOGOR

(6)

Penguji:

(7)
(8)

Judul Skripsi : Peningkatan Kinerja Sistem Spatial Data Warehouse Kebakaran Hutan Menggunakan GeoServer dan GeoMondrian

Nama : Luksie Wipriyance NIM : G64090066

Disetujui oleh

Hari Agung Adrianto, SKom MSi Pembimbing I

Dr Ir Agus Buono, MSi MKom Pembimbing II

Diketahui oleh

Dr Ir Agus Buono, MSi MKom Ketua Departemen

(9)

PRAKATA

Puji dan syukur penulis panjatkan kepada Allah subhanahu wa ta’ala atas segala karunia-Nya sehingga skripsi ini berhasil diselesaikan. Tema yang dipilih dalam penelitian yang dilaksanakan sejak bulan Januari 2013 ini ialah data warehouse kebakaran hutan, dengan judul Peningkatan Kinerja Sistem Spatial Data Warehouse Kebakaran Hutan Menggunakan GeoServer dan GeoMondrian.

Dalam pelaksanaan tugas akhir ini banyak pihak yang selalu memberikan dukungan dan bantuan. Oleh karena itu, penulis ingin menyampaikan terima kasih kepada:

1 Ayah Wijiono, Ibu Supriyati, dan Kakak Gendrie yang senantiasa memberikan dukungan, kasih sayang, doa dan semangat yang tiada tara. 2 Bapak Hari Agung Adrianto, SKom MSi dan Bapak Dr Ir Agus Buono,

Msi MKom selaku dosen pembimbing I dan II yang selalu memberikan bimbingan dan nasehat selama pengerjaan tugas akhir.

3 Ibu Imas S. Sitanggang, SSi MKom selaku dosen penguji atas kesediaannya sebagai penguji pada ujian tugas akhir.

4 Ibu Ir Meuthia Rachmaniah, MSc selaku dosen pembimbing akademik yang telah membimbing penulis selama masa perkuliahan.

5 Teman-teman satu bimbingan: Ade, Hendrik, dan Kak Ilman yang senantiasa saling memberikan semangat dan bersedia menjadi teman diskusi.

6 Hanna, Iis, Fara, Nurul, Rini, Wulan, Ari, Erwin, Haqqi, Fahri, Bimo, Rangga, Yuzar, dan rekan-rekan Ilkom 46 yang selalu memberikan dukungan dan bantuan satu sama lain.

7 Annisa, Putri, Monika, Bety, dan Resa, sahabat yang senantiasa memberikan semangat dan motivasi yang luar biasa.

Semoga karya ilmiah ini bermanfaat.

(10)

DAFTAR ISI

DAFTAR TABEL vi

DAFTAR GAMBAR vi

DAFTAR LAMPIRAN vi

PENDAHULUAN 1

Latar Belakang 1

Perumusan Masalah 1

Tujuan Penelitian 2

Manfaat Penelitian 2

Ruang Lingkup Penelitian 2

METODE PENELITIAN 2

Analisis Sistem Awal 3

Pengukuran Kinerja Sistem Awal 3

Konfigurasi Sistem 3

Pengukuran Kinerja Sistem Setelah Konfigurasi 3

Pembandingan Kinerja Sistem 3

HASIL DAN PEMBAHASAN 3

Analisis Sistem Awal 3

Pengukuran Kinerja Sistem Awal 7

Konfigurasi Sistem 9

SIMPULAN DAN SARAN 15

Simpulan 15

Saran 15

DAFTAR PUSTAKA 15

LAMPIRAN 17

(11)

DAFTAR GAMBAR

1 Skema tahapan penelitian 2

2 Arsitektur sistem awal 5

3 Alur kerja sistem awal dimodifikasi dari Imaduddin (2012) 6

4 Hasil eksekusi kueri pada modul JPivot 8

5 Grafik perbandingan runtime sistem berdasarkan versi JRE 9 6 Skema kubus data multidimensi dimodifikasi dari Imaduddin (2012) 10 7 Hasil eksekusi kueri untuk menampilkan titik panas pada level

provinsi 12

8 Tampilan layer level provinsi 13

9 Hasil operasi drill down pada Provinsi Riau 13 10 Error yang terjadi pada OpenLayers 14

11 Tampilan layer titik panas pada modul peta 14

DAFTAR LAMPIRAN

1 Skema kubus data multidimensi dalam bentuk XML 17

2 Potongan fail JSON hasil eksekusi kueri 19

(12)

PENDAHULUAN

Latar Belakang

Kebakaran hutan dapat dideteksi secara periodik oleh satelit penginderaan jarak jauh yang mendeteksi titik panas pada waktu dan lokasi tertentu. Suatu area akan terdeteksi sebagai titik panas apabila memiliki temperatur yang melebihi ambang batas yaitu 46.85°C (Dephut 2000). Pada tahun 2012, jumlah titik panas yang terpantau di wilayah Indonesia mencapai 15 392 titik dengan lokasi kemunculan paling banyak terletak di Provinsi Riau (Radius 2012). Frekuensi kemunculan titik panas yang tinggi tersebut menyebabkan besarnya ukuran data titik panas.

Data titik panas yang berukuran besar dapat disimpan ke dalam tempat penyimpanan khusus misalnya data warehouse. Data warehouse akan merekam titik panas sesuai dengan koordinat lokasi, waktu kemunculan, dan satelit yang mendeteksi. Data warehouse tersebut dapat diberi kueri masukan sesuai kebutuhan pengguna. Selain itu, pada data warehouse juga dapat dilakukan operasi Online Analytical Processing (OLAP) seperti drill down, roll up, slice, dan dice. Data hasil eksekusi kueri atau operasi OLAPtersebut dapat ditampilkan dalam bentuk tabel, grafik, atau peta. Dengan demikian, persebaran titik panas akan lebih mudah diamati.

Imaduddin (2012) telah membangun sebuah sistem data warehouse kebakaran hutan di Indonesia dengan GeoServer sebagai web map server dan GeoMondrian sebagai OLAP server. Penyajian data pada sistem ini terdiri atas dua modul yaitu modul JPivot dan modul peta. Modul JPivot menampilkan data hasil eksekusi kueri dari GeoMondrian dalam bentuk tabel dan grafik. Modul peta menampilkan visualisasi kartografis dari data yang terdiri atas layer dasar dan layer titik panas. Layer dasar yang dimaksud adalah layer peta wilayah Indonesia yang dihasilkan oleh GeoServer, sedangkan layer titik panas berasal dari koordinat kumpulan titik panas hasil eksekusi kueri GeoMondrian. Selain itu, sistem ini dapat menerima kueri masukan dari pengguna serta menyediakan tools untuk melakukan operasi OLAP. Namun, sistem ini masih memiliki beberapa kekurangan, di antaranya jumlah titik panas yang ditampilkan masih terbatas dan runtime sistem yang cenderung lambat.

Pada penelitian ini dilakukan konfigurasi ulang untuk memperbaiki kekurangan sistem hasil penelitian Imaduddin (2012). Peningkatan kinerja sistem meliputi dua hal, yaitu runtime sistem dan jumlah titik panas yang dapat ditampilkan oleh sistem. Penelitian ini diharapkan akan menghasilkan kinerja sistem yang lebih baik dari sebelumnya.

Perumusan Masalah

Perumusan masalah dalam penelitian ini ialah cara meningkatkan kinerja sistem spatial data warehouse kebakaran hutan hasil penelitian Imaduddin (2012) agar runtime sistem meningkat dan jumlah titik panas yang ditampilkan bertambah.

(13)

2

Tujuan Penelitian

Tujuan dari penelitian ini ialah melakukan konfigurasi ulang pada sistem spatial data warehouse kebakaran hutan hasil penelitian Imaduddin (2012) meliputi runtime sistem dan jumlah titik panas yang ditampilkan.

Manfaat Penelitian

Hasil penelitian ini diharapkan dapat memperbaiki sistem Imaduddin (2012) sehingga menghasilkan suatu kinerja sistem yang optimal dalam menangani jumlah data yang besar.

Ruang Lingkup Penelitian

Ruang lingkup penelitian ini yaitu:

1 Penelitian ini hanya difokuskan pada peningkatan kinerja sistem dengan tidak mengubah fungsi-fungsi yang ada.

2 Operasi roll up dan drill down pada modul peta hanya bisa dilakukan pada dimensi lokasi.

3 Data titik panas yang dipakai hanya meliputi wilayah Pulau Sumatera.

METODE PENELITIAN

Tahapan yang dilakukan pada penelitian ini dijelaskan pada Gambar 1. Tahapan tersebut berlaku untuk masing-masing komponen sistem yang akan dikonfigurasi.

(14)

3

Analisis Sistem Awal

Tahap awal yang dilakukan dalam penelitian ini ialah analisis sistem hasil penelitian Imaduddin (2012). Tahap ini dilakukan untuk mengetahui arsitektur sistem secara detil sehingga akan memudahkan tahap penelitian selanjutnya. Analisis sistem meliputi analisis lingkungan pengembangan sistem dan alur kerja sistem.

Pengukuran Kinerja Sistem Awal

Pada tahap ini konfigurasi sistem belum diubah sama sekali, yaitu masih dalam konfigurasi aslinya. Hasil pengukuran kinerja sistem awal ini akan digunakan sebagai pembanding untuk hasil kinerja sistem setelah dilakukan dikonfigurasi. Variabel yang diukur ialah runtime sistem dan jumlah titik panas yang ditampilkan.

Konfigurasi Sistem

Tahap ini merupakan tahap paling penting dalam penelitian ini. Konfigurasi dilakukan pada komponen sistem yang dapat memengaruhi kinerja sistem. Komponen sistem tersebut di antaranya Java Runtime Environment (JRE), sumber database, dan OpenLayers. Konfigurasi sistem ini diharapkan dapat meningkatkan kinerja sistem baik dari sisi runtime sistem maupun jumlah titik panas yang ditampilkan.

Pengukuran Kinerja Sistem Setelah Konfigurasi

Setelah konfigurasi berhasil dilakukan, pengukuran kinerja sistem akan dilakukan kembali. Tahap ini sama dengan tahap pengukuran kinerja sistem awal. Hasil pengukuran ini nantinya akan dibandingkan dengan kinerja sistem awal.

Pembandingan Kinerja Sistem

Pada tahap ini, kinerja sistem setelah konfigurasi akan dibandingkan dengan kinerja sistem awal. Hasil konfigurasi dikatakan meningkat apabila titik panas yang ditampilkan lebih banyak atau runtime sistem yang lebih cepat. Jika hasil konfigurasi tidak menunjukan peningkatan tahap konfigurasi sistem dilakukan kembali.

HASIL DAN PEMBAHASAN

Analisis Sistem Awal

(15)

subject-4

oriented, integrated, time variant, dan non-volatile yang berperan dalam proses pengambilan keputusan (Inmon 2002). Kumpulan data tersebut disimpan dalam sebuah tempat penyimpanan yang berukuran besar berbentuk multidimensi. Bentuk multidimensi ini mendukung kemudahan dalam melakukan proses analisis data.

Web map server yang digunakan pada sistem ini ialah GeoServer. GeoServer merupakan sebuah perangkat lunak server berbasis Java dan bersifat open source yang memungkinkan pengguna untuk menampilkan dan memanipulasi data spasial. GeoServer dapat menyajikan data spasial dalam bentuk peta pada sisi aplikasi client seperti web browser maupun pada aplikasi desktop. Pada sistem ini, GeoServer berperan dalam menyimpan layer dasar peta wilayah Indonesia dan menampilkannya pada saat ada request dari client.

Operasi OLAP pada sistem ini ditangani oleh GeoMondrian. GeoMondrian adalah perangkat lunak bersifat open source yang merupakan pengembangan dari OLAP server Mondrian yang sudah mendukung data spasial. Dengan kata lain, GeoMondrian merupakan implementasi dari spatial OLAP server. GeoMondrian dapat menangani tipe data geometri sehingga mampu menyimpan bentuk vektor geometri ke dalam kubus data. GeoMondrian pada sistem ini bertugas melakukan proses eksekusi kueri OLAP yang berasal dari masukkan pengguna.

Lingkungan Pengembangan Sistem Awal

Perangkat keras yang digunakan adalah Personal Computer (PC) dengan spesifikasi sebagai berikut:

processor Intel Core2Duo @2.1 GHz,

 RAM 2 GB DDR3, dan

 HDD 320 GB.

Perangkat lunak yang digunakan sebagai berikut:

 sistem operasi Windows 7 Professional,

 JDK 1.6.0.04,

 Apache Tomcat 6.0 sebagai web server,

 Spatialytics sebagai spatial OLAP framework,

 GeoMondrian sebagai spatial OLAP server,

 GeoServer 2.1 sebagai web map server,

 OpenLayers 2.8 sebagai JavaScript library untuk menampilkan peta,

 PostgreSQL 8.4 sebagai database server dengan ekstensi PostGIS untuk menyimpan data spasial, dan

Schema Workbench 1.0untuk membuat kubus data multidimensi.

Kebutuhan di Sisi Client dan Server

(16)

5

Arsitektur Sistem Awal

Sistem Imaduddin (2012) merupakan sistem data warehouse kebakaran hutan yang dibangun pada framework Spatialytics. Detail arsitektur sistem ditunjukkan pada Gambar 2. Arsitektur sistem terdiri atas tiga bagian yaitu database server, application server, dan client.

1 Bagian database server merupakan Database Management System (DBMS) yakni PostgreSQL 8.4. PostgreSQL ini berfungsi sebagai tempat penyimpanan data titik panas dengan ekstensi PostGIS sehingga dapat menangani data spasial.

2 Bagian application server menggunakan Apache Tomcat 6.0 sebagai web container atau servlet container dari PostgreSQL JDBC driver, GeoServer 2.1, GeoMondrian 1.0, dan Spatialytics server. PostgreSQL JDBC driver berfungsi sebagai jembatan yang memungkinkan server untuk dapat mengakses PostgreSQL. GeoServer berperan sebagai web map server untuk menyimpan layer dasar peta wilayah Indonesia yang dibangkitkan dari data yang ada pada PostgreSQL. GeoMondrian merupakan OLAP server tempat kueri OLAP akan dieksekusi. Spatialytics server akan menerima kueri masukan dari pengguna kemudian mengirimkannya ke GeoMondrian dan mengembalikan hasil eksekusi kueri ke client.

3 Bagian client, dalam hal ini adalah Spatialytics client terdiri atas modul peta dan modul JPivot. Modul peta divisualisasikan oleh OpenLayers 2.8. OpenLayers mengambil layer dasar peta dari GeoServer serta data hasil eksekusi kueri yang dikirim oleh Spatialytics servlet. Modul JPivot merupakan bagian dari GeoMondrian yang dapat menampilkan hasil eksekusi kueri dalam bentuk tabel dan grafik.

Hubungan antar ketiga bagian sistem tersebut dapat dilihat pada Gambar 3.

(17)

6

Alur Kerja Sistem Awal

Pada saat sistem pertama kali diakses, Spatialytics client membutuhkan data untuk ditampilkan pada modul peta dan modul JPivot. Data yang ditampilkan merupakan hasil eksekusi kueri yang dimasukkan pengguna. Kueri berasal dari editor kueri MDX pada Spatialytics client (a)yang kemudian dikirim oleh olap4js menuju Spatialytics servlet (b). Tool olap4js ini bertugas memeriksa struktur data multidimensi seperti hirarki, dimensi, level, dan member. Spatialytics servlet akan mengirim kueri ke GeoMondrian untuk dieksekusi (c).

Dalam proses eksekusi kueri, GeoMondrian membutuhkan koneksi ke PostgreSQL JDBC driver (d) untuk mengakses PostgreSQL (e). Hasil eksekusi kueri akan dikembalikan oleh PostgreSQL melalui PostgreSQL JDBC driver menuju GeoMondrian. Spatialytics servlet bertugas mengirimkan hasil kueri dalam bentuk Javascript Object Notation (JSON) menuju Spatialytics client yang diwakili oleh olap4js. Data JSON yang diterima oleh olap4js berupa kumpulan objek titik panas hasil eksekusi kueri yang selanjutnya akan di-parsing oleh Featurizer (f). Hasil parsing akan dikirim menuju SOLAPContext berupa fitur objek seperti nama objek, nilai objek, dan nilai geometrinya (g). SOLAPContext mengirimkan kumpulan objek tersebut beserta proyeksi dan style peta ke OpenLayers untuk divisualisasikan (h).

Pada modul peta, selain membutuhkan layer titik panas, OpenLayers juga membutuhkan layer dasar peta. Layer dasar peta berasal dari layer peta yang disimpan pada GeoServer. Dalam proses pembentukan layer peta, GeoServer perlu melakukan koneksi dengan PostgreSQL JDBC driver (i) untuk mengakses database pada PostgreSQL. Pengaksesan database ini bertujuan mengambil data geometri untuk pembentukan layer dasar peta yang kemudian disimpan oleh

(18)

7 GeoServer yang kemudian divisualisasikan oleh OpenLayers (j). Sementara itu, modul JPivot merupakan bagian dari GeoMondrian sehingga tidak perlu adanya koneksi dengan bagian lain. Hasil eksekusi kueri dari GeoMondrian dapat ditampilkan langsung pada modul JPivot (k).

Pengukuran Kinerja Sistem Awal

Tahap ini merupakan tahap awal pengembangan sistem. Pada penelitian ini digunakan perangkat yang sedikit berbeda dengan penelitian sebelumnya. Berikut beberapa perangkat yang berbeda:

processor Intel Core i3-2350M,

 RAM 2 GB DDR3,

 HDD 640 GB,

 sistem operasi Windows 7 Ultimate, dan

 PostgreSQL 9.0. Runtime Sistem

Pengukuran runtime sistem dilakukan dengan menggunakan jMeter, sebuah aplikasi benchmarking untuk mengukur performa sistem. Pada jMeter terdapat fasilitas untuk membuat test plan yang berisi konfigurasi seperti nama server web, path sistem yang akan diuji, jumlah thread yang diinginkan, dan jumlah iterasi. Thread dalam hal ini diibaratkan sebagai pengguna yang mengakses sistem. Pada pengukuran ini ditentukan jumlah iterasi sebanyak 10 kali dan jumlah thread sebanyak 1.

Tabel 1 menunjukkan hasil pengukuran runtime sistem awal menggunakan aplikasi jMeter. Runtime sistem pada iterasi pertama cenderung jauh lebih besar dibandingkan iterasi kedua, ketiga, dan seterusnya. Setelah iterasi pertama, runtime turun jauh menjadi puluhan bahkan satuan yang kemudian berubah secara fluktuatif sampai iterasi terakhir.

Sistem ini menggunakan Apache Tomcat yang membutuhkan Java Virtual Machine (JVM) untuk menjalankannya. JVM merupakan mesin komputasi abstrak yang di dalamnya terdapat sekumpulan instruksi dan menggunakan

Tabel 1 Hasil pengukuran runtime sistem awal Iterasi Runtime sistem pada pengukuran

(19)

8

berbagai area memori. JVM merupakan bagian dari teknologi Java yang mendukung adanya cross-platform serta kemampuan melindungi pengguna dari program berbahaya (Lindholm dan Yellin 1997). JVM akan berperan sebagai penengah untuk menerjemahkan instruksi Java agar dapat dibaca oleh sistem operasi atau perangkat tertentu.

Pada saat sistem pertama kali diakses, yakni pada iterasi pertama, class loader pada JVM melakukan proses loading untuk semua class yang dibutuhkan oleh sistem. Dengan kata lain, JVM melakukan inisialisasi class untuk pertama kalinya. Class yang sudah di-load oleh class loader disimpan ke memori. Ketika sistem diakses kembali pada iterasi kedua, JVM tidak perlu melakukan inisialisasi class lagi seperti pada awal iterasi. Class dapat langsung dipanggil oleh JVM dari memori. Demikian pula untuk iterasi ketiga dan selanjutnya. Hal ini menyebabkan runtime sistem pada iterasi pertama jauh lebih besar dibandingkan dengan iterasi-iterasi berikutnya.

Jumlah Titik Panas

Pada sistem ini terdapat dua database, yaitu db_forestfire dan

geohotspot. Database db_forestfire berisi data titik panas dari tahun 1997-2005 yang jumlahnya mencapai 473 892 titik. Sistem ini belum bisa menangani ukuran data yang besar sehingga Imaduddin (2012) hanya mengambil 190 titik dari database db_forestfire kemudian disimpan ke geohotspot. Dengan digunakannya database geohotspot yang berukuran kecil, sistem dapat menangani kueri yang dimasukkan oleh pengguna. Database db_forestfire

hanya digunakan sebagai sumber data pada GeoServer yang berfungsi menyimpan layer peta.

Gambar 4 menunjukkan titik panas yang dihasilkan pada modul JPivot yang merupakan hasil eksekusi kueri dari GeoMondrian. Kueri MDX yang dimasukkan yaitu:

Kueri tersebut menunjukan bahwa pengguna ingin mencari jumlah titik panas yang berada di Provinsi Sumatera Selatan pada tahun 1997 dari kubus data

geohotspot. Pada Gambar 4 bisa dilihat bahwa JPivot hanya menampilkan titik

panas yang berada pada Provinsi Sumatera Selatan yang berarti hasil eksekusi kueri benar.

(20)

9

Konfigurasi Sistem

Pengaturan JavaRuntime Environment (JRE)

GeoServer dalam lingkungan pengembangan dapat dievaluasi berdasarkan tiga kriteria, yaitu realibility, availability, dan performance. Reliability mengukur kemampuan GeoServer dalam memenuhi request untuk peta. Availability mengukur kesiapan GeoServer dalam menerima request. Performance mengukur kecepatan GeoServer dapat mengembalikan respon dari sebuah request (OpenGeo 2009). Dengan mempertimbangkan aspek performance, maka dilakukan konfigurasi pada bagian JRE yang di dalamnya terdapat JVM. Pada tahap ini diberikan tiga perlakuan pada sistem dengan mengubah JRE sebanyak tiga versi yang berbeda. Selanjutnya, pengukuran runtime sistem dilakukan pada masing-masing versi.

Versi JRE yang akan diukur ialah JRE 1.6.0.04, JRE 6, dan JRE 7. Pengaturan JRE dilakukan pada servlet container di mana GeoServer berada yaitu Apache Tomcat. Contoh kode program untuk mengatur JRE menggunakan JRE 7:

SET JRE_HOME=C:\Program Files\Java\jre7

Gambar 5 menunjukkan perbandingan hasil pengukuran runtime untuk versi JRE yang berbeda. Pada grafik tersebut diperlihatkan bahwa runtime untuk JRE 7 jauh lebih kecil atau lebih cepat dibandingkan dengan JRE 1.6.0.16 dan JRE 6. Runtime untuk JRE 1.6.0.16 dan JRE 6 nilainya tidak jauh berbeda karena pada dasarnya keduanya termasuk dalam pengembangan Java 6. Hasil pengukuran ini membuktikan bahwa versi JRE sangat memengaruhi kinerja sistem, dalam hal ini adalah runtime sistem. Semakin baru versi JRE yang digunakan, semakin cepat runtime yang dihasilkan.

(21)

10

Modifikasi Sumber Database

Tahap ini dilakukan untuk menguji kinerja sistem dengan menggunakan database db_forestfire yang berisi lebih dari 400 000 data titik panas. Konfigurasi tidak hanya dilakukan pada koneksi database tetapi juga pada skema kubus data karena harus disesuaikan dengan database yang digunakan. Modifikasi skema kubus data yang dilakukan hanya sebatas menyesuaikan nama atribut dari database yang baru. Modifikasi ini dilakukan dengan menggunakan perangkat lunak Schema Workbench. Skema kubus data disimpan dalam bentuk fail XML yang nantinya akan dibaca oleh GeoMondrian untuk mengeksekusi kueri yang dimasukkan pengguna.

Gambar 6 menunjukkan skema kubus data multidimensi yang digunakan pada sistem berupa skema snowflake. Struktur fail XML dari skema ini dapat dilihat pada Lampiran 1. Tabel fakta_forestfire berisi data jumlah munculnya area titik panas yang ditangkap oleh satelit tertentu pada waktu tertentu. Tabel tersebut merupakan tabel fakta yang menjadi pusat kubus data. Kubus data terdiri atas tiga dimensi yaitu dimensi waktu, lokasi, dan satelit. Dimensi waktu berdasarkan tabel tb_waktu memiliki tiga level, yakni tahun, kuartil, dan bulan. Dimensi satelit hanya memiliki satu level, yaitu nama satelit. Nama satelit menunjukkan satelit yang mendeteksi kemunculan area titik panas. Dimensi lokasi terdiri dari tiga level yaitu level hotspot, kabupaten, dan provinsi. Level hotspot merujuk langsung pada lokasi area titik panas. Masing-masing level memiliki properti berupa data geometri yang menunjukan koordinat lokasi.

(22)

11 Measure yang digunakan pada kubus data ini adalah jumlah hotspot yang merupakan hasil penjumlahan dari atribut jumlah pada tabel

fakta_forestfire.

Sistem dapat menerima masukkan kueri dari pengguna dalam bentuk kueri Multi-Dimensional eXpressions (MDX). MDX merupakan sebuah bahasa yang memungkinkan pengguna untuk menjalankan kueri OLAP pada kubus data mirip seperti menjalankan kueri SQL pada database relasional (Whitehorn et al. 2002). Struktur kueri MDX mirip dengan struktur SQL, yaitu terdapat syntax SELECT, FROM, dan WHERE. Namun, pada kueri MDX terdapat COLUMNS dan ROWS yang harus diatur pada bagian SELECT untuk menentukan atribut isi pada kolom dan baris. Penulisan kueri MDX ini tentunya harus disesuaikan dengan skema kubus data terutama untuk measure, dimensi, dan level.

Database db_forestfire terdiri dari 473 892 fakta titik panas. Jumlah tersebut terlalu besar sehingga sistem tidak mampu menanganinya. Dengan demikian, perlu dilakukan reduksi data pada tabel fakta_forestfire dan

tb_geohotspot. Proses reduksi data dilakukan dalam beberapa percobaan untuk

mencari ukuran data maksimal yang dapat ditangani oleh sistem. Kueri yang digunakan untuk menguji masing-masing ukuran data ialah:

SELECT

{ [Measures].[Jumlah_Hotspot] } ON COLUMNS, { [lokasi].[Hotspot].Members } ON ROWS, FROM [geohotspot]

WHERE [waktu].[Semua Waktu]

Setelah melakukan beberapa percobaan ternyata jumlah maksimal titik panas yang dapat ditampilkan oleh sistem sebanyak 1500 titik. Sementara itu, untuk ukuran data yang melebihi jumlah tersebut, misalnya 2000 titik, terjadi error pada JPivot. Error tersebut berhubungan dengan Java heap space atau biasa disebut Java heap memory. Java heap space ini di-generate pada JVM saat pertama kali sistem dijalankan saat class instances dan array dialokasikan (Lindholm dan Yellin 1997). Error terjadi karena ukuran Java heap yang kurang sehingga tidak mampu menampilkan titik panas dengan jumlah lebih dari 1500 titik.

Ukuran Java heap dapat diatur pada Tomcat dengan mengubah nilai minimum dan maksimumnya. Kode program untuk mengatur nilai yaitu: SET

JAVA_OPTS=-Xms512m -Xmx1024m. Xms merupakan nilai minimum dan XMs

merupakan nilai maksimum. Nilai atau ukuran maksimum ini bergantung pada sistem operasi dan ukuran RAM yang digunakan. Semakin besar ukuran RAM yang digunakan maka semakin besar nilai maksimum yang dapat ditentukan. Nilai maksimum ini akan menentukan ukuran data yang dapat ditangani oleh sistem. Pada penelitian ini tidak dilakukan penambahan nilai maksimum tidak dilakukan karena spesifikasi perangkat keras yang kurang memadai sehingga tetap pada pengaturan awal yakni 1024 MB.

Ukuran data yang akan digunakan sudah ditetapkan. Selanjutnya dilakukan pengujian untuk kueri lainnya yaitu menampilkan titik panas pada level hotspot provinsi. Berikut kueri MDX yang dimasukkan:

SELECT

(23)

12

FROM [geohotspot]

WHERE [waktu].[Semua Waktu]

Gambar 7 menunjukkan hasil eksekusi kueri tersebut yang ditampilkan pada modul JPivot. Hasil eksekusi kueri tersebut berupa jumlah titik panas yang ada pada semua provinsi dan semua waktu. Pada modul JPivot ini dapat dilakukan operasi drill down yang akan menghasilkan jumlah titik panas pada masing-masing kabupaten pada setiap provinsi yang ada. Operasi drill down dapat dilakukan lagi sampai pada level hotspot.

Selanjutnya, dilakukan pengujian untuk menampilkan titik panas pada modul peta. Modul peta divisualisasikan oleh OpenLayers dengan mengambil layer dasar peta dari GeoServer dan objek titik panas dari fail JSON hasil eksekusi kueri yang dikirim dari GeoMondrian melalui Spatialytics servlet. Contoh potongan fail JSON tersebut dapat dilihat pada Lampiran 2.

Pengujian dimulai dengan menampilkan titik panas pada level hotspot provinsi. Masing-masing wilayah provinsi merupakan layer poligon yang memiliki warna bervariasi berdasarkan jumlah kemunculan titik panas pada wilayah tersebut. Perbedaan warna ini diatur dengan menentukan interval jumlah titik panas. Karena pembagian interval pada sistem sebelumnya masih bersifat statis, perlu dilakukan modifikasi agar pembagian interval bersifat dinamis sesuai dengan jumlah titik panas yang dihasilkan dari proses eksekusi kueri. Hasil modifikasi tampilan pada layer provinsi ditunjukkan pada Gambar 8. Berikut pseudocode untuk pembagian interval:

range = jumlah_maksimum – jumlah_minimum;

step = range/jumlah_interval;

for(i = 0; i < titik_panas.length; i++){

id_interval[i] = floor(titik_panas[i]/step); }

(24)

13

Gambar 9 menunjukkan hasil operasi drill down pada Provinsi Riau sehingga menghasilkan layer level kabupaten. Sama seperti pada level provinsi, layer yang ditampilkan berbentuk poligon dengan perbedaan warna berdasarkan jumlah kemunculan titik hotspot pada setiap wilayah kabupaten. Tampilan lengkap sistem dapat dilihat pada Lampiran 3.

Pada pengujian selanjutnya, kueri yang dimasukkan adalah kueri untuk menampilkan semua titik panas pada level hotspot. Seharusnya, modul peta menampilkan titik-titik panas berdasarkan koordinatnya. Namun, pada pengujian ini modul peta gagal menampilkan titik-titik panas yang ada. Dengan demikian perlu dilakukan pengecekan error, seperti terlihat pada Gambar 10.

(25)

14

Penanganan Error pada OpenLayers

Pengecekan error dilakukan pada web browser. Dari pengecekan ini ditemukan error pada bagian renderer OpenLayers. Error terjadi karena nilai jari-jari (r) dari semua objek titik panas bernilai infinity atau tak hingga. Nilai jari-jari ini merupakan nilai yang digunakan oleh OpenLayers untuk menggambarkan lingkaran representasi titik panas pada level hotspot. Nilai infinity pada jari-jari menyebabkan OpenLayers tidak dapat me-render overlay titik panas tersebut.

Kode program yang mendeklarasikan nilai r tersebut terdapat pada fail

SVG.js, dengan potongan kode program:

node.setAttributeNS(null, "r", style.pointRadius);

Karena error yang terjadi adalah semua titik panas memiliki nilai r yang tak hingga, penentuan nilai r yang statis harus dilakukan agar titik panas dapat ditampilkan. Berikut hasil modifikasi kode programnya:

node.setAttributeNS(null, "r", 2);

Setelah dilakukan modifikasi program, pengujian pada modul peta kembali dilakukan. Hasil pengujian ditunjukkan pada Gambar 11 yaitu objek titik panas dapat terlihat.

Gambar 10 Error yang terjadi pada OpenLayers

(26)

15

SIMPULAN DAN SARAN

Simpulan

Runtime sistem dapat dipengaruhi salah satunya oleh JRE yang digunakan. Kecepatan runtime sistem berubah sesuai dengan versi JRE. Semakin baru versi yang digunakan, semakin cepat runtime sistem yang dihasilkan.

Jumlah titik panas yang mampu ditangani oleh sistem bertambah dari 190 titik menjadi 1500 titik baik pada modul peta maupun modul JPivot. Besarnya jumlah titik yang dapat ditangani oleh sistem dipengaruhi oleh ukuran Java heap. Ukuran Java heap ini dapat diatur dengan menyesuaikan besarnya RAM yang digunakan.

Saran

Hasil penelitian ini sudah menghasilkan kinerja sistem yang lebih bagus dari sistem sebelumnya, tetapi masih banyak beberapa hal yang bisa dilakukan sehingga kinerja sistem lebih optimal. Berikut beberapa saran untuk penelitian selanjutnya.

1 Peningkatan spesifikasi perangkat keras yang digunakan dalam lingkungan pengembangan sistem, misalnya prosesor yang lebih bagus dan ukuran RAM yang lebih besar.

2 Pembuatan tabel agregasi pada database dan skema kubus data. Hal ini bertujuan mengurangi beban GeoMondrian dalam proses eksekusi kueri terutama untuk kueri yang sekiranya sering dimasukkan oleh pengguna. 3 Penggantian editor kueri MDX menjadi bentuk combo box yang lebih mudah

dipahami. Dengan demikian, sistem ini tidak hanya terbatas untuk pengguna yang mengerti format kueri MDX.

4 Pengembangan fungsi operasi roll up dan drill down untuk dimensi waktu.

DAFTAR PUSTAKA

(27)

16

Radius DB. 2012. Titik panas sudah mencapai 15392 titik [Internet]. [diunduh 2012 Des 9]. Tersedia pada: http://regional.kompas.com/read/2012/08/28/1640 2351/Titik.Panas.Sudah.Mencapai.15.392.Titik..

(28)

17 Lampiran 1 Skema kubus data multidimensi dalam bentuk XML

<Schema name="hotspot">

<Cube name="geohotspot" cache="true" enabled="true">

<Table name="fakta_forestfire" schema="public" alias=""> </Table>

<Dimension type="TimeDimension" foreignKey="id_waktu" name="waktu">

<Hierarchy hasAll="true" allMemberName="Semua Waktu" primaryKey="id_waktu">

<Table name="tb_waktu" schema="public" alias=""> </Table>

<Level name="tahun" column="tahun" type="Numeric"

uniqueMembers="true" levelType="TimeYears" hideMemberIf="Never"> </Level>

<Level name="kuartil" column="kuartil" type="String" uniqueMembers="false" levelType="TimeQuarters"

hideMemberIf="Never"> </Level>

<Level name="bulan" column="bulan" type="String"

uniqueMembers="false" levelType="TimeMonths" hideMemberIf="Never"> </Level>

</Hierarchy> </Dimension>

<Dimension type="StandardDimension" foreignKey="id_satelit" name="satelit">

<Hierarchy hasAll="true" allMemberName="Semua Satelit" primaryKey="id_satelit">

<Table name="tb_satelit" schema="public" alias=""> </Table>

<Level name="Nama Satelit" column="nama_satelit" type="String" uniqueMembers="true" levelType="Regular" hideMemberIf="Never">

</Level> </Hierarchy> </Dimension>

<Dimension type="StandardDimension" foreignKey="id_hotspot" name="lokasi">

<Hierarchy hasAll="true" allMemberName="Seluruh Indonesia" primaryKey="kode_hotspot" primaryKeyTable="tb_geohotspot">

<Join leftKey="kode_kab" rightAlias="tb_kabupaten" rightKey="kode_kab">

(29)

18 Lanjutan

<Level name="Hotspot Kabupaten" table="tb_kabupaten" column="nama_kab" type="String" uniqueMembers="true"

levelType="Regular" hideMemberIf="Never">

<Property name="geom" column="kab_geom" type="Geometry"> </Property>

</Level>

<Level name="Hotspot" table="tb_geohotspot"

column="kode_hotspot" type="Integer" uniqueMembers="true" levelType="Regular" hideMemberIf="IfBlankName">

<Property name="pointgeom" column="hotspot_geom" type="Geometry">

</Property> </Level> </Hierarchy> </Dimension>

<Measure name="Jumlah_Hotspot" column="jumlah"

datatype="Integer" formatString="Standard" aggregator="sum" visible="false">

(30)

19 Lampiran 2 Potongan fail JSON hasil eksekusi kueri

{"cellSet": {

"LEVEL_UNIQUE_NAME": "[Measures].[MeasuresLevel]", "MEMBER_CAPTION": "Jumlah_Hotspot",

(31)

20 Lanjutan

"IS_PLACEHOLDERMEMBER": null, "LEVEL_NUMBER": 3,

"LEVEL_UNIQUE_NAME": "[lokasi].[Hotspot]", "MEMBER_CAPTION": "1",

"MEMBER_GUID": null, "MEMBER_KEY": 1, "MEMBER_NAME": "1", "MEMBER_ORDINAL": -1, "MEMBER_TYPE": 1,

"MEMBER_UNIQUE_NAME": "[lokasi].[Seluruh

Indonesia].[NANGGROE ACEH DARUSSALAM].[ACEH SINGKIL].[1]", "PARENT_COUNT": 1,

"PARENT_LEVEL": 2,

"PARENT_UNIQUE_NAME": "[lokasi].[Seluruh Indonesia].[NANGGROE ACEH DARUSSALAM].[ACEH SINGKIL]", "SCHEMA_NAME": "hotspot",

"VALUE": null, "pointgeom": { "coordinates": [ 97.86,

2.29 ],

"type": "Point" }

(32)

21 Lampiran 3 Tampilan lengkap sistem

Roll up Drill down

Zoom

Memilih style peta

(33)

22 Lanjutan

Drill down Roll up

Menampilkan grafik

(34)

23

RIWAYAT HIDUP

Penulis dilahirkan di Banyumas pada tanggal 14 Januari 1992 dari ayah Wijiono dan ibu Supriyati. Penulis merupakan anak kedua dari dua bersaudara. Pada tahun 2009 penulis lulus dari SMA Negeri 1 Purwokerto dan lulus seleksi masuk Institut Pertanian Bogor (IPB) melalui jalur Undangan Seleksi Masuk IPB dan diterima di Departemen Ilmu Komputer, Fakultas Matematika dan Ilmu Pengetahuan Alam.

Gambar

Gambar 1 Skema tahapan penelitian
Gambar 2 Arsitektur sistem awal
Gambar 3 Alur kerja sistem awal dimodifikasi dari Imaduddin (2012)
Gambar 6 menunjukkan skema kubus data multidimensi yang digunakan
+3

Referensi

Dokumen terkait

potensi daya tarik wisata yang dimiliki oleh Desa Sumberkima adalah. sulitnya akses menuju ke lokasi potensi daya tarik wisata,

Alhamdulillahirobbil‟aalamiin, segala puji dan syukur penulis panjatkan kepada Allah SWT, yang telah melimpahkan nikmat, rahmat dan berkah-Nya, sehingga peneliti dapat

Berdasarkan hasil penelitian dan pengujian yang telah dilakukan dapat ditarik kesimpulan bahwa, tingkat kesadaran wajib pajak, tingkat pemahaman wajib pajak, kemampuan wajib pajak

berlaku. Juga, hadith itu menunjukkan bahawa setiap Muslim harus melaksanakan amar makruf dan nahi mungkar secara berperingkat: pertama ialah dengan tindakan; kedua

Hipotesis kedua dalam penelitian ini adalah bahwa terjadi week four effect pada bursa efek Indonesia yang menyebabkan return negatif pada hari Senin terkonsentrasi

Walaupun garis-garis alur tangan terbentuk berbeda-beda, tetapi sifat-sifat khusus dari sidik jari yang disebut dengan minutiae adalah unik untuk setiap individu.Teknologi ini

Pihak pertama berjanji akan mewujudkan target kinerja yang seharusnya sesuai lampiran perjanjian ini dalam rangka mencapai target kinerja jangka menengah seperti yang

Untuk meningkatkan kualitas semen sapi aceh yang disimpan dingin sebaiknya hanya menambahkan ekstrak kulit buah naga merah sampai dosis 0,2 g/100 ml dalam media sitrat