selamat datang para pengunjung setia kami

Senin, 15 Desember 2008

Database Tersebar


Dalam sebuah database terdistribusi, database disimpan pada beberapa komputer. Komputer komputer dalam sebuah sistem terdistribusi berhubungan satu sama lain melalui bermacam macam media komunikasi seperti high-speed buses atau telephone line. Sebuah sistem database terdistribusi berisikan sekumpulan site, di mana tiap-tiap site dapat berpartisipasi dalam pengeksekusian transaksi-transaksi yang mengakses data pada satu site atau beberapa site. Tiap tiap site dapat memproses transaksi lokal yaitu sebuah transaksi yang mengakses data pada satu site di mana transaksi telah ditentukan.

Sebuah site juga dapat mengambil bagian dalam mengeksekusi transaksi global yaitu transaksi yang mengakses data pada site yang berbeda di mana transaksi telah ditentukan, atau transaksi yang mengakses data pada beberapa site yang berbeda.

Ada 2 aspek penting dari DDB :

1. Distribusi : data tidak disimpan pada tempat (prosesor) yang sama, sehingga DDB dapat dibedakan dari database tunggal, sentralisasi

2. Korelasi logika : data memiliki property yang berhubungan sehingga DDB dapat dibedakan dari sekumpulan database local atau file yang disimpan pada tempat yang berbeda pada jaringan komputer.

SistemManajemen Database Terdistribusi (Distributed DBMS) merupakan system software yang dapat memelihara DDBS dan transparan ke user. DDBS bukan merupakan kumpulan dari file yang dapat disimpan tersendiri di setiap node dari jaringan komputer. Untuk membentuk DDBS, file tidak seharusnya berelasi secara logika saja, tetapi perlu ada struktur di antara file dan akses data bukan merupakan hal yang khusus.

Keuntungan dari DDBS

1. Otonomi local : karena data didistribusikan, user dapat mengakses dan bekerja dengan data tersebut sehingga memiliki kontrol local.

2. Meningkatkan kinerja : karena setiap site menangani hanya bagian dari DB, CPU dan I/ O tidak seberat seperti DB pusat. Data yang dipakai untuk transaksi disimpan dalam beberapa site, sehingga eksekusi transaksi dapat secara parallel.

3. Meningkatkan reliability/ availability : jika satu site mengalami crash, dapat membuat beberapa site tidak dapat diakses. Jika data direplikasi ke banyak site, kerusakan hubungan komunikasi tidak menjadikan sistem total tidak dapat dioperasikan.

4. Ekonomis : dari biaya komunikasi, baik membagi aplikasi dan memproses secara local di setiap site. Dari biaya komunikasi data, akan lebih murah untuk memelihara sistem komputer dalam satu site dan menyimpan data secara local.

5. Expandibility : akan lebih mudah mengakomodasikan ukuran DB yang semakin besar. Ekspansi dapat dilakukan dengan menambah proses dan kekuatan penyimpanan ke jaringan.

6. Shareability : jika sistem informasi tidak terdistribusi, akan sulit untuk berbagi data dan sumber daya. Sistem DB terdistribusi memungkinkan hal ini.

7.

Kerugian dari DDBS:

1. Kurangnya pengalaman : sistem DB terdistribusi bertujuan umum (generalpurpose) tidak sering digunakan. Yang digunakan adalah sistem prototype yang dibuat untuk satu aplikasi (misal : reservasi pesawat)

2. Kompleksitas : masalah DDBS lebih kompleks dibandingkan dengan manajemen database terpusat

3. Biaya : sistem terdistribusi membutuhkan tambahan hardware (untuk mekanisme komunikasi) sehingga biaya hardware meningkat. Yang terpenting pada biaya ini adalah replikasi. Jika fasilitas komputer dibuat di banyak site, akan memerlukan orang2 yang memelihara fasilitas tersebut

4. Kontrol distribusi : sebelumnya menjadi keuntungan. Tetapi karena distribusi menyebabkan masalah sinkronisasi dan koordinasi, kontrol terdistribusi menjadi kerugian atau kekurangan di masalaha ini.

5. Keamanan : akan mudah mengontrol database yang terpusat. Dalam system database terdistribusi, jaringan membutuhkan keamanan tersendiri.

6. Perubahan yang sulit : tidak ada tool atau metodologi untuk membantu user mengubah database terpusat ke database terdistribusi.

