kelebihan dan kekurangan dari perangkat lunak yang menangani semua pengaksesan database

Beberapa software atau perangkat lunak DBMS yang sering digunakan dalam aplikasi program antara lain :

1. Ms. ACCESS
Ms. Access adalah Database Storage Engine buatan dari Microsoft yang menempel di produk Microsoft Office. Untuk instalasinya membutuhkan space di hardisk yang lumayan gedhe. Engine ini hanya bisa dijalankan di lingkup sistem operasi Windows saja. Kapasitas datanya sangat terbatas sehingga hanya cocok jika diaplikasikan untuk small system ato home bisnis. Untuk keamananya tidak begitu bisa dihandalkan walaupun sudah mengenal konsep relationship.

Kelebihan dan Kekurangan Ms. Access :

Microsoft Access kurang begitu bagus jika diakses melalui jaringan sehingga aplikasi-aplikasi yang digunakan oleh banyak pengguna cenderung menggunakan solusi sistem manajemen basis data yang bersifat klien atau server.
Salah satu keunggulan Microsoft Access dilihat dari perspektif programmer adalah kompatibilitasnya dengan bahasa pemrograman Structured Query Language (SQL). Para pengguna dapat mencampurkan dan menggunakan kedua jenis bahasa tersebut (VBA dan Macro) untuk memprogram form dan logika dan juga untuk mengaplikasikan konsep berorientasi objek.

2. MY SQL
MySQL dikembangkan oleh sebuah perusahaan Swedia bernama MySQL AB, yang kala itu bernama TcX DataKonsult AB, sejak sekitar 1994–1995, meski cikal bakal kodenya bisa disebut sudah ada sejak 1979. Tujuan mula-mula TcX membuat MySQL pada waktu itu juga memang untuk mengembangkan aplikasi Web untuk klien—TcX adalah perusahaan pengembang software dan konsultan database. Kala itu Michael Widenius, atau “Monty”, pengembang satu-satunya di TcX, memiliki aplikasi UNIREG dan rutin ISAM yang dibuat sendiri dan sedang mencari antarmuka SQL untuk ditempelkan di atasnya. Mula-mula TcX memakai mSQL, atau “mini SQL” (akan kita kunjungi nanti). Barangkali mSQL adalah satu-satunya kode database open source yang tersedia dan cukup sederhana saat itu, meskipun sudah ada Postgres (juga akan dibahas sesaat lagi). Namun ternyata, menurut Monty, mSQL tidaklah cukup cepat maupun fleksibel. Versi pertama mSQL bahkan tidak memiliki indeks. Setelah mencoba menghubungi David Hughes—pembuat mSQL—dan ternyata mengetahui bahwa David tengah sibuk mengembangkan versi dua, maka keputusan yang diambil Monty yaitu membuat sendiri mesin SQL yang antarmukanya mirip dengan mSQL tapi memiliki kemampuan yang lebih sesuai kebutuhan. Lahirlah MySQL.
Nama MySQL (baca: mai és kju él) tidak jelas diambil dari mana. Ada yang bilang ini diambil dari huruf pertama dan terakhir nama panggilan Michael Widenius, Monty. Ada lagi yang bilang kata My diambil dari nama putri Monty, yang memang diberi nama My—karena Monty memang aslinya seorang Finlandia. Tapi sebetulnya kalau source code MySQL dilirik, prefiks my memang sudah terbubuhi di mana-mana—prefiks ini sering menjadi prefiks umum kalau seseorang membuat kode kustom tersendiri untuk sesuatu. Kalau Anda betul-betul penasaran mana yang benar, mungkin bisa bertanya langsung kepada Monty.
Kalau di seri 3.22 MySQL mulai diadopsi banyak orang dan meningkat populasi penggunanya, maka di seri 3.23 dan 4.0-lah terjadi banyak peningkatan dari sisi teknologi. Ini tidak terlepas dari tuntutan pemakai yang semakin mengandalkan MySQL, namun membutuhkan fitur-fitur yang lebih banyak lagi. Sejak dari sebelum 3.22 dan awal 3.23, MySQL terus dikritik praktisi database maupun penggunanya mengenai tidak adanya fasilitas transaksi (COMMIT dan ROLLBACK). Pengembang MySQL menyarankan penggunaan LOCK TABLES untuk mengatasi masalah update atomik, tapi ini tentu saja bukan pengganti transaksi, karena tidak adanya kemampuan membatalkan efek perubahan di tengah jalan. Di seri 3.23-lah MySQL mulai memiliki kemampuan transaksi, row-level locking, dan foreign key constraint. Meski beberapa fasilitas popular lainnya masih belum ada—seperti subselek, view, dan trigger—ini sudah direncanakan dan akan mulai ditambahkan di seri 4.x.

