Mau Bikin Webgis? Cek Dulu Siapa Lebih Cepat? Geoserver vs Mapserver vs Geojson Dalam Openlayers dan Leaflet [Part 1]

Mau bikin WebGIS opensource? Jika ya sebaiknya anda baca postingan ini sampai selesai sebagai tambahan referensi anda. Walaupun judulnya adalah ‘siapa lebih cepat’, namun postingan ini tidak bermaksud untuk men-judge bahwa ada framework yang terbaik atau terjelek. Karena semua framework mempunyai kekurangan dan kelebihan masing-masing, tidak bisa dinilai hanya dari kecepatannya saja. Semuanya akan kembali ke kebutuhan penggunanya sendiri.

Saat ini untuk membuat WebGIS pengguna telah mempunyai banyak pilihan framework yang bersifat opensource. Sebut saja untuk WebGIS berbasis server misalnya Geoserver atau Mapserver, sementara untuk yang berbasis javascript adalah format data GeoJSON. Sedangkan untuk halaman WebGIS juga tersedia API (Application Programming Interface) semacam Leaflet atau Openlayers ataupun Google Maps API. Selengkapnya untuk pilihan framework dan API baca di situs osgeo.org.

Postingan ini sebetulnya lebih sebagai berbagi informasi dari pengalaman menggunakan framework WebGIS opensource. Adapun pembahasannya berdasarkan yang pernah digunakan oleh Lintas Bumi, yaitu UMN Mapserver, Geoserver, dan data GeoJSON memakai API Leaflet dan OpenLayer. Sebelum ke pembahasan ada baiknya kita selayang pandang dulu sedikit tentang framework dan API tersebut.

Ada dua basis kerja framework WebGIS, pertama berbasis server (UMN Mapserver, Geoserver) kedua berbasis javascript (Geojson, Json). Jika yang berbasis server bisa menampilkan peta sendiri (image) melalui WMS, WFS, dan lain-lain, maka untuk data Geojson atau Json jika ingin tampil sebagai peta harus melalui bantuan API seperti Leaflet ataupun OpenLayer.

 

# Geoserver vs UMN Mapserver

Dalam WebGIS opensource saat ini, Geoserver dan Mapserver adalah framework atau aplikasi yang sering disebut-sebut dan mungkin banyak digunakan, terutama untuk yang berbasis server. Keduanya bisa dijalankan di semua OS (WindowsLinux, atapun Mac OS X). Lintas Bumi tidak akan membahas spesifikasi dari kedua framework tersebut karena anda bisa mencarinya sendiri di dunia maya, namun akan membahasnya dari sisi praktis dan pengalaman saja.

Salah satu kelebihan dari Geoserver adalah kemudahan pengelolaan datanya yang sudah berbasis halaman web, tidak terlalu memerlukan pemahaman mendalam tentang bahasa pemrograman. Ini cocok untuk pengguna pemula yang ingin membuat webgis tapi tidak faham pemrograman. Untuk pengelolaan style atau simbolnya sudah bisa menggunakan file simbol dari QGIS. Jadi pengguna cukup mendesain simbol datanya di QGIS dan tinggal diimpor saja ke dalam Geoserver. Hal ini tidaklah mengagetkan karena keduanya berada di bawah payung dan kontributor yang sama yaitu OSGEO. Peta yang dihasilkan berformat image (PNG, JPG, dan lain-lain).

Kekurangannya fungsionalitas ataupun fasilitas-fasilitas yang ada pada Geoserver masih sederhana dan belum banyak. Menjalan Geoserver cukup mudah, tinggal unduh dari situsnya dan install, ditambah install JDK/JRE yang cocok, dan aplikasi webserver semacam apache atau XAMPP.

Halaman admin Geoserver

Sementara UMN Mapserver buatan Univesity of Minnesota bisa dikatakan mempunyai pengelolaan yang lebih rumit, dia tidak mempunyai halaman pengaturan (halaman admin) khusus. Mapserver lebih bersifat platform dan harus diwujudkan dalam sebuah bahasa pemrograman bahasa C dalam format mapfile. Fungsi mapfile ini adalah sebagai konektor data spasial desktop menjadi data online, mapfile inilah yang diproses oleh ‘mesin’ Mapserver. Mapserver juga adalah sebuah aplikasi online yang bisa berjalan sendiri lewat CGI-BIN. Peta yang dihasilkan berformat image (PNG, JPG, dan lain-lain). Mapserver lebih ditujukan untuk pengguna yang sudah memahami bahasa pemrograman.

