Back to IF3140 Sistem Basis Data

Topic

Questions/Cues

  • Apa langkah pertama sebelum melakukan tuning desain?

  • Apa itu indeks dan mengapa ia mempercepat query?

  • Apa saja metode yang digunakan dalam schema tuning?

  • Apa itu denormalisasi dan kapan digunakan?

Langkah Awal: Memahami Workload

Sebelum memutuskan untuk membuat indeks atau mengubah skema, langkah pertama yang krusial adalah memahami workload sistem. Ini berarti kita harus mengetahui: query dan update mana yang paling penting dan paling sering muncul, serta performa seperti apa yang diharapkan dari operasi-operasi tersebut. Analisis workload ini melibatkan identifikasi relasi, atribut, dan kondisi seleksi/join yang paling sering digunakan.

Index Tuning: Membuat Jalan Pintas

Indeks adalah sebuah struktur data terpisah yang berfungsi untuk mempercepat akses ke data, mirip seperti katalog pengarang di perpustakaan yang menghindarkan kita dari memeriksa setiap buku satu per satu. Indeks berisi search-key (nilai dari kolom yang diindeks) dan pointer (penunjuk ke lokasi baris data asli). Dengan menggunakan indeks, operasi pencarian, pengurutan, dan join dapat dilakukan secara efisien tanpa harus melakukan full table scan, karena file indeks jauh lebih kecil dari file data aslinya.

Schema Tuning: Memodifikasi Struktur

Schema Tuning adalah proses memodifikasi desain skema logis untuk memenuhi target performa. Pilihan skema tidak hanya dipandu oleh isu redundansi (normalisasi), tetapi juga oleh workload. Beberapa teknik yang umum digunakan adalah:

  • Splitting Tables (Dekomposisi): Memecah satu tabel menjadi beberapa tabel, baik secara horizontal (memisahkan baris, misal: tabel transaksi aktif dan tabel arsip) maupun vertikal (memisahkan kolom, misal: tabel data login dan tabel profil pengguna).

  • Denormalization: Sebuah proses yang secara sengaja “melanggar” aturan normalisasi untuk meningkatkan performa. Ini adalah kebalikan dari dekomposisi, di mana kita mungkin menggabungkan tabel atau menambahkan kolom redundan untuk menghilangkan kebutuhan operasi JOIN yang mahal.

Summary

Tuning pada level desain dimulai dengan memahami workload untuk mengidentifikasi operasi paling krusial. Berdasarkan pemahaman ini, dua strategi utama dapat diterapkan: Index Tuning, yaitu membuat struktur data “jalan pintas” untuk mempercepat pencarian tanpa full scan, dan Schema Tuning, yang melibatkan modifikasi struktur tabel melalui teknik seperti dekomposisi (memecah tabel) atau denormalisasi (menggabungkan tabel atau menambah kolom redundan) untuk mengoptimalkan performa query.