Seri 3.23. Di seri 3.23 MySQL menambahkan tiga jenis tabel baru: pertama MyISAM, yang sampai sekarang menjadi tipe tabel default; kedua BerkeleyDB, yang pertama kali menambahkan kemampuan transaksi pada MySQL; dan ketiga InnoDB, primadona baru yang potensial. MySQL memang memiliki arsitektur yang memungkinkan tiap tabel ditangani oleh handler yang berbeda. Handler ini menerima perintah akses dan modifikasi dari lapisan MySQL yang lebih atas dan mewujudkannya secara fisik dari dan ke disk. Tabel tipe MyISAM merupakan tabel yang lebih cepat dari tabel ISAM, karena pola aksesnya telah disesuaikan dan dioptimasi untuk pola akses SQL. Selain itu MyISAM mendukung indeks pada kolom bertipe TEXT dan BLOB, serta mendukung tipe indeks FULLTEXT. Tabel tipe BerkeleyDB, atau BDB, menggunakan database embedded BerkeleyDB yang sudah terkenal itu untuk memanfaatkan kemampuan transaksinya. Sejak memiliki handler BDB, MySQL naik statusnya menjadi database yang ACID compliant, sesuatu yang amat penting bagi keamanan data. Namun BerkeleyDB tidaklah terlalu optimal untuk sebuah database SQL, sehingga akhirnya sebuah perusahaan Finlandia Innobase Oy membuat handler table baru bagi MySQL yang menggunakan database embedded InnoDB-nya—kala itu bernama Innobase, namun berganti nama karena masalah trademark produk Innobase yang sudah ada sebelumnya.
InnoDB membuat MySQL menarik karena peningkatan kecepatan dan kemampuan tambahan yang dimungkinkannya. Pertama-tama, InnoDB memiliki fitur transaksi dengan sistem multiversi. Artinya, jika sebuah klien memulai transaksi, maka perubahan yang dilakukan klien tersebut tidak akan terlihat oleh klien lain.

Kelebihan :
– Dapat bekerja di beberapa platform yang berbeda, seperti LINUX, Windows, MacOS dll.
– Dapat dikoneksikan pada bahasa C, C++, Java, Perl, PHP dan Python.
– Memiliki lebih banyak type data seperti : signed/unsigned integer yang memiliki panjang data sebesar 1,2,3,4 dan 8 byte, FLOAT, DOUBLE, CHAR, VARCHAR, TEXT, BLOB, DATE, TIME, DATETIME, TIMESTAMP, YEAR, SET dan tipe ENUM.
-Mendukung penuh terhadap kalimat SQL GROUP BY dan ORDER BY. Mendukung terhadap fungsi penuh ( COUNT ( ),COUNT (DISTINCT), AVG ( ), STD ( ), SUM ( ), MAX ( ) AND MIN ( ) ).
– Mendukung terhadap LEFT OUTHER JOIN dengan ANSI SQL dan sintak ODBC.
– Mendukung ODBC for Windows 95 (dengan source program). Semua fungsi ODBC 2.5 dan sebagainya. Sebagai contoh kita dapat menggunakan Access untuk connect ke MySQL server.
– Menggunakn GNU automake, autoconf, dan LIBTOOL untuk portabilitas.
– Kita dapat menggabungkan beberapa table dari database yang berbeda dalam query yang sama.
-Ditulis dengan menggunakan bahasa C dan C++. Diuji oleh compiler yang sangat jauh berbeda.
-Privilege (hak) dan password sangat fleksibel dan aman serta mengujinkan ‘Host-Based’ Verifikasi.
-Open Source dan gratis didownload.
Lebih hemat resource memory (dibandingkan database lain).

