BAB 1 PENDAHULUAN

advertisement
BAB 1
PENDAHULUAN
1.1
Latar Belakang
Perkembangan teknologi saat ini membuat kebutuhan suatu sistem
penyimpanan data yang baik semakin meningkat. Dahulu data disimpan dalam
bentuk file-file yang terpisah sehingga mengakibatkan kesulitan saat mencari suatu
data. Oleh karena itu diciptakan konsep penyimpanan data dalam bentuk basis
data. Basis data adalah kumpulan data – data yang berhubungan yang dibutuhkan
oleh suatu organisasi (Connolly, 2002, p 14). Kemudian, diciptakan pula sebuah
konsep model data relasional yang digunakan pada basis data relasional yang
menyimpan data di dalam relasi-relasi.
Untuk memudahkan pengguna mendefinisikan, membuat, memelihara, dan
mengontrol akses ke basis data, dibuatlah suatu sistem piranti lunak yang
dinamakan Database Management System (DBMS). DBMS yang digunakan untuk
basis data relasional disebut Relational Database Management System (RDBMS).
Suatu DBMS yang baik, selain dapat menyimpan, menampilkan, dan
memanipulasi data, juga harus mempunyai kemampuan untuk backup dan restore.
Backup adalah suatu proses mengambil seluruh atau sebagian data dari basis data
dan menyimpannya dalam suatu tempat penyimpanan yang lain. Sedangkan
restore adalah proses mengembalikan basis data yang telah dibackup sebelumnya
ke dalam sistem basis data. Restore dibedakan menjadi dua macam, restore
1
2
transaksi dan restore secara fisik. Skripsi ini membahas hanya mengenai restore
secara fisik.
Hal ini sangatlah penting, sebab seringkali terjadi hal-hal yang berada di luar
dugaan seperti kerusakan piranti lunak dan perangkat keras, tindakan perusakan
oleh manusia, bencana alam, dan lain-lain. Jika hal-hal tersebut terjadi dan telah
dilakukan backup sebelumnya, maka dapat diatasi dengan cara restore.
Backup dan restore basis data memiliki peran yang sangat penting dalam
sebuah
DBMS,
sehingga
dilakukan
berbagai
macam
penelitian
untuk
mengembangkan dan meningkatkan kinerja proses backup dan restore tersebut.
Salah satu penelitian tersebut adalah penelitian yang dilakukan oleh IBM yang
berjudul Coordinated Backup and Recovery between Database Management
Systems and File Systems. Penelitian ini membahas tentang cara backup sebuah
basis data ke dalam sebuah server file. Hal ini dilakukan dengan cara membuat
hubungan (linkage) antara data di dalam basis data dengan file yang ada di server
file. Proses backup ini dijalankan secara asynchronous sehingga proses transaksi
terhadap
basis
data
masih
dapat
dijalankan.
Penelitian
tersebut
telah
diimplementasikan pada salah satu produk IBM yaitu IBM DB2/DataLinks.
Dengan adanya penelitian-penelitian yang berupaya untuk mengembangkan
kinerja dari backup dan restore itulah, maka topik backup dan restore sistem basis
data ini menjadi penting dan sangat berguna bagi kelangsungan kinerja DBMS.
Banyaknya bahaya dan ancaman baik yang disengaja ataupun yang tidak
disengaja, membuat peranan dari proses backup dan restore menjadi semakin
signifikan.
3
1.2
Ruang Lingkup
Pada penelitian ini, hanya akan dijelaskan mengenai perancangan dan
implementasi pembuatan komponen dari suatu RDBMS yang berfungsi untuk
membackup basis data atau log transaksinya dan untuk merestore kembali basis
data beserta log transaksinya tersebut.
Format data dari basis data yang akan dibackup adalah dalam bentuk XML.
Proses backup akan melakukan kompresi terhadap data tersebut dengan
menggunakan algoritma XMill, LZ77, dan Huffman. Hasil kompresi data
disimpan dalam bentuk binari sesuai dengan keluaran dari algoritma Huffman.
Nantinya data binari ini akan dapat direstore kembali dengan proses dekompresi
menjadi data XML untuk mengembalikan basis data.
Basis data yang digunakan dalam penelitian ini adalah basis data yang
bersifat relasional. Sedangkan RDBMS yang digunakan adalah RDBMS baru yang
sedang dikembangkan. Nantinya modul backup dan restore basis data yang dibuat
akan melengkapi RDBMS tersebut sehingga menjadi sebuah RDBMS yang
lengkap.
Modul backup dan restore basis data ini dibatasi hanya berjalan untuk sistem
operasi Windows. Hal ini dikarenakan pembuatan aplikasi menggunakan bahasa
Visual Basic 2005 dan Visual C# 2005 yang sampai saat ini hanya bisa berjalan di
atas sistem operasi Windows.
Agar proses backup dan restore dapat berjalan, diperlukan pengaturan
jalannya transaksi dari basis data yang disebut dengan concurrency. Modul
concurrency ini telah tersedia dalam RDBMS yang akan digunakan, sehingga
dapat langsung dipakai untuk proses backup dan restore. Modul ini digunakan
4
untuk menunda semua transaksi yang datang ketika proses backup atau restore
terjadi pada basis data. Setelah proses restore selesai, maka sistem melakukan
commit terhadap semua transaksi yang belum dicommit. Modul yang digunakan
untuk melakukan proses commit tersebut juga telah tersedia dalam RDBMS.
Berikut ini adalah gambaran umum kinerja modul yang dibuat dalam skripsi ini.
Cek
Concurrency
File Fisik
Basis Data
(XML)
Kompresi
Data
File Backup
Proses Backup Basis Data
Cek
Concurrency
File Log
Transaksi
(XML)
Kompresi
Data
File Backup
Proses Backup Log Transaksi
Gambar 1.1 Kinerja Proses Aplikasi Backup
Cek
Concurrency
File Fisik
Basis Data
(XML)
Dekompresi
Data
File Backup
Proses Restore Basis Data
Cek
Concurrency
File Backup
Dekompresi
Data
File Log
Transaksi
(XML)
Proses Restore Log Transaksi
Gambar 1.2 Kinerja Proses Aplikasi Restore
Commit
Transaction
5
1.3
Tujuan dan Manfaat Penelitian
Tujuan dari penelitian ini adalah merancang sebuah alat bantu backup dan
restore untuk suatu RDBMS yang berbasis XML. Rancangan ini akan
diimplementasikan pada sebuah working prototype yang memiliki kemampuan
untuk membackup data dan log dari sebuah basis data. File backup yang
dihasilkan harus berukuran lebih kecil untuk mengefisienkan penggunaan tempat
penyimpanan data. Selain memiliki kemampuan backup, working prototype ini
juga memiliki kemampuan untuk merestore data dan log dari file backup yang
telah dibuat sebelumnya. Working prototype ini diharapkan dapat menciptakan
hasil backup dengan ukuran file yang lebih kecil dan proses backup dan restore
yang cepat.
Manfaat dari penelitian ini adalah untuk melengkapi RDBMS yang
disebutkan di atas sehingga memiliki rancangan alat bantu backup dan restore
yang dapat membuat salinan data dan kemudian dapat menggunakan salinan data
tersebut untuk mengembalikan keadaan basis data seperti semula jika terjadi
kerusakan pada basis data.
1.4
Metodologi Penelitian
Dalam penulisan skripsi ini digunakan teknik penelitian sebagai berikut :
•
Studi literatur
Mempelajari beberapa literatur dari buku dan internet yang
berhubungan dengan backup dan restore RDBMS serta algoritma kompresi
data khususnya untuk data dalam format XML.
6
•
Analisis kebutuhan sistem
Menganalisis kebutuhan dari komponen backup dan restore dengan
mempelajari dari RDBMS yang sudah ada dan buku-buku yang relevan.
Kemudian analisis ini digambarkan menggunakan use case.
•
Perancangan aplikasi untuk penyimpanan data
Dalam perancangan aplikasi ini termasuk perancangan untuk input
yang diperlukan, algoritma (proses) yang akan dilakukan, dan output yang
dihasilkan dengan menggunakan model diagram UML (Unified Modelling
Language).
•
Implementasi Rancangan dan Pembuatan Program
Menggunakan hasil perancangan sebagai dasar pembuatan working
prototype dan mengimplementasikannya ke dalam RDBMS.
•
Evaluasi
Menguji working prototype yang telah dibuat dan menggabungkan
dengan modul-modul lain pada RDBMS sehingga terbentuk RDBMS yang
lengkap dan berjalan dengan baik.
1.5 Sistematika Penulisan
Sistematika penulisan yang digunakan dalam skripsi PERANCANGAN
ALAT BANTU BACKUP DAN RESTORE MENGGUNAKAN ALGORITMA
KOMPRESI XMILL, LZ77, DAN HUFFMAN PADA RDBMS BERBASIS
XML ini dibagi menjadi lima bab yang terdiri dari :
7
BAB 1: PENDAHULUAN
Bab ini berisi penjelasan latar belakang penelitian yang menjadi dasar
pemilihan judul, termasuk tujuan dan manfaat yang akan diperoleh dari
penulisan skripsi ini, ruang lingkup penulisan, dan metodologi penelitian yang
akan digunakan serta sistematika penulisan.
BAB 2: LANDASAN TEORI
Dalam bab ini akan diuraikan semua teori-teori yang relevan, yang
digunakan sebagai dasar untuk merancang aplikasi.
BAB 3: PERANCANGAN SISTEM
Pada bab ini berisi perancangan backup dan restore basis data dengan
menggunakan algoritma kompresi XMill, LZ77, dan Huffman.
BAB 4: IMPLEMENTASI DAN EVALUASI
Bab ini berisi penjelasan mengenai cara penggunaan aplikasi backup dan
restore basis data, serta berbagai pengujian dan evaluasi terhadap kinerja
aplikasi backup dan restore.
BAB 5: SIMPULAN DAN SARAN
Pada bab ini akan disimpulkan mengenai hasil uraian pembahasan yang
ada pada bab-bab sebelumnya dan akan diberikan saran-saran perbaikan
terhadap aplikasi yang sudah dibuat.
Download