Senin, 28 April 2014

PERBANDINGAN KINERJA BASIS DATA RELASIONALDENGAN BASIS DATA BERORIENTASI- OBJEK STUDI KASUS: APLIKASI JPETSTORE

                Saat ini banyak pengembangan aplikasi menggunakan bahasa program yang berorientasi objek, seperti Java, C# dan C++. Pada bahasa pemrogram tersebut, setiap data dikelola dalam bentuk satu kesatuan struktur yang secara konseptual, hampir serupa dengan data pada situasi sebenarnya. Berdasarkan statistik, aplikasi yang dikembangkan dengan bahasa pemrograman berorientasi objek, umumnya menggunakan Basis Data Relasional (BDR) untuk menyimpan data dalam jangka panjang.
 
                Pada sebuah BDR, data disimpan dalam sel-sel dari tabel. Sel-sel tersebut terbentuk dari kolom dan baris. Setiap sel menyimpan tipe-tipe data tertentu yang didukung oleh BDR yang bersangkutan. Proses penyimpanan dan pengambilan dilakukan oleh aplikasi melalui proses konversi dari data berorientasi objek (selanjutnya disebut objek data) menjadi baris dengan sel-sel dari kolom yang sesuai pada sebuah tabel.

                 Sejak pertengahan 1980-an berkembang teknologi bernama Basis Data Berorientasi Objek [1]. Basis Data Berorientasi Objek (BDBO) adalah sistem basis data yang menggunakan model data dalam bentuk yang digunakan bahasa pemrograman berorientasi objek [2]. Aplikasi yang menggunakan BDBO menyimpan data dan mengambil data dalam bentuk asli sesuai dengan format yang digunakan oleh aplikasi. Karena sebuah BDBO menyimpan dan mengambil data dalam format yang digunakan aplikasi, BDBO tidak perlu melakukan  pemetaan objek data menjadi sel-sel dalam tabel. Kesulitan dalam pemetaan struktur data berorientasi objek menjadi sel-sel tabel pada BDR dikenal dengan istilah Impedance Mismatch.

                 Penggunaan BDBO cukup beragam, mulai dari embedded system sampai  sistem informasi manajemen. Walaupun demikian, penggunaan BDBO tidak sebanyak penggunaan basis data relasional. Proyek aplikasi yang berorientasi objek seperti Java atau C#, jauh lebih banyak menggunakan Basis Data Relasional dibandingkan menggunakan (BDBO).

                Menurut Leavitt dalam [3], sedikitnya penggunaan BDBO disebabkan belum adanya standarisasi dalam teknologi BDBO, dan dominasi vendor BDR dalam pasar basis data. Standar yang dimaksud adalah standar konsep-konsep yang digunakan untuk pemodelan, standar perancangan skema, standar mekanisme akses data, dan standar lain yang mencakup fitur minimal dari sebuah BDBO.

                Perbedaan standar ini nampak jelas jika dibandingkan dengan standar yang ada pada basis data relasional. Basis data relasional saat ini menggunakan konsep tabel, kolom, baris. Metodologi perancangan skema pada BDR juga sudah mapan, yang di mana prosesnya terdiri dari 3 tahap, yaitu pemodelan konseptual, pemodelan logikal dan pemodelan fisik. Hampir setiap BDR mendukung konsep tabel dan metodologi perancangan 3 tahap tadi.

                Kelemahan BDBO tentang tidak adanya standar, kurangnya kinerja dan  ketidak-mampuan menangani skala besar, tidak memiliki landasan yang kuat [4]. Ada standar pemodelan seperti yang ditetapkan oleh ODMG 3.0 dari Object Management Group (OMG). Walaupun demikian ada konsep-konsep lain seperti yang diajukan oleh Kim [1]. Produsen produk BDBO sendiri memiliki pendapat yang berbeda mengenai konsep-konsep yang didukung, sehingga fitur-fitur yang didukung oleh sebuah produk BDBO berbeda antara satu produk dengan produk lainnya.

                Dalam perancangan skema data, Blaha  menyatakan perancangan skema data pada BDBO perlu memperhatikan integritas data, seperti pada Basis Data Relasional (BDR) [5]. Contoh dari integritas data misalnya adalah nilai unik sebuah variabel, integritas referensi (Referential Integrity) sebuah objek ke objek lain. Untuk itu diperlukan perencanaan tambahan mengenai skema data. 

DAFTAR PUSTAKA
[1] Kim, Won. Introduction to Object-Oriented Databases. Cambridge: MIT Press, 1992.
[2] Wikipedia. Object Database. Web. 16 January 2009. <http://en.wikipedia.org/wiki/Object_ database>. 
[3] Leavitt, Neal. ―Whatever Happened to Object- oriented Database‖. Leavitt Communication, August 2000. Web. 25 January 2009. <http://www.leavcom.com/db_08_00.htm>. 
[4] Boyko, Y., Simon Galperin, Alexander Stepanov. ―Should we use Object Database Management Systems‖. Dept. Computer Science, Drexel University, 2007. Web. 25 January 2009. <https://www.cs.drexel.edu/ ~bmitchel/course/cs575/WorkshopF0708/2T5Pape r.pdf>. 

[5] Blaha, Michael. ―Referential Integrity is Important for Databases‖. Modelsoft Consulting Group, 17  November 2005. Web. 12 January 2009. <http://www.odbms.org/ experts.aspx#article5>.