Monday 8 June 2015

Mysql, pilih MyISAM atau InnoDB ?

Pilih MyISAM atau InnoDB?

Mysql menyediakan banyak storage engine, akan tetapi yang paling sering digunakan adalah MyISAM dan InnoDB.
Storage engine adalah mekanisme bagaimana data disimpan, diubah ataupun diambil dari suatu tabel. Karenanya dalam satu database Anda bisa membuat banyak macam jenis storage engine pada masing-masing tabelnya.

MyISAM: storage enggine ini sering digunakan dalam website, data warehouse, dan model aplikasi lainnya. Secara default storage engine akan memakai type ini.
InnoDB: storage engine ini sering dikenal karena mempunyai fitur transaksi, seperti commit, rollback dan crash recovery layaknya oracle. Disamping itu juga mempunyai fitur tabel relasi dan integritas – foreignkey.
Berikut Keuntungan dan kekurangan masing-masing storage engine:

MyISAM

Keuntungan
  • Sederhana untuk perancangan sehingga memudahkan bagi pemula.
  • Lebih cepat daripada InnoDB pada keseluruhan, baik penyimpanan data ataupun konsumsi memory RAM sebagai akibat dari strukturnya yang sederhana sehingga jauh lebih sedikit konsumsi sumber daya server
  • Lebih cepat pada proses pembacaan, sangat dianjurkan jika table sering terjadi proses pembacaan
    Mendukung Pengindeksan teks lengkap.
  • Kapasitas yang tertampung bisa lebih besar dibanding engine InnoDB. Sekitar 256TB, sedangkan InnoDB daya tampungnya 64TB.
Kekurangan
  • Tidak mendukung integritas data, sehingga untuk proses integritas data dilakukan secara program bukan di databasenya.
  • Tidak mendukung transaksi seperti commit, rollback ataupun crash recovery.
  • Lebih lambat dibanding InnoDB jika proses yang sering terjadi adalah insert atau update.

InnoDB

Keuntungan
  • Mendukung integritas data secara penuh dengan adanya foreignkey.
  • Lebih cepat dalam proses menulis-intensif (penyisipan, update) tabel
  • Mendukung transaksi seperti commit, rollback ataupun crash recovery..
Kekurangan
  • Karena InnoDB mementingkan integritas, maka proses perancangan tentu membutuhkan usaha yang lebih besar.
  • Mengkonsumsi sumber daya sistem lebih besar baik dalam penyimpanan maupun memory RAM.
  • Proses pembacaan data lebih lambat dibanding engine MyISAM.
  • Tidak mendukung pengindeksan teks penuh.
Jadi, tidak ada mana yang lebih unggul. Tinggal bagaimana kita memilihnya sesuai kebutuhan, bahkan jika perlu dalam satu database gunakan storage engine yang berbeda-beda sesuai dengan kebutuhan dan keperluannya, tujuan terpentingnya adalah optimasi. Lain kali saya akan bahas optimasi database. Semoga tulisan ini bermanfaat.

Artikel Terkait

Mysql, pilih MyISAM atau InnoDB ?
4/ 5
Oleh

Berlangganan

Suka dengan artikel di atas? Silakan berlangganan gratis via email

Coretan Disqus

close
close