Tipe tabel InnoDB merupakan tipe tabel MySQL yang mendukung proses transaksi. Tipe ini memiliki beberapa keunggulan, antara lain:
1. Mendukung transaksi antar tabel.
2. Mendukung row-level-locking.
3. Mendukung Foreign-Key Constraints.
4. Crash recovery.
Jika kita ingin mengaktifkan fitur InnoDB pada Instalasi XAMPP, berikut ini langkah yang dapat Anda ikuti:
Langkah 1. Stop service MySQL melalui XAMPP Control Panel.
Langkah 2. Buka file konfigurasi MySQL “my.cnf” yang berada di folder letak-instalasi-xampp\xampp\mysql\bin dengan menggunakan notepad.
Langkah 3. Cari bagian konfigurasi sbb:
#Comment the following line to unskip and use InnoDB
skip-innodb
#Uncomment the following options for InnoDB database if you are using InnoDB tables.
#innodb_data_home_dir = C:/xampp/xampp/mysql/data/
#innodb_data_file_path = ibdata1:10M:autoextend
#innodb_log_group_home_dir = C:/xampp/xampp/mysql/data/
#innodb_log_arch_dir = C:/xampp/xampp/mysql/data/
#Uncomment the lines and set innodb_buffer_pool_size up to 50% – 80% of RAM for optimization of InnoDB databases, try not to memory usage too high.
#set-variable = innodb_buffer_pool_size=16M
#set-variable = innodb_additional_mem_pool_size=2M
#Uncomment the lines and set innodb_log_file_size to 25% of InnoDB buffer pool size for optimisation.
#set-variable = innodb_log_file_size=5M
#set-variable = innodb_log_buffer_size=8M
#innodb_flush_log_at_trx_commit=1
#set-variable = innodb_lock_wait_timeout=50
Langkah 4. Ubahlah menjadi sebagai berikut:
# skip-innodb
innodb_data_home_dir = C:/xampp/xampp/mysql/data/
innodb_data_file_path = ibdata1:10M:autoextend
innodb_log_group_home_dir = C:/xampp/xampp/mysql/data/
innodb_log_arch_dir = C:/xampp/xampp/mysql/data/
set-variable = innodb_buffer_pool_size=16M
set-variable = innodb_additional_mem_pool_size=2M
set-variable = innodb_log_file_size=5M
set-variable = innodb_log_buffer_size=8M
innodb_flush_log_at_trx_commit=1
set-variable = innodb_lock_wait_timeout=50
Langkah 5. Start kembali MySQL melalui XAMPP Control Panel
Keuntungan dari InnoDB
1.InnoDB harus digunakan di mana integritas data lebih prioritas.
2.Lebih cepat dalam menulis-intensif (penyisipan, update) tabel karena menggunakan tingkat penguncian baris dan hanya tahan perubahan pada baris yang sama yang sedang dimasukkan atau diperbaharui.
Kekurangan dari InnoDB
1.Karena InnoDB harus menjaga hubungan yang berbeda antara tabel, database administrator dan pencipta skema harus mengambil lebih banyak waktu dalam mendesain model data yang lebih kompleks daripada MyISAM.
2.Mengkonsumsi sumber daya sistem yang lebih seperti RAM. Direkomendasikan bahwa mesin InnoDB dimatikan jika tidak perlu substansial untuk itu setelah instalasi MySQL.
3.Tidak-pengindeksan teks penuh.
HEAP
Tabel dengan tipe HEAP tidak menyimpan datanya di hardisk, tetapi menyimpan di RAM (memori). Tipe tabel ini biasanya digunakan sebagai tabel sementara (temporary). Tabel secara otomatis akan dihapus (hilang) dari MySQL saat koneksi ke server diputus atau server MySQL dimatikan.
Ada beberapa operasi yang dapat terjadi di sebuah heap, yaitu :
1. Reorganisasi Heap (mengatur ulang heap).
2. Membantuk Heap (mengatur binary tree agar menjadi heap)
3. Penyisipan Heap (menyisipkan node baru)
4. Penghapusan Heap (menghapus node root)
5. Pengurutan Heap (Heap sort)
. Operasi-operasi yang digunakan untuk heap adalah:
• Delete-max atau delete-min: menghapus simpul akar dari sebuah max atau min heap.
• Increase-key atau decrease-key: mengubah nilai yang tersimpan di suatu simpul.
• Insert: menambahkan sebuah nilai ke dalam heap.
• Merge: menggabungkan dua heap untuk membentuk sebuah heap baru yang berisi semua elemen pembentuk heap tersebut.
Jenis-jenis Heap
Binary heap
adalah heap yang dibuat dengan menggunakan pohon biner.
Binomial heap
adalah heap yang dibuat dengan menggunakan pohon binomial.
Pohon binomial bila didefinisikan secara rekursif adalah:
• Sebuah pohon binomial dengan tinggi 0 adalah simpul tunggal
• Sebuah pohon binomial dengan tinggi k mempunyai sebuah simpul akar yang anak-anaknya adalah akar-akar pohon pohon binomial.
Fibonacci Heap
Fibonacci heap adalah kumpulan pohon yang membentuk minimum heap.
Pohon dalam struktur data ini tidak memiliki bentuk yang tertentu dan pada kasus yang ekstrim heap ini memiliki semua elemen dalam pohon yang berbeda atau sebuah pohon tunggal dengan tinggi Keunggulan dari
Fibonacci heap adalah ketika menggabungkan heap cukup dengan menggabungkan dua list pohon.