Kelebihannya Mapserver adalah bisa bersifat portable, cukup di-build dan dikombinasikan dengan PHP (menjadi PHP Mapcript), bisa di-customize secara luas karena betul-betul diprogram sendiri oleh penggunanya. Fungsionalitanya juga banyak misalnya bisa koneksi (join) dengan database (mysql, psotgre, dan lain-lain) secara mandiri, bisa diprogram berbasis PHP (PHP Mapscript), dan lain-lain. Untuk menjalankannya juga mudah, khusus bagi pengguna Windows sudah disediakan paket aplikasi yang tinggal di-running yaitu MS4W, di dalamnya sudah mencakup webserver apache.

Interface mapserver (MS4W) dan contoh mapfile

 

# GeoJSON

Dikutip dari Wikipedia, GeoJSON adalah format standar bersifat terbuka yang dirancang untuk menyajikan fitur geografis sederhana, bersama dengan atribut non-spasialnya. Ini didasarkan pada JSON (JavaScript Object Notation). Fitur-fiturnya termasuk titik (misal alamat dan lokasi), garis (misal jalan, jalan raya dan batas), poligon (misal negara, provinsi, bidang tanah), dan koleksi multi-part dari jenis-jenis tadi.

Sederhananya dalam GeoJSON ini data-data spasial dari format desktop akan dijadikan urutan atau baris-baris kode javascript yang mencakup koordinat node dan juga atribut pendukungnya. Format data ini bisa langsung dibaca oleh browser dan ditampilkan sebagai teks, namun jika ingin ditampilkan utuh sebagai peta maka memerlukan bantuan framework WebGIS seperti Google Maps API, Leaflet, ataupun Openlayers dan lain-lain.

 

# Leaflet vs Openlayers

Di luar data, dalam WebGIS penting juga untuk memilih API atau tepatnya halaman untuk menampilkan data. API untuk WebGIS yang trend saat ini adalah Leaflet dan Openlayers. Keduanya berbasis javascript yang berarti tidak memerlukan bantuan server (jika data yang digunakan Geojson/Json) dan sepenuhnya bergantung browser yang digunakan klien. Namun demikian keduanya juga bisa menampilkan data yang dihasilkan oleh Geoserver, Mapserver.

Dalam memprogram dengan API Leaflet, kode javascript yang digunakan jauh lebih mudah dan praktis, bahkan tutorialnya pun mudah dimengerti di websitenya, ini cocok untuk pemula. Untuk menjalankannya pun tinggal mengekstrak mentahan yang disediakan dan tinggal dijalankan tanpa localhost sekalipun. Ini cocok untuk yang ingin membuat WebGIS yang sederhana tanpa fasilitas yang ‘njlimet’ seperti hanya membuat peta background (tile), menampilkan peta, zoom, pan, popup, dan lain-lain. Namun akan repot jika WebGIS yang diinginkan kompleks karena diperlukan plugin-plugin yang terkadang tidak ada.

Contoh baris kode leaflet dan tampilannya

Di sisi lain Openlayers sebaliknya memerlukan pemrograman javascript (API) yang rada-rada rumit, sehingga sebetulnya kurang cocok untuk pemula. Ditambah lagi tidak disediakan tutorial yang runut seperti di website leaflet, jadi pengguna harus berusaha keras menganalisis sampel-sampel yang disediakan di websitenya dan menganalisisnya sendiri. Namun demikian Openlayers telah menyediakan fasilitas (plugin) yang biasa digunakan untuk pemetaan secara lengkap di dalamnya. Misalnya peta yang ingin di-publish berbeda proyeksi dengan peta online semacam OSM, maka sudah ada baris javacript khusus untuk penyesuaian (transformasi) proyeksi yang tinggal ditambahkan pada data yang diprogram, ini berbeda dengan leaflet.

Contoh baris kode Openlayers dan tampilannya

Namun demikian seperti sudah ditegaskan di awal, jika dikatakan mana yang lebih baik tentu saja masing-masing punya kekurangan dan kelebihan. Menurut Lintas Bumi jika ingin membuat WebGIS sederhana pakai saja Leaflet, sebaliknya jika ingin membuat WebGIS yang lebih interaktif maka Openlayers bisa menjadi pertimbangan. Jika anda belum begitu memahami pemrograman, anda bisa membuat webgis menggunakan Openlayers ataupun Leaflet pada QGIS dengan plugin qgis2leaf.

Bersambung ke part 2.

Bagikan ini:

Tinggalkan Balasan

Alamat email Anda tidak akan dipublikasikan. Ruas yang wajib ditandai *