Kompresi Data dengan Algoritma LZW pada REST Web Service Artikel Ilmiah Peneliti: Ardy Mathias Jadera (672010112) Magdalena A. Ineke Pakereng, M.Kom. Program Studi Teknik Informatika Fakultas Teknologi Informasi Universitas Kristen Satya Wacana Salatiga Juli 2016 Kompresi Data dengan Algoritma LZW pada REST Web Service Artikel Ilmiah Diajukan kepada Fakultas Teknologi Informasi untuk memperoleh Gelar Sarjana Komputer Peneliti: Ardy Mathias Jadera (672010112) Magdalena A. Ineke Pakereng, M.Kom. Program Studi Teknik Informatika Fakultas Teknologi Informasi Universitas Kristen Satya Wacana Salatiga Juli 2016 Kompresi Data dengan Algoritma LZW pada REST Web Service 1) Ardy Mathias Jadera, 2) Magdalena A. Ineke Pakereng Fakultas Teknologi Informasi Universitas Kristen Satya Wacana Jl. Diponegoro 52-60, Salatiga 50711, Indonesia 1) Email: [email protected], 2) [email protected] Abstract REST Web Service is becoming more popular is used as a medium of exchange of data between the mobile device with the server. Mobile devices such as phones based on Android to Windows-based tablets even have a data plan or WiFi internet paid for access to the service from the server. The larger the data transmitted, the longer the process for sending and receiving. It would also make the network becomes busy, and also the amount of toll charges incurred, if the data packet internet use. The data transmitted can be reduced in size without losing the meaning of information in it, using compression algorithms. In this study, the LZW compression algorithm implemented on a REST Web Service. In this study analyzed the advantages and disadvantages in terms of the implementation of this compression. The results showed that compression can reduce the size of the text data up to 11% of actual size. So that can directly save the use of data packets on the mobile device. The larger the file, the smaller the percentage of added time due to the process of compression / decompression. Deficiencies found is the presence of extra time compression and decompression processes that can affect the total time. Keywords: Data Compression, LZW, REST Web Service Abstrak REST Web Service semakin popular digunakan sebagai media pertukaran data antara perangkat mobile dengan server. Perangkat mobile seperti ponsel berbasis Android sampai bahkan tablet berbasis Windows menggunakan paket data internet yang berbayar atau WiFi untuk dapat mengakses layanan dari server. Semakin besar data yang ditransmisikan, semakin lama proses untuk mengirim dan menerima. Hal ini juga akan mengakibatkan jaringan menjadi lebih sibuk, dan juga banyaknya biaya pulsa yang dikeluarkan, jika paket data internet digunakan. Data yang dikirimkan dapat diperkecil ukurannya tanpa menghilangkan makna informasi di dalamnya, dengan menggunakan algoritma kompresi. Pada penelitian ini diimplementasikan algoritma kompresi LZW pada REST Web Service. Pada penelitian ini dianalisis keuntungan dan kerugian dalam hal implementasi kompresi ini. Hasil penelitian menunjukkan bahwa kompresi dapat memperkecil ukuran data teks sampai dengan 11% dari ukuran sebenarnya. Sehingga secara langsung dapat menghemat penggunaan paket data pada perangkat mobile. Semakin besar file, maka semakin kecil persentase tambahan waktu akibat proses kompresi/dekompresi. Kekurangan yang ditemukan adalah adanya waktu tambahan proses kompresi dan dekompresi yang dapat mempengaruhi total waktu. Kata Kunci: Kompresi Data, LZW, REST Web Service 1)Mahasiswa Program Studi Teknik Informatika, Fakultas Teknologi Informasi, Universitas Kristen Satya Wacana 2)Staf Pengajar Fakultas Teknologi Informasi, Universitas Kristen Satya Wacana. 1. Pendahuluan REST Web Service semakin popular digunakan sebagai media pertukaran data antara perangkat mobile dengan server [1]. Perangkat mobile seperti ponsel berbasis Android sampai bahkan tablet berbasis Windows menggunakan paket data internet yang berbayar atau WiFi untuk dapat mengakses layanan dari server. Semakin besar data yang ditransmisikan, semakin lama proses untuk mengirim dan menerima. Hal ini juga akan mengakibatkan jaringan menjadi lebih sibuk, dan juga banyaknya biaya pulsa yang dikeluarkan, jika paket data internet digunakan. REST Web Service berjalan pada protokol HTTP, yang berarti data yang dikirimkan berupa teks. Data yang dikirimkan dapat diperkecil ukurannya tanpa menghilangkan makna informasi di dalamnya, dengan menggunakan algoritma kompresi. Algoritma LZW [2] merupakan salah satu algoritma kompresi yang bersifat lossless. Lossless berarti antara isi data sebelum kompresi dengan isi data setelah dekompresi, tidak ada data yang hilang. Pada penelitian ini diimplementasikan algoritma kompresi LZW pada REST Web Service. Tujuan dari implementasi ini adalah untuk memperkecil ukuran data yang ditransmisikan antara server dengan client. Pada sisi server maupun client terdapat proses kompresi dan dekompresi. Server melakukan kompresi data kemudian mengirimkan ke client, kemudian data tersebut dilakukan dekompresi untuk mendapatkan informasi sebenarnya. Proses ini juga berlaku ketika client mengirim data ke server. 2. Tinjauan Pustaka Pada penelitian berjudul “Data Compression Techniques on Text Files: A Comparison Study”, dibahas mengenai perbandingan performa empat algoritma kompresi, yaitu LZW, Huffman, HFLC dan FLC. Pada penelitian tersebut disimpulkan bahwa LZW memberikan rasio hasil kompresi yang lebih besar daripada tiga algoritma yang lain, terutama pada file yang berukuran besar [3]. Pada penelitian Muhammad dan Subandi [4] dibandingkan antara kompresi Huffman dan LZW pada file dengan format video dan audio. Indikator perbandingan kompresi ini adalah waktu (kecepatan) kompresi, ukuran file hasil kompresi dan persentase pemampatan file setelah dilakukan kompresi data. Berdasarkan perbandingan yang telah dilakukan, didapat hasil bahwa rata-rata dari persentase pemampatan file audio adalah 98,6% (LZW) dan 99% (Huffman). Sedangkan rata-rata dari persentase pemampatan file video adalah 98,3% (LZW) dan 99,46% (Huffman). Sedangkan kecepatan rata-rata untuk kompresi file audio adalah 55.03 Kb/detik (LZW) dan 1058,78 KB/detik (Huffman). Sedangkan kecepatan rata-rata untuk kompresi file video adalah 51.25 Kb/detik (LZW) dan 825,41 Kb/detik (Huffman). Sehingga dapat disimpulkan bahwa metode LZW lebih efektif digunakan dalam pengkompresian audio dan video dibandingkan dengan metode Huffman. Penelitian tentang implementasi algoritma LZW salah satunya dilakukan oleh Hidayat, Zarman, dan Pamungkas [5]. Penelitian tersebut membahas mengenai implementasi LZW pada database server. Hal ini dilakukan untuk 1 memperkecil ukuran data yang akan disimpan di database server. Algoritma LZW yang dirancang menggunakan bahasa pemrograman PHP dan sistem manajemen basis data MySQL. Proses kompresi dilakukan pada saat data akan disimpan ke database dan didekompresi setiap data tersebut akan dibaca. Hasil implementasi algoritma LZW pada server yaitu penyimpanan artikel menjadi bertambah banyak, terlihat dari nilai persentase penghematan penyimpanan setiap artikel berkisar antara 11,67% sampai dengan 16,67% untuk perhitungan nilai rata-rata persentase penghematan 200 sampai dengan 1.000 karakter pertama dari sepuluh buah artikel acak. Berdasarkan penelitian yang pernah dilakukan tentang pemanfaatan kompresi dan algoritma LZW, maka dalam penelitian ini dilakukan penelitian yang memanfaatkan kompresi dengan algoritma LZW pada transmisi data antara REST Web Service dengan perangkat mobile berbasis Android. Perbedaan penelitian ini dengan penelitian-penelitian sebelumnya adalah, pada penelitian ini kompresi diterapkan pada data teks yang pada umumnya dilewatkan pada jalur komunikasi REST Web Service. REST Web Service menggunakan HTTP (Hypertext Transfer Protocol) untuk berkomunikasi, dengan kata lain data teks yang dilewatkan pada jalur protokol tersebut. Data teks dapat berupa file teks, atau data string. Algoritma LZW yang merupakan dictionary based compression sangat efektif mengkompresi data teks yang memiliki banyak pola huruf, kata ataupun kalimat yang berulang, semakin banyak pembendaharaan gabungan string dalam dictionary tambahan pada suatu plaintext maka semakin baik hasil kompresi plaintext tersebut [5]. LZW (Lempel-Ziv-Welch) merupakan algoritma kompresi lossless universal yang dibuat oleh Abraham Lempel, Jacob Ziv, dan Terry Welch. Kelebihan algoritma ini yaitu cepat dalam implementasi dan kekurangannya kurang optimal karena hanya melakukan analisis terbatas pada data. Algoritma ini melakukan kompresi dengan menggunakan kamus, di mana fragmen-fragmen teks digantikan dengan indeks yang diperoleh dari sebuah “kamus”. Pendekatan ini bersifat adaptif dan efektif karena banyak karakter dapat dikodekan dengan mengacu pada string yang telah muncul sebelumnya dalam teks. Prinsip kompresi tercapai jika referensi dalam bentuk pointer dapat disimpan dalam jumlah bit yang lebih dibandingkan string aslinya [6]. Konsep dari algoritma LZW secara sederhana mengganti string dari karakter dengan kode tunggal dan tidak melakukan analisa apapun pada teks yang masuk. Tetapi hanya menambahkan setiap string dari karakter baru yang ditemuinya ke tabel string (dictionary). Kompresi terjadi ketika ditemui string berulang, algoritma ini menghasilkan kode tunggal dan menggantikan string-string berulang yang ditemui selama proses kompresi [2]. REST (Representational State Transfer) Web Service adalah suatu arsitektur perangkat lunak untuk pendistribusian sistem hipermedia seperti WWW. Secara spesifik, REST merujuk pada suatu prinsip arsitektur jaringan yang menggariskan pendefinisian dan pengalamatan sumber daya. Istilah ini sering digunakan untuk mendeskripsikan semua interface sederhana yang mengirimkan data melalui HTTP tanpa ada tambahan lapisan pesan seperti SOAP. Keuntungan lain dari antarmuka REST adalah request dan respon dapat `2 dipendekkan. Prinsip dasar desain REST adalah membuat pemetaan one-to-one antara operasi create, read, update, dan delete yang menggunakan method sebagai POST untuk membuat sebuah resource pada server. GET untuk menerima sebuah resource. PUT untuk proses update state dari resource. DELETE untuk menghapus resource. Dalam konsep arsitektur REST web service, membuat panggilan ke suatu HTTP API secara signifikan lebih mudah daripada ke SOAP API, karena membutuhkan library client, membutuhkan pengenalan, dan kebiasaan. Sedangkan HTTP API adalah asli dari semua bahasa pemrograman dan hanya melibatkan HTTP request dengan parameter sesuai yang ditambahkan, sehingga lebih memudahkan dalam melakukan proses pemanggilan. HTTP API mudah untuk testing dan troubleshoot, karena dapat membangun panggilan dengan tidak lebih dari sekedar browsing dan memeriksa respon dalam jendela browser itu sendiri. Karena berbasis HTTP/RESTful, API dapat dikonsumsi menggunakan request GET sederhana, dan server proxy/reverse-proxy dapat melakukan cache atas respon tersebut dengan mudah. Untuk mengakses RESTful web service digunakan sebuah URI (Uniform Resource Identifiers) yang merupakan nama dan alamat dari sebuah resource. RESTful web service tidak menggunakan WSDL. Pesan yang dikirim, dikemas dalam format XML dan JSON. Berbeda dengan SOAP web service yang menggunakan protokol khusus untuk pengiriman pesan [7][8]. 3. Metode dan Perancangan Sistem Penelitian yang dilakukan, diselesaikan melalui tahapan penelitian yang terbagi dalam empat tahapan, yaitu: (1) Identifikasi masalah dan studi literatur, (2) Perancangan sistem, (3) Implementasi sistem yaitu perancangan aplikasi/program, dan (4) Pengujian sistem serta analisis hasil pengujian. Identifikasi Masalah dan Studi Literatur Perancangan Sistem Implementasi Sistem Pengujian Sistem dan Analisis Hasil Pengujian Gambar 1 Tahapan Penelitian Tahapan penelitian pada Gambar 1, dapat dijelaskan sebagai berikut. Tahap pertama: identifikasi masalah, yaitu masalah penghematan data yang ditransmisikan antara REST Web Server dengan client yang berupa perangkat mobile. Studi literatur dilakukan untuk mencari metode penghematan data yang `3 dapat diterapkan, serta penelitian-penelitian terdahulu yang dapat digunakan sebagai acuan. Tahap kedua: perancangan sistem yang meliputi perancangan proses kompresi dan proses dekompresi. Perancangan kedua proses tersebut juga dilakukan pada sisi client. Algoritma kompresi yang digunakan adalah LZW. Tahap ketiga: implementasi sistem, yaitu membuat aplikasi sesuai perancangan proses pada tahap kedua. Sistem yang dibuat terdiri dari dua aplikasi, yaitu server dan client. Aplikasi yang dikembangkan bertujuan untuk mensimulasikan hasil kompresi yang dikirim dan diterima oleh kedua sisi. Tahap keempat: pengujian sistem dan analisis hasil pengujian, yaitu dilakukan pengujian terhadap proses yang telah dirancang. Pengujian memiliki tujuan utama yaitu melihat keuntungan dan kerugian dengan adanya implementasi kompresi pada komunikasi REST Web Service dengan client. Gambar 2 Desain Sistem Komunikasi dari Client ke Server [1] Gambar 3 Desain Sistem Komunikasi dari Server ke Client [1] Proses kompresi dan dekompresi dengan algoritma LZW (Lempel Ziv Welch), dapat dijelaskan sebagai berikut, proses kompresi data secara sederhana mengganti string dari karakter dengan kode tunggal dan tidak melakukan analisa apapun pada teks yang masuk. Tetapi hanya menambahkan setiap string dari karakter baru yang ditemuinya ke tabel string (dictionary). `4 Gambar 4 Proses Algoritma Kompresi LZW [6] Gambar 5 Proses Algoritma Dekompresi LZW [6] Kompresi terjadi ketika ditemui string berulang, algoritma ini menghasilkan kode tunggal dan menggantikan string-string berulang yang ditemui selama proses kompresi. Panjang kode yang dihasilkan algoritma LZW dapat berubahubah, tetapi jumlah bit yang dimiliki kode tersebut harus lebih banyak dari pada sebuah karakter tunggal. Proses dekompresi pada LZW dilakukan dengan prinsip yang sama seperti proses kompresi. Proses kompresi dan dekompresi dengan algoritma LZW, dalam bentuk flowchart, ditunjukkan pada Gambar 4 dan Gambar 5. Contoh proses kompresi dijelaskan dengan menggunakan pesan. BABAABAAA. Pesan tersebut memiliki ukuran 9 byte (9 x 8 bit = 72 bit), satu karakter ASCII berukuran 1 byte. Tabel 1 Contoh Proses Kompresi S C S+C S+C ada di kamus? tambah S+C ke kamus output S S Kode S+C `5 Kode nilai S selanjutnya rumus nilai S B A BA tidak B 66 BA 256 S=C A A B AB tidak A 65 AB 257 S=C B B A BA ya S=S+C BA BA A BAA tidak S=C A A B AB ya S=S+C AB AB A ABA tidak AB 257 ABA 259 S=C A A A AA tidak A 65 AA 260 S=C A A A AA ya S=S+C AA BA A adalah karakter terakhir 66 256 BAA 258 260 65 256 257 65 260 Hasil kompresi adalah 66, 65, 256, 257, 65, 269, dengan ukuran 6 x 8 = 48 bit. Karena jumlah isi kamus lebih dari 256 (0 s/d 255), maka nilai binary untuk tiap kode dinaikkan dari 8 bit, menjadi 9 bit, sehingga dapat mengakomodasi nilai bilangan lebih dari 255. Sehingga hasilnya berukuran 54 bit. 4. 66 65 256 257 65 260 001000010 001000001 100000000 100000001 001000001 100000100 Hasil dan Pembahasan Pada penelitian ini dikembangkan aplikasi yang digunakan sebagai pengujian penggunaan kompresi LZW. Aplikasi dikembangkan dalam bentuk aplikasi mobile Android. Gambar 6 Tampilan Download Data 18 KB Gambar 7 Tampilan Download Data 99 KB `6 Pada Gambar 6 dan Gambar 7 ditunjukkan tampilan pada aplikasi Android yang digunakan untuk menguji proses download file terkompresi. Gambar 6 digunakan file teks berukuran 18 KB, dan Gambar 7 digunakan file teks 99 KB. File yang diunduh oleh aplikasi adalah file terkompresi, ukuran ini ditunjukkan pada kolom “Ukuran Download”. Lama waktu proses download ditunjukkan pada kolom “Waktu Download”. Setelah diterima, dilakukan proses dekompresi. Waktu proses dekompresi ditampilkan pada kolom “Waktu Dekompresi”, dan ukuran file setelah dekompresi ditampilkan pada kolom “Ukuran Dekompresi”. Pengujian dilakukan untuk mengukur waktu proses kompresi, waktu proses dekompresi, rasio hasil kompresi, waktu kirim, dan integritas data. Pengujian yang pertama adalah pengujian waktu proses. Tabel 2 Hasil Pengujian Kompresi di Server No Nama File Text 1 2 3 4 5 File1.txt File2.txt File3.txt File4.txt File5.txt Ukuran Asli/Normal (KB) 18 26 35 70 99 Ukuran setelah kompresi (KB) 4 5 6 9 11 Rasio 22% 19% 17% 13% 11% Lama Waktu Kompresi (detik) 0,60003 0,70004 0,80005 2,00012 2,90017 Lama Waktu Dekompresi (detik) 0,58091 0,67014 0,70020 0,14002 0,20050 Tabel 3 Hasil Pengujian Kompresi di Aplikasi Android No Nama File Text 1 2 3 4 5 File1.txt File2.txt File3.txt File4.txt File5.txt Ukuran Asli/Normal (KB) 18 26 35 70 99 Ukuran setelah kompresi (KB) 4 5 6 9 11 Rasio Lama Waktu Kompresi (detik) Lama Waktu Dekompresi (detik) 22% 19% 17% 13% 11% 4.35003 2.10004 2.60005 4.85012 5.20017 4.98091 4.12014 3.7502 3.14002 3.2505 Waktu proses kompresi dan dekompresi di Aplikasi Android memakan waktu lebih lama dari pada di server. Hal ini karena kemampuan komputasi perangkat mobile lebih kecil daripada computer server. Pengujian integritas data dilakukan untuk membuktikan bahwa tidak ada informasi yang rusak akibat proses kompresi dan dekompresi. Hasil pengujian ini ditunjukkan pada Tabel 4. Tabel 4 Pengujian Keutuhan File Nama File File1.txt File2.txt File3.txt File4.txt File5.txt Ukuran Nornal Data 18 KB 26 KB 35 KB 70 KB 99 KB Sesudah Kompresi 4 KB 5 KB 6 KB 9 KB 11 KB Sesudah Dekompresi 18 KB 26 KB 35 KB 70 KB 99 KB Perbandingan Checksum (MD5) Sama Sama Sama Sama Sama Berdasarkan hasil pengujian pada Tabel 4, ukuran file yang telah dikompresi tidak mengalami perubahan ukuran. Algoritma LZW menggunakan teknik kompresi lossless yang menjamin bahwa berkas yang dikompresi dapat selalu dikembalikan ke bentuk aslinya `7 Pengujian terakhir adalah total waktu antara pengiriman data dari server ke aplikasi Android dan sebaliknya. Hasil pengujian ditunjukkan pada Tabel 5 dan Tabel 6. Memory pada Android emulator di pengujian ini dibatasi sampai dengan 256 MB. Jika digunakan data lebih dari kapasitas memory, maka aplikasi menjadi error dan ditutup secara paksa (terminate) oleh sistem operasi Android. Tabel 5 Waktu Kirim File dengan Kompresi dari Server ke Android Ukuran Asli/Normal (MB) Ukuran setelah kompresi (MB) Kompresi (detik) Terjadi di Server Dekompresi (detik) Terjadi di Android(MB) Total (detik) 16 3 4.54 1.34 26.95 32.83 32 6 64 18 6.71 2.68 35.12 44.51 7.82 8.04 40.23 56.09 128 256 34 8.01 15.19 52.42 75.62 100 9.01 44.67 61.42 115.10 Waktu Kirim Tabel 6 Waktu Kirim File tanpa Kompresi dari Server ke Android (tidak ada dekompresi) Ukuran Asli/Normal(MB) (tidak ada kompresi) (MB) Kompresi (detik) Terjadi di Server (tidak ada kompresi) 16 16 0 7.15 0 7.15 32 32 0 15.29 0 15.29 64 64 0 27.59 0 27.59 128 128 0 59.17 0 59.17 256 256 0 115.35 0 115.35 Waktu Kirim Total (detik) Berdasarkan Tabel 5 dan Tabel 6, lama waktu pengiriman data yang terkompresi lebih cepat daripada waktu kirim data tanpa kompresi. Ada kelemahan dari penggunaan kompresi, yaitu adanya tambahan waktu kompresi dan dekompresi yang terjadi di Server dan di Android. Sehingga pada akhirnya total waktu yang tercepat adalah waktu tanpa kompresi. Perbandingan Waktu Pengiriman Dengan Kompresi Tanpa Kompresi 140,00 WAKTU (DETIK) 120,00 100,00 80,00 60,00 40,00 20,00 0,00 16 32 64 UKURAN DATA (MB) `8 128 256 Gambar 8 Grafik Perbandingan Waktu Pengiriman dari Server ke Android Perbandingan Total Waktu Dengan Kompresi Tanpa Kompresi 140,00 WAKTU (DETIK) 120,00 100,00 80,00 60,00 40,00 20,00 0,00 16 32 64 128 256 UKURAN DATA (MB) Gambar 9 Grafik Perbandingan Waktu Total dari Server ke Android Berdasarkan Gambar 8 dilihat bahwa dengan kompresi dapat memberikan penghematan dalam hal kecepatan pengiriman data. Jika komponen waktu komputasi (proses kompresi dan dekompresi), ditambahkan pada waktu kirim (Gambar 9), maka secara total, proses kirim tanpa kompresi lebih cepat daripada dengan kompresi. Tabel 7 Waktu Kirim File dengan Kompresi dari Android ke Server Ukuran Asli/Normal (MB) Ukuran setelah kompresi (MB) Kompresi (detik) Terjadi di Android 16 3 26.91 1.36 Dekompresi (detik) Terjadi di Server (MB) 4.60 32 6 35.45 2.77 7.11 44.12 Waktu Kirim Total (detik) 32.95 64 18 41.56 8.54 7.99 52.20 128 34 53.33 15.98 8.20 63.93 256 100 62.12 44.89 9.04 74.08 Tabel 8 Waktu Kirim File tanpa Kompresi dari Android ke Server Ukuran Asli/Normal (MB) (tidak ada kompresi) (MB) Kompresi (detik) Terjadi di Android (tidak ada kompresi) Waktu Kirim 16 16 0 7.15 0 7.15 32 32 0 15.77 0 15.77 (tidak ada dekompresi) Total (detik) 64 64 0 28.90 0 28.90 128 128 0 63.66 0 63.66 256 256 0 116.02 0 116.02 `9 Seperti halnya pada proses dari Server ke Android, pada Tabel 7 dan Tabel 8, secara keseluruhan, waktu pengiriman dengan kompresi menjadi lebih lama karena ada tambahan waktu proses. Perbandingan waktu kirim dan waktu total ditunjukkan pada Gambar 10 dan Gambar 11. Perbandingan Waktu Pengiriman Dengan Kompresi Tanpa Kompresi 140,00 WAKTU (DETIK) 120,00 100,00 80,00 60,00 40,00 20,00 0,00 16 32 64 128 256 UKURAN DATA (MB) Gambar 10 Grafik Perbandingan Waktu Pengiriman dari Android ke Server Perbandingan Total Waktu Dengan Kompresi Tanpa Kompresi WAKTU (DETIK) 200,00 150,00 100,00 50,00 0,00 16 32 64 128 256 UKURAN DATA (MB) Gambar 11 Grafik Perbandingan Waktu Total dari Android ke Server Hal ini bukan berarti kompresi tidak memberikan keuntungan apapun. Keuntungan yang jelas tampak adalah berkurangnya ukuran file yang dikirimkan. Hal ini menjadikan paket yang dikirimkan lewat jaringan komputer LAN maupun internet menjadi lebih kecil. Sehingga lebih dapat menghemat biaya pulsa internet jika diakses menggunakan koneksi mobile network. Waktu untuk komputasi (kompresi/dekrompresi) dipengaruhi oleh memory dan kecepatan prosesor pada `10 server dan Android. Sehingga semakin tinggi spesifikasi perangkat keras, maka waktu untuk komputasi ini akan semakin terpangkas. Tabel 9 Tambahan Waktu Kompresi/Dekompresi Ukuran File Dengan Kompresi Server ke Android Tanpa Kompresi Tambahan waktu Dengan Kompresi Android ke Server Tanpa Kompresi 16 32.83 7.15 359.41% 32.87 7.15 359.72% 32 44.51 15.29 191.06% 45.33 15.77 187.44% Tambahan waktu 64 56.09 27.59 103.33% 58.09 28.90 101.00% 128 75.62 59.17 27.79% 77.51 63.66 21.76% 256 126.10 115.35 9.32% 175.49 116.02 51.26% Pada Tabel 9 dapat dilihat bahwa persentase tambahan waktu (bukan total waktu) berbanding terbalik dengan ukuran file. Semakin besar file, maka semakin kecil persentase tambahan waktu. 5. Simpulan Berdasarkan hasil penelitian dan pengujian yang telah dilakukan, dapat disimpulkan sebagai berikut: (1) Kompresi LZW dapat dimanfaatkan untuk mengkompresi file-file atau data yang ditransmisikan antara server dengan perangkat mobile; (2) Waktu proses kompresi dan dekompresi akan menambah total waktu yang berbanding terbalik dengan ukuran file yang ditransmisikan. Namun lama waktu proses ini dipengaruhi oleh hardware server maupun perangkat mobile. Semakin kuat kemampuan hardware, maka akan semakin terpangkas waktu proses kompresi dan dekompresi; (3) Keuntungan yang jelas tampak adalah penghematan biaya paket data karena data yang diunduh maupun diunggah menjadi lebih kecil. Saran yang dapat diberikan untuk penelitian lebih lanjut adalah: (1) Perlu dilakukan analisis perbandingan pengiriman data dari berbagai jenis jaringan, seperti LAN, WAN, maupun Internet; (2) Perlu dianalisis pengaruh kompresi pada berbagai jenis tipe data, seperti gambar, audio, dan video. 6. [1]. [2]. [3]. [4]. Daftar Pustaka Rodriguez, A., 2015. RESTful Web services: The basics. http://www.ibm.com/developerworks/library/ws-restful/. Diakses 10 Mei 2016. Nelson, M., 1989. LZW Data Compression. Dr Dobbs J Software Tools 14, 29–37. (doi:10.1146/annurev-genet-102108-134255) Altarawneh, H., & Altarawneh, M., 2011. Data Compression Techniques on Text Files: A Comparison Study. International Journal of Computer Applications 26, 975–8887. Muhammad, A., & Subandi, W., 2012. Studi Perbandingan Kinerja Metode LZW (Lempel-Ziv-Welch) dan Metode Huffman Untuk Kompresi Data Video dan Audio pada Aplikasi Kompresi Data. STMIK GI MDP `11 [5]. [6]. [7]. [8]. Hidayat, H., Pamungkas, T., & Zarman, W., 2015. Implementasi Algoritma Kompresi LZW pada Database Server. Jurnal Komputer dan Informatika 2. Linawati, H. P. P., 2004. Perbandingan Kinerja Algoritma Kompressi Huffman, LZW dan DMC pada Berbagai Tipe File. Universitas Katholik Parahyangan Bandung Hamad, H., Saad, M., & Abed, R., 2010. Performance Evaluation of RESTful Web Services for Mobile Devices. Int. Arab J. e-Technol. 1, 72–78. Wagh, K., & Thool, R., 2012. A comparative study of soap vs rest web services provisioning techniques for mobile host. Journal of Information Engineering and Applications 2, 12–16. `12