Database, Mysql atau PostgreSQL?
Database merupakan salah satu bagian penting dalam dunia IT saat ini. hampir 80 persen dari software menggunakan database dibandingkan melakukan komputasi rumit. data ini sebenarnya tidak berdasar. namum jika dilihat dari trend saat ini, misalnya aplikasi web kebanyakan telah menggunakan database menjadi fondasi pentng dalam pembuatan software.
Untuk memenuhi kebutuhan database dalam IT biasanya digunakan DBMS (Database Management System). salah satu yang terkenal adalah Oracle yang merupakan salah satu nama besar di DBMS dan pemain pertama dalam RDBMS. Oracle saat ini memposisikan dirinya menjadi vendor DBMS kepercayaan untuk perusahaan-perusahaan besar dunia. hal ini tentu sangat beralasan karena Oracle memilki performa DBMS terbaik saat ini.
Untuk bisnis kecil dan menengah yang belum dapat mengeluarkan budget banyak untuk IT namun telah membutuhkan database terdapat solusi DBMS open source. yang terkenal adalah Mysql dan PostgreSQL. keduanya memiliki fleksibilitas dan performa yang baik namun keduanya memilki karakterisitik yang membuatnya lebiih baik untuk dipilih.
untuk perbandingan secara head to head dapat dilihat dari tabel berikut:
| PostgreSQL |
MYSQL | |
| ANSI SQL compliance | Closer to ANSI SQL standard | Follows some of the ANSI SQL standards |
| Performance | Slower | Faster |
| Sub-selects | Yes | No |
| Transactions | Yes | Yes, however InnoDB table type must be used |
| Database replication | Yes | Yes |
| Foreign key support | Yes | No |
| Views | Yes | No |
| Stored procedures | Yes | No |
| Triggers | Yes | No |
| Unions | Yes | No |
| Full joins | Yes | No |
| Constraints | Yes | No |
| Windows support | Yes | Yes |
| Vacuum (cleanup) | Yes | No |
| ODBC | Yes | Yes |
| JDBC | Yes | Yes |
| Different table types | No | Yes |
jadi kapan kita harus menggunakn MYSQL?
salah satu hal yang harus kita pikirkan apakah kita membuat aplikasi web yang dibutuhkan adalah kecepatan. maka mysql adalah yang terbaik karena memilki kecepatan dan kompatibel dengan banyak web based development. namun jika membutuhkan foreign key dan transaction postgresql lebih baik dalam hal ini. sehingga alasan untuk menggunakan mysql:
- mysql relatif lebih cepat daripada postgresql
- desain database yang lebih sederhana
- replikasi yang telah teruji
- tidak diperlukan cleanup
dan kapan menggunakan postgreSQL?
sebenarnya jika dilhat dari tabel fitur postgre menawakan fitur yang lebih daripada mysql. namun postgre lebih jarang digunakan pada aplikasi web. ada pandangan bahwa fitur tersebut memperlambat performa postgre sehingga tidak cocok untuk web.
intinya jika dibandingkan dengan mysql, postger memilki fitur-fitur seperti foreign key references, trigger yang lebih baik. terlebih postgre telah mendekati standar ANSI sql. jika anda membutuhkan operasi database yang rumit postgre dapat menjadi pilihan. alasan lain antara lain:
- cocok untuk desain databse yang kompleks
- lebih dekat dengan Oracle
- rule set yang kompleks
- bahasa prosedural untuk server
- transaction
- penggunaan prosedur yang tersimpan
- penggunaan data geographis (GIS)
- R-tree
- berlisensi GPL
kesimpulan
keduanya memilki kelemahan dan kekuatan masing-masing. bahkan jika dibandingkan lebih cermat tidak ada yang saling melebihi, karena keduanya memilki porsinya masing-masing dalam dunia database. bahkan kedua database ini dapat digunakan untuk suatu sistem misalnya untuk GIS pada web. kita dapat menyimpan data GIS pada postgre dan menggunakan pula mysql sebagai buffer untuk mempercepat akses basis data melalui web