Contoh databases tersebar di Universitas Airlangga

Untuk mewujudkan perpustakaan digital di Perpustakaan Universitas Airlangga, program1software yang digunakan untuk memenejemen koleksi digital (skripsi, thesis, disertasi, dan laporan penelitian) dengan mengadopsi software Ganeslza Digital Library (GDL) versi 4.0 milik KMRT (Knowledge Managenzent Research Group) ITB. GDL ini dibuat dengan bahasa pemrograman PHP dan menggunakan database MySQL serta search engine SWISH-E GDL. Dalam perkembangannya perpustakaan digitaldi Perpustakaan Universitas Airlangga menggunakan istilah ADLN (Airlangga Digital Library Network). Dengan adanya sistem ADLN ini sumber-sumber informasi yang berisi tentang koleksi-koleksi civitas akademika (tesis, disertasi, laporan penelitian, dan skripsi) dapat dimasukkan dalam program ini. Saat ini informasi yang tersaji dalam system ADLN selain berisi deskripsi fisik koleksi pustaka juga berisi abstrak dari koleksi pustaka tersebut. Untuk ke depan isinya tidak hanya abstrak namun akan dikembangkan dalam bentuk full text. Full text yang tersaji dalam sistem ADLN saat ini hanya koleksi tesis, skripsi dan laporan penelitian.

Setelah ADLN dapat diterapkan di Perpustakaan Universitas Airlangga, maka sejak tahun 2004ADLN ini diperkenalkan ke ruang baca fakultas dan lembaga di lingkungan Universitas Airlangga. Dengan terhubungnya system ADLN di ruang baca fakultas dan lembaga di lingkungan Universitas Airlangga, diharapkan pengguna perpustakaan dapat mengakses informasi-informasi yang ada di ruang baca fakultasllembaga maupun sebaliknya di perpustakaan.

Selain ADLN, di Perpustakaan Universitas Airlangga saat ini juga menggunakan program LARIS (Library Autonzation Retrieval I~lfortnation System). Program ini juga mengadopsi program yang open source dari LASer sistem otomasi milik MDLRG (Muhamadiyah Digital library Research Group) UMM. LASer dirancang dengan menggunakan bahasa pemrograman PHP serta menggunakan system database MySQL. LARIS merupakan program sistem otomasi perpustakaan yang digunakan dalam proses pengolahan, penelusuran, layanan sirkulasi, dan absensi staf di Perpustakaan Universitas Airlangga. Dengan adanya program ini maka kendala yang dihadapi oleh Perpustakaan Universitas Airlangga yaitu letak kampus A, B, dan C yang saling berjauhan dapat diatasi. Dengan demikian petugas bagian sirkulasi dapat mengetahui buku yang dipinjam oleh seorang mahasiswa, baik buku tersebut ada di lokasi perpustakaan kampus A, B, maupun C. Bagi pengguna bila sistem ini sudah dioperasikan secara maksimal akan dapat mengetahui status buku, apakah buku tersebut sedang dipinjam atau bisa dipinjam. Sedang absensi pegawai berfungsi untuk mengetahui waktu kehadiran dan pulang seorang pegawai, sehingga dapat dipantau.

Contoh basis data terpusat

Sistem informasi Perpustakaan LAGG (SIP), Sistem ini telah beroperasi lebih dahulu secara stand-alone di perpustakaan UPT-LAGG, dimana antar muka pemakai (user interface) yang digunakan dibuat dari Visual Basic (VB). Sistem dirancang untuk memenuhi seluruh kebutuhan pemakai perpustakaan, petugas maupun pengunjung.

Senin, 01 Desember 2008

Oriented Object Data Base Manajement System 4

IV. KESIMPULAN

A. PERBEDAAN PARADIGMA
Ada perbedaan yang mendasar antara ODBMS dengan system basis data konvensional. RDBMS mempresentasikan data kedalam bentuk fable terformat, dngean kolom menggambarkan atribut dan baris yang berisi record data. Table-tabel itu hanya dapat berisi suatu tipe data yang terbatas dan sederhana seperti teks dan integer sehingga sulit untuk mengani tipe data uang komples seperti multimedia.
Data pada RDBMS dapat diakses secara tabular atau dngan menguraikan table tersebut dengan menguraikan table tesebut dngan berbagai cara untuk menampilkan atau mengolah data untuk berbagai keperluan.
ODBMS mengukung pembuatan dan pemodelan data sebagai suatu objek. Pemprogram atau pemakai dapat menambahkan tipe data baru hanya dengan membuat sebuah objek baru. Data pun diakses atau diolah dengan cara orientasi objek.
Pada pembuatan aplikasi dengan RDBMS, pemrograman harus membuat prosedur untuk memetakan table dngen variable atau objek yang ada pada alikasinua. Dngena ODBMS hal ini tidak diprelukan lagi.

B. KEBUTUHAN APLIKASI
Pada beberapa aplikasi tertentu penggunaan OODB mungkin sangat tepat. Sebaliknua untuk beberapa aplikasi tertentu OODB mungkin akan menjadi hambatan serius.
Bila aplikasi yang dibuat menggunakan tipe data multimedia dan bersigat kompleks, maka OODB adalah pilihan yang tepat. Bayangkan menyimpan data sebuah gambar 3 dimensi dari satu rumah saja. Bila harus disimpan dalam bentu basis data konvensial yan berbentuk tabular. Kita harus membuat field yang beragam, relasi yang rumit dan mungkin menghasiklan sebuah basis data dengan normalisasi yang buruk.
Akan tetapi OODB tidak cocok digunakan untuk menyimpan data transaksi yang besar seoerti data keuangan, kepegawaian dan data transaksi bank. Disini mungkin lebih baik memilih RDB.

Oriented Object Data Base Manajement System 3

III.2.KELEMAHAN OODB TIGHT COUPLING
Istilah tight coupling maksudnya antara aplikasi dengan data sedemikian rupa terikat hingga sulit dipisahkan satu dengan lainnya. Misalnya system database Microsoft Acces dengan bahasa pemprograman MS-Visual Basic mempunyai hubungan loose couple karena kita dapa menggunakan banyak pilihan system basis data untuk program dalam program dalam MS-Visual basic dan juga dapat menggunakan banyak pilihan bahasa pemprograman lainnya untuk mengakses data dalam MS-Acces. Sementara bahasa COBOL dengan databasenya sangat tignt couple karena sulit mengakses basis data COBOL dengan bahasa pemprograman lain.
Sementara tight coupling mempunyai keuntungan karena menyederhanakan program dan desainnya, akan tetapi hal ini memiliki kekurangna karena menghilangkan batas antara basis data dengan aplikasi. Juga menyebabkan suatu kendala baru bila kita ingin bermigrasi ke produk ODBMS yang berbeda atau kembali kedalam RDBMS.

KINERJA YANG MUNGKIN KURANG BAIK
Dari uraian diatas telah dipaparkan bagaimana keperkasaan kinerja OODB terutama dalam hal mengakses data. Tetapi perlu juga disampaikan bahwa pada kondisi tertentu mungkin saja OODB menghasilkan kinerja yang buruk. Misalnya pelaksanaan ad-hoc query yang sangat lemah dalam OODB.
Memang dalam beberapa hal produk ODBMS masih kalah dengan produk RDBMS yang telah lebih lama beredar di pasaran. Dianataranya masalah-masalah fungsionalisasi dan optimalisasi query ini. Hal ini wajar saja mengingat usia OODB yang relative muda.
KURANGNYA DUKUNGAN PLATFORM
Pada dasarnya OODB dapat diterapkan pada bahasa pemprograman berorientasi objek apa saja ,tapi produk ODBMS yang ada sekarang ini kebanyakan masih diorientasiakan untuk digunakan dalam bahasa .net, java dan C++. Disamping itu juga belum banyak tersedia komponen untuk pengaksesan OODB untuk bahasa pemprograman lainnya.
Walaupun OODB dapat diimplemetnasikan dalam java yang sifatnya platform independent, belum tentu pada platform yang kita miliki mendukung implemetnasi java. Selain itu java juga memiliki aneka nuansa dan keanehan-keanehan bila diterapkan pada lingkungan berbeda.

SULIT BERMIGRASI
Cara penyimpanan dan pengabilan data pada OODB sangat berbeda dengan RDB. Demikian juga cara pengaksesannya. Oleh karena itu, bila kita bermigrasi ke OODB maka kita harus berkomitmen untuk terus menggunakan OODB. Setelah mengimplementasikan OODB, sangat sulit untuk kembali ke RDB.

KURANG SDM
Mencari seseorang yang memiliki spesifik pada salah satu ODBMS jauh lebih sulit daripada mencari seseorang yang meiliki pemahaman RDB dan penguasaan salahsatu database seperti MS-Access, MS-SQL server Oracle dan lain-lain. Lebih sulit lagi mencari seorang yang benar-benar menguasai administrasi system OODB.
QUERY YANG KOMPLEKS
Pada masing-masing ODBMS kadang memiliki cara query yang berbeda. Selain itu kadang kita tidak mengakses data dengan cara memanggil ObjekID-nya saja, tetapi kadang berdasarkan range, pola dan berangam criteria lain yang mungkin kelihatannya tidak berhubungan. Ini berakibat penggunaan OODB membutuhkan kemampuan logika mendalam.

Oriented Object Data Base Manajement System 2

KELEBIHAN DAN KELEMAHAN OODB :

III.1.KELEBIHAN OODB

A. DESAIN BASIS DATA YANG BAGUS
Pada suatu system yang dinamis pemprogrman sering harus menghabiskan banyak waktu dan tenaga untuk menagnani masalah data. Dengan OODB, masalah ini tidak hilang, tetapi dapat dikurangi. Karena dengan orientasi objek maka proses penyimpanan dan pengambilan data jauh lebih sederhana.
Dengan OOP, program dan data teruntegrasi dengan baik. Dengan paradigma orientasi objek dapat menyederhanakan application modeling, kebutuhan design tool dan visualisasi system serta desainnya. Dengan OODB tidak hanya kita mendapatkan persistensi data tai keseluruhan objek basis data, bahkan termasuk implemented behavior-nya. Juga kita dapat memanggil suatu method dari pbjek tertentu pada basis data di server sehingga sistribusi aplikasinya lebih mudah.
Dalam RDB untuk melaksanakan hal ini kita harus memasukkan stored procedure atau suatu komponen objek. Sehingga arsitektur dari aplikasi jadi lebih rumit dan membutuhkan keahlian pemprograman lebih lanjut.
B. PENYEDERHANAAN PEMBUATAN APLIKASI
Dengan OODB kita dapat menyederhanakan bahasa pemprograman dan implementasi teknologi yang dibutuhkan . terkandang kita tidak menyadari bahwa suatu proyek menjadi lebih tinggi biayanya karena banyak factor teknis seperti penggunaan beberapa tool, bahasa program dan lingkungan dari aplikasi yang berbeda-beda.
Dengan OODB maka kemampuan teknis yang dibutuhkan menjadi berkurang karena pemprograman cukup menguasai konsep orientasi objek (object oriented ) dengan sedikit tambahan mengenai koneksi ke basis data. Tentunya pemrogram harus juga menguasai bahasa pemprograman berorientasi objek seperti .net dan java.
Selain itu program tidanggal memfokuskan pada persistensi obyek. Program tidak perlu lagi menguraikan objke ke dalam table memikirkan relasi antar table , dan sebaliknya.
C. KINERJA YANG TANGGUH
Pada produk ODBMS uang tepat dan sesuai dengan aplikasi yang dibuat, OODB dapat meningkatkan kinerja aplikasi dnegna peningkatan yang tinggi.
Seperti diuraikan di atas, dengan RDB seorang pemprogram harus menghabiskan waktu untuk memetakan data degnan objek, menguraikan table-tabel kedalam objek dan sebagainya. Terkadang hai ini mencapai sepertiga atau bahkan separuh dari watu pembuatan program itu sendiri. Hal ini menyebabkan juga kinterja program lebih lambat kearena harus melaksanakan pemetaan objek tesebut. Belum lagi program harus melaksanakan beberapa query yang makin memperlambat kinerja program tersebut.
Dengan OODB tentu kinerja program dapat lebih baik karena hal-hal diatas tidak lagi diperlukan. Karena program langsung mengakses data dengan objeknya.
Pada beberapa produk OODBMS bahkan dimunkginkan adanya client chaching. Bayangkna kecepatan yag dapat dihasilkan bila program hanya mengakses cache dari basis data yang sudah ada di client.

Oriented Object Data Base Manajement System

I. SEKILAS TENTANG ORIENTED OBJEK DATABASE (OODB)
Oriented Object Database (OODB) mengintegrasikan kemampuan basis data (DBMS) dnegan kemampuan pemprograman berorientasi objek (OOP).
Sebuah objext oriented management system (ODBMS) membuat objek sebuah basis data terlihat seperti objek pemprograman pada beberapa bahasa pemprograman OOP.
OODB atau ODBMS dirancang untuk bekerja pada bahasa pemprograman OOP seperti Java, .net dan lain-lain. Bila kita ingin menyimpan objek pada program jaa atau .net ke dalam sebuah system basis data, kita dapa menggunakan basis data yang berorientasi kepada obyek (ODBMS).
Letak perbedaan utama ODBMS dengan RDBMS adalah pada RDBMS data direpresentasikan ke dalam bentuk table-tabel dengan kolom yang mewakili atribut data, dan beris record data itu sendiri. Sedangkan dalam ODBMS, data direpresentasikan sebagai sebuah objek, baik dalam hal pengaksesannya maupun dalam hal pemodelannya.

I.1.PERKEMBANGAN ODBMS
Pada saat diperkenalkan pertamakali, ODBMS diberikan akan segera menjadi teknologi utama dibidang basis data menggantikan Sistem Basis Data Relasional (RDBMS). Terutama karena RDBMS tidak dirancang untuk menangani tipe data multimedia. Kenyataan pada saat ini ramalan tersebut tidak mengenai sasaran. Saat ini terbutki RDBMS masih jauh lebih banyak dipergunakan. OBDMS hanya mendapatkan sebagian kecicl dari pasar perangkat lunak basisdata. Penjualan RDBMS mencapai 50 kali lipat penjualan ODBMS. Disisi lain pembuat RDBMS menambahkan kemampuan penggunaan objek ke dalam system buatannya menjadi objek relational database management system(ORDBMS).

II.2. BERBAGAI PENDAPAT TENTANG ODBMS
Banyak pihak yang meragukan perkembagan ODBMS diantaranya tersurat pada pendapat yang dikemukakan oleh Michael Stonebraker, CTO dari Informix yang mengeluarkan produk ORDBMS menyatakan bahwa “ODBMS hanya memiliki pangsa pasar kecil yang tidak memeiliki masa depan yang luas dan ORDBMS akan menggeser posisi OBMS dalam waktu hanya 5 tahun saja.”
Akan tetapi dilain pihak, optimisme akan ORDBMS tetap besar, diantaranya mengutip pendapat Rick Cattel dari Sun Mycrosystems yaitu “perkembangan ODBMS masih cukup baik, walaupun skala penjualannya yang tidak besar, akan tetapi ODBMS akan tetap dipergunakan terutama pada bidang CAD (computer-aided design) dan telekomunikasi yang tidak cocok untuk menggunakan RDBMS.”
OODB sangat banyak digunakan dalam bidang CAD/CAM dan Sistem Cerdas Terapan (AI) karena ODBMS mendukung tipe data yang kompleks dan relasi yang sulit. Juga OODB secara efisien mendukung tipe data multimedia yang banyak digunakan dalam aplikasi CAD/CAM.
Pada kesempatan lain Cattell dan Sun Microsystem menyatakan bahwa “OODB juga digunakan pada system pendataan pasiaen rumah sakit karena bagi staf rumah sakit OODB lebih mudah dipergunakan daripada basis data relasional.”
Akmal Chaudhri, seorang ahli system basis data dan doctor di The City University, London diantaranya J.P.morgan, Chase Manhattan dan Citibank menggunakan teknologi ODBMS untuk pemodelan instrument keuangan seperti obligasi.” Hal ini disebabkan teknologi ini membantu mengolah instrument yang dibutuhkan dalam pemodelan secara efektif. Teknologi berorientasi-objek juga mendukung mekanisme pewarisan (inheritance) untuk pemodelan instrument berikutnya dengan cepat dan mudah.
Juga menurut Akmal Chaudhri,”jika kita ingin memodelkan sebuah Boeing 747 dengan ODBMS, maka hubungan antara komponen pesawat dikelola langsung oleh system basis data. Sedangkan jika kita menggunakan RDBMS, kita harus membagi-bagi pesawat tersebut dalam table-tabel dan menghubungkan lagi table-tabel tersebut bila kita ingin membangun pesawat tersebut.”