Kekurangan :
Untuk koneksi ke bahasa pemrograman visual seperti visual basic, delphi, dan foxpro, mysql kurang support, karena koneksi ini menyebabkan field yang dibaca harus sesuai dengan koneksi dari program visual tersebut, dan ini yang menyebabkan mysql jarang dipakai dalam program visual.
Data yang ditangani belum begitu besar.

3. SQL SERVER

Microsoft SQL Server adalah sebuah sistem manajemen basis data relasional (RDBMS) produk Microsoft. Bahasa query utamanya adalah Transact-SQL yang merupakan implementasi dari SQL standar ANSI/ISO yang digunakan oleh Microsoft dan Sybase. Umumnya SQL Server digunakan di dunia bisnis yang memiliki basis data berskala kecil sampai dengan menengah, tetapi kemudian berkembang dengan digunakannya SQL Server pada basis data besar.

Microsoft SQL Server dan Sybase/ASE dapat berkomunikasi lewat jaringan dengan menggunakan protokol TDS(Tabular Data Stream). Selain dari itu, Microsoft SQL Server juga mendukung ODBC(Open Database Connectivity), dan mempunyai driver JDBC untuk bahasa pemrograman Java. Fitur yang lain dari SQL Server ini adalah kemampuannya untuk membuat basis data mirroring dan clustering. Pada versi sebelumnya, MS SQL Server 2000 terserang oleh cacing komputer SQL Slammer yang mengakibatkan kelambatan akses Internet pada tanggal 25 Januari 2003.

Database Storage Engine buatan Microsoft. Engine ini berbayar, akan tetapi Microsoft juga menyediakan yang versi gratisan (Express Edition). Karena buatan dari Bill Gates maka Engine ini hanya bisa dijalankan di sistem operasi Windows saja (monoplatform). Keamanan datanya sudah lumayan. Kapasitas penyimpanan datanya tidak mencapai Tera Byte, sehingga sudah mampu untuk diterapkan di aplikasi besar. SQL Server banyak bermain di Memori untuk processing. Untuk backup data Ms SQL banyak extensinya ada extensi .MDB, .BAK, .file. Kapasitas rollback dan recoverinya tidak masih kurang efektif.

SQL Server merupakan suatu relational database yang di desain untuk mendukung aplikasi dengan arsitektur Client/Server.
Informasi dipergunakan secara bersama-sama oleh beberapa pengguna (Users) yang menjalankan aplikasi di komputer local, atau komputer

4. ORACLE
Man this is a great database. Database Storage Engine ini bisa menyimpan data sampai ukuran tera byte, dan database oracle juga meyediakan yg gratisan versi home edition untuk sekedar yg ingin belajar oracle aja sedangkan untuk versi enterprisenya kita harus bayar. sejauh yg saya tahu dalam pengalaman saya, untuk bagian query-nya oracle tetap menggunakan standard bahasa SQL. Oralce bisa digunakan diberbagai platform seperti unix,windows, atau yg lainnya.
untuk masalah keamanan oracle bisa dibilang baik. untuk masalah perfomance oracle kebanyakan bermain di harddisk jadi kalau anda ingin menggunakan oracle anda harus menyediakan space harddisk yg cukup besar. untuk backup oracle mempunyai extensi sendiri namanya file DMP.

Kelebihan :
ÿ Ketika kita mengakses database dan kemudian ada kejadian seperti listrik mati misalnya maka data yang sudah kita simpan tidak rusak/hilang.
ÿ Database Clusters, dengan menggunakan teknologi Real Application Clusters (RAC). Salah satu fungsi dari RAC adalah memberikan perlindungan terhadap kelangsungan data dalam perusahaan sehingga apabila terjadi crash pada salah satu server database, maka tidak akan mempengaruhi kinerja perusahaan. Hal ini disebabkan karena teknologi RAC memungkinkan untuk membuat beberapa database server menjadi seolah-olah satu database server, sehingga apabila ada database server yang down, kinerja database server tersebut akan di-take over oleh server-server yang lain.
– Row-Level Locking, fitur ini dapat melakukan lock tidak hanya pada table-level saha, akan tetapi dimungkinkan untuk melakukan lock lebih jauh lagi sampai pada row-level. Sehingga user-user dapat melakukan akses data dalam suatu tabel secara bersamaan, lebih cepat dan lebih akurat.
– Data Partitioning, Oracle memungkinkan kita untuk melakukan partisi ke suatu tabel maupun indeks. Hal ini akan dapat meningkatkan kemampuan kita untuk dalam melakukan manajemen data.
– Oracle OLAP (Integrated Online Analytical Processing), Oracle memiliki fungsi OLAP (yang sebelumnya hanya dapat kita temui pada OLAP database) yang terintegrasi dengan baik ke dalam relational database, sehingga kita tidak memerlukan database lain selain Oracle itu sendiri.
– Oracle Data Mining & Data Warehousing, fitur ini memberikan kemudahan bagi perusahaan yang ingin men-develop aplikasi Business Intellegent yang bertujuan untuk membantu eksekutif perusahaan dalam menentuksan strategi perusahaan berdasarkan analisis data yang di-generate oleh Oracle Data Mining.
– Virtual Private Database, fitur ini memberikan dan meningkatkan fleksibilitas jaminan security sampai pada row-level security. Hal ini akan membuat aplikasi kita menjadi semakin aman sewaktu kita melakukan transaksi melalui Internet.
-Intelegent Self-Managing, untuk para DBA, fitur ini akan membuat proses database tuning dan database manajemen menjadi lebih mudah.
– Flashback Query, fitur ini memungkinkan kita untuk melihat status data kita mundur beberapa waktu (flash back) sampai batas yang kita tentukan, sehingga apabila terjadi kesalahaan data pada waktu yang lalu, maka kita dapat melakukan koreksi tanpa harus melakukan database recovery.

Kekurangan :
– Penggunaan Oracle sangat memakan banyak biaya, mulai dari device sampai diperlukannya DBA yang handal.

5. POSTGRESQL
Postgres pada awalnya dikembangkan oleh mahasiswa dan staff programmer University of California, Berkeley, dibawah arahan Professor Michael Stonebraker. Sofware ini mulanya dinamai Postgres, tetapi karena banyak tambahan untuk fungsi fungsi SQL maka pada tahun 1995 namanya diganti Postgres95, dan sejak tahun 1996 nama yang digunakan hingga sekarang adalah PostgreSQL. Pada saat pertama dikembangkan postgres dianggap tidak memenuhi stardar ANSI-SQL92 -standar database berskala besar- , karena tujuannya hanya menjadikan postgres sebagai database yang mempunyai banyak feature dan keluwesan yang tinggi. Karena merasa mendapat tantangan postgres berusaha untuk memenuhi standar tersebut, dan akhirnya potsgres mampu juga untuk mencapai satndar ANSI-SQL. Tetapi yang lebih gila lagi ternyata kemampuan postgres melebihi standar ANSI_SQL, yang berarti kemampuan postgres melebihi database lain standar ANSI-SQL92 yang diantarannya adalah Oracle. Wajar jika Postgres dinobatkan Linux Award sebagai database pilihan dan menempatkan Oracle pada tembat ke-dua.

Perbedaan yang paling mendasar antara postgres dengan sistem relasional standar adalah, kemampuan postgres yang memungkinkan user untuk mendefinisikanSQL-nya sendiri, terutama untuk pembuatan function. Hal ini dimungkinkan karena informasi yang tersimpan pada postgres tidak hanya tabel dan kolom melainkan tipe, fungsi, car akses, dan informasi lain. Kesemuanya itu dihimpun dalam bentuk class yang memungkinkan user untuk merubahnya. Dengan model class ini postgres lebih mudah dikembangkan ditingkat user dan bisa mendefinisikan sebuah tabel sebagai turunan tabel lain. Dimana pada database konvensional hal itu hanya bisa dilakukan dengan mengganti source code nya atau menggunakan modul tambahan . Kelebihan lain dari postgres adalah dukungan antar muka dari berbagai bahasa pemrograman seperti Perl, PHP, C++, Phyton, Java dan masih banyak lagi. Postgres juga mempunayai kemampuan untuk membuat konektifitas dengan database lain seperti pgdump, Interbase, pgaccess dan hampir semua database pada Linux. Karena kemampuan itulah wajar jika bagi yang telah mencoba postgres menjadi kecanduan dan sulit untuk pindah ke database lain termasuk penulis. Saat ini postgres telah banyak digunakan oleh berbagai perusahaan besar, Rumah Sakit Pertamina adalah salah satu yang telah menggunakan Postgres.
PostgreSQL adalah sebuah object-relational database management system (ORDBMS) yang bersifat open source. PostgreSQL adalah database yang powerful dan tidak kalah dengan database komersil sekelasnya Oracle, Sybase maupun Informix. PostgreSQL yang mendukung standar SQL92 dan SQL99 ini juga mendukung bahasa pemrograman C, C++, Java, Tcl, Perl, Python, PHP, dst.
Database Storage Engine ini bersifat open source atau gratisan yg dikembangkan oleh berbagai developer didunia.Untuk sintax query postgre sql menggunakan ANSI SQL 89, 92 dan 99. untuk postgre sql sudah support joins, views, aggregasi.
PostgreSQL (www.PostgreSQL.org) didisain untuk skala besar, memiliki ciri berorientasi objek, namun tetap dapat digunakan layaknya RDBMS pada umumnya. Para pengembangnya (dulu) mengutamakan kelengkapan feature ketimbang dukungan penuh akan standar SQL.Dalam perjalanannya, kelebihan feature ini justru membuat Postgres semakin powerful dan membuatnya dapat disejajarkan dengan database besar lainnya seperti Oracle. Salah satu contoh standar SQL yang belum dipenuhi oleh PostgreSQL adalah referential integrity dan outer-join. Meski demikian, programmer Postgres tetap merencanakan untuk membuatnya memiliki standar SQL yang sudah ditetapkan. Fasilitas standar lain yang telah didukung adalah trigger dan function.
Function dalam PostgreSQL sangat unik karena PostgreSQL tidak menetapkan built-in language untuk penulisan function. PostgreSQL menyerahkan kepada pemakai untuk memilih sendiri bahasa yang diinginkan yang disebut Procedural Language. Pada saat deklarasi function, Anda harus menyebutkan bahasa yang digunakan. procedural language yang tersedia adalah pgSQL dan Tcl. Jadi script function yang dideklarasikan akan diterjemahkan oleh library yang bersangkutan (tergantung bahasa yang dipilih) untuk selanjutnya library tersebut melakukan koordinasi dengan library PostgreSQL.

Tools yang tersedia cukup banyak dan sangat berguna seperti:
pgdump: konversi objek database menjadi script SQL
pgaccess: drag & drop-nya cukup menyenangkan
PostgreSQL didukung oleh banyak bahasa (atau Postgres mendukung banyak bahasa?), antara lain: C++, Java, Perl, Tcl, PHP3 dan Python. Library untuk ODBC dan JDBC juga telah tersedia, sehingga bahasa lainnya yang mendukung keduanya dapat mengakses PostgreSQL.

KESIMPULAN

Dari beberapa uraian di atas maka saya dapat menimpulkan bahwa masing – masing Database Storang Engine memiliki kelebihan dan kekurangan.

Disini Penulis lebih menyukai Database Storage Engine MySQL karena penulis pernah mencobanya dan menerapkan dalam aplikasi database menggunakan bahasa pemrograman Borland Delphi 7, dengan connector OBDC. Syntax SQLnya tidak terlalu rumit karena sama dengan Ms. Access (basic penulis memulai membuat database). Sebenarnya penulis menyukai Ms. Access, Oracle, PostgreSQL, tapi karena beberapa pertimbangan dan dilihat dari beberapa sisi maka penulis lebih memilih MySQL sebagai sever database.
Kapasitas daya tampung My SQL bisa mencapai 64 Terabyte(InnoDB) dan 256 Terabyte(My ISAM), berbasis client-server, Opensource, gratis didownload dan tidak memakan biaya yang besar seperti Oracle, PostgreSQL, dll. Inilah yang membuat penulis ingin menggunakan Database Storage Engine ini.

Referensi: Wikipedia, C. W. Bachmann, The Programmer as Navigator, Stephen Chu, in Conrick, M.  (2006)  Health informatics: transforming healthcare with technology.

Leave a Reply

Fill in your details below or click an icon to log in:

WordPress.com Logo

You are commenting using your WordPress.com account. Log Out / Change )

Twitter picture

You are commenting using your Twitter account. Log Out / Change )

Facebook photo

You are commenting using your Facebook account. Log Out / Change )

Google+ photo

You are commenting using your Google+ account. Log Out / Change )

Connecting to %s