Database Performance
Tuning
Pengertian
Database performance tuning adalah
aktivitas dan prosedur yang dirancang
untuk mempercepat respon sistem
database
Database Performane tuning bertujuan
untuk mengeksekusi query secepat
mungkin
Teknik Tuning dan Optimizing
Partitioning
Raw Partition vs File Systems
Indexing
Denormalization
Clustering
Interleaving Data
Teknik Tuning dan Optimizing
Free Space
Compression
File Placement and Allocation
Page size
Reorganiztion
Partitioning
Mempartisi database dapat mempercepat
pencapaian proses paralel
Proses paralel merupakan proses untuk
menggunakan perintah jamak untuk
mengakses database
Proses paralel digunakan untuk
mengurangi elapsed time query database
Raw Partition VS File System
Raw partition lebih sering digunakan
daripada menyimpan data di cache file
system
Karena cache DBMS akan langsung
menuliskan data tanpa intervensi dari file
system
Tidak dianjurkan untuk menambahkan
cache DBMS dengan cache yang lain
Raw Partition VS File System
Indexing
Index digunakan untuk :
Menemukan baris untuk nilai tertentu pada
sebuah atau banyak kolom
Mempermudah operasi JOIN
Menghubungkan data antara tabel
Agregasi data
Mengurutkan data sesuai perintah query
Dengan index mempermudah proses
pengolahan data
Index
Pertanyaanya adalah berapa index yang
dibutuhkan dalam sebuah tabel?
Ada kalanya index tidak dibutuhkan
terutama untuk table yang jumlah datanya
tidak lebih dari 10 halaman.
Denormalisasi
Kebalikan dari normalisasi
Salah satu teknik untuk meningkatkan
performa dengan menambahkan data
yang redundant atau dengan
mengelompokkan data
Denormalisasi
Dapat diterapkan dengan:
Prejoined table
Report table
Mirror table
Split table
Combined tables
Speed tables
Storing redundant data
Storing repeating groups
Storing derivable data
Clustering
Tabel
yang sudah dikelompokkan akan
menyimpan data secara fisik di dalam
sebuah disk sesuai dengan kolomnya
masing-masing
Clustering
Interleaving Data
Jika data dari satu tabel dengan tabel
yang lain sering digabungkan, maka dapat
dipertimbangkan untuk mengumpulkan
data tersebut dalam satu cluster
Interleaving data merupakan
pengkhususan dari cluster
Interleaving data
Free Space
Terkadang disebut dengan Fill Factor
Merupakan ruang kosong yang disediakan
untuk menambah data baru
Parameter yang biasa digunakan adalah
PCTFREE dan FREEPAGE
Tugas DBA adalah memastikan jumlah
ruang kosong yang tepat untuk setiap
tabel
Keuntungan Free Space
Insert lebih cepat
Ketika sebuah baris baru di-insert-kan,
langsung dapat di-cluster-kan
Concurrency lebih mudah
Kekurangan
Disk storage yang dibutuhkan lebih besar
Waktu scan lebih lama
Jumlah baris yang lebih sedikit, akan
meminta I/O yang lebih banyak
Mengurangi efisiensi data caching karena
sedikitnya baris yang discan per I/O
Compression
Untuk meringkas database
Dapat mengurangi penggunaan ruang
penyimpanan data
Keuntungan : menghemat ruang penyimpanan
dan mengurangi waktu pemrosesan data
Kekurangan : Biaya tambahan untuk melakukan
compress dan decompress data
Tidak semua table perlu dicompress
File Placement and Allocation
Yang harus diperhatikan ketika mengalokasikan
data :
Jika memungkinkan memisahkan data dengan index
Memisahkan file untuk tabel yang sering diakses
bersama
Jika data dari tabel disimpan di dalam halaman yang
berbeda, diutamakan untuk memisahkan disk
penyimpan untuk mempermudah dan
mengoptimalkan operasi yang paralel
Page size
Beberapa DBMS membatasi jumlah page
yang digunakan untuk menyimpan data
Karena itu DBA harus dapat menghitung
jumlah halaman yang dibutuhkan
berdasarkan jumlah baris data, jumlah
baris per halaman, dan jumlah ruang
kosong yang dibutuhkan
Reorganization
Memaksimalkan availabilitty dan reliability
data
Me-reorganisasi database berarti
merestrukturisasi objek database,
memaksimalkan availability dan
kecepatan, serta mengefisiensi fungsi
database
selesai