Sinkronisasi Proses Paralel Prof. Dr. Opim S. Sitompul, M.Si

b. Penyebaran dan pengurangan beban jaringan, jika pengumpul dijalankan pada lokasi yang secara geografis berjauhan dan masing-masing mengumpulkan metadata pada lokasi geografisnya masing-masing.

2.5 Sinkronisasi Proses Paralel

Sumber daya yang dimiliki oleh komputer tidak dapat dimanfaatkan secara maksimal apabila hanya menggunakan satu proses untuk melakukan pengumpulan metadata. Solusi yang dapat diterapkan untuk memanfaatkan sumber daya yang belum terpakai adalah dengan menggunakan proses paralel. Pada bahasa pemrograman java, proses paralel diterapkan menggunakan class Thread. Dengan menggunakan proses paralel pada bahasa java dapat menimbulkan sebuah masalah baru. Akses yang bersamaan terhadap satu objek tertentu memungkinkan untuk terjadinya kesalahan yaitu gangguan pada thread dan konsistensi memori. Untuk menghindari kesalahan-kesalahan ini diperlukan sinkronisasi pada objek agar dapat menerapkan satu akses khusus pada satu waktu mutual exclusive access pada bagian yang kritis diantara dua proses. Sinkronisasi diperlukan hanya untuk objek yang nilainya dapat berubah. Objek yang bersifat hanya dapat dibaca tidak perlu menerapkan sinkronisasi. Penerapan sinkronisasi pada bahasa java dilakukan dengan menggunakan kata kunci synchronized pada objek atau fungsi yang akan disinkronisasi. Sinkronisasi pada bahasa java memastikan adanya satu akses khusus pada satu waktu terhadap sumber daya yang digunakan bersama dan mencegah ketidaksesuaian data. Universitas Sumatera Utara Penggunaan sinkronisasi juga mencegah kompiler melakukan pengurutan ulang yang dapat menyebabkan terjadinya masalah pada proses yang dijalankan bersama-sama. Sinkronisasi yang diterapkan sudah termasuk fitur penguncian, yaitu mencegah proses yang baru mengubah data pada memori pada saat ada proses yang sedang menggunakannya dan membuka akses setelah penggunaan memori selesai. Hal ini dapat mencegah ketidaksesuaian pembacaan memori. Universitas Sumatera Utara 26 BAB 3 METODE PENELITIAN Penelitian ini menggunakan eksperimen laboratorium yaitu mengumpulkan metadata yang diperoleh dari masing-masing penyedia karya ilmiah ke dalam berkas XML. Proses pengumpulan metadata dilakukan dengan dua cara yaitu menggunakan sistem pengumpul metadata tunggal dan sistem pengumpul metadata terdistribusi. Data yang direkam adalah jumlah metadata yang terkumpul dalam selang waktu 10 jam. Sesuai dengan tujuan penelitian, setelah data terkumpul akan dilakukan analisa mengenai peningkatan penggunaan pengumpul metadata terdistribusi terhadap pengumpul metadata tunggal. Arsitektur pengumpul metadata terdistribusi yang telah dirancang diilustrasikan pada Gambar 3.1. Gambar 3.1 Hasil Rancangan Sistem Pengumpulan Metadata Terdistribusi Universitas Sumatera Utara

3.1 Sistem Pengumpul Metadata Tunggal