Data yang tersimpan dalam database semakin lama akan semakin besar ukuran
atau volumenya. KAlau tidak didukung dengan kecepatan akses yang memadai maka
akan semakin menurun unjuk kerjanya. Ukuran unjuk kerja dalam hal ini kecepatan
akses data dipengaruhi oleh banyak factor.
A.
Optimasi pada Perintah SQL
Desain palikasi saja tidak cukup untuk meningkatkan unjuk kerja harus
didukung sengan optimasi dari perintah SQL yang digunakan pada aplikasi
tersebut. Dalam mendesai database, seringkali lokasi fisik data tidak menjadi
perhatian penting. KArena hanya desain logic saja yang diperhatikan. Padahal
untuk menampilkan hasil query dibutuhkan pencarian yang melibatkna struktur
fisik penyimpanan data. Inti dari optimasi query adalah meminimalkan jalur
pencarian untuk menemukan data yang disimpan dalam lokasi fisik.
Index pada databse digunakan utnuk meningktakan kecepatan akses data.
Pada saat query dijalankan, indec mencari data dan menentukan nilai ROWID yang
membantu menemukan lokasi data secara fisik. Akan tetapi penggunaan index yang
tidak tepat, tidak akan meningkatkan unjuk kerja dalam hal ini kecepatan akses
data.
B.
Perencanaan Eksekusi
Pada database Oracle, informasi ini dapat dilihat dengan menggunakan
perintah explain plan, yang akan memberi informasi tentang rencana eksekusi
dari suatu query. Informasi ini disimpan dalam table PLAN_TABLE yang terdapat di
skema user yang mengeksekusi perintah tersebut.
C.
Faktor Lian yang Berpengaruh terhadap Kecepatan
Akses Data
Faktor
lain yang berpengaruh terhadapa kecepatan akses data, tidak hanya terletak pada
optimasi perintah SQL, tetapi terhadap hal-hal lain yang berpengaruh.
Diantaranya adalah optimasi apliakasi dan penggunaan cluster dan index.
D.
Optimasi Aplikasi
Dalam pembuatan aplikasi, yang perlu mendapat perhatian
adalah apakah akses terhadap suatu data usdah efisien atau belum. Efisien dalam
hal penggunaan obyek mendukung kecepatan akses, seperti index dan cluster.
Kemudian juga bagaimana cara databse di desain. Apakah desain database sudah
melakukan normalisasi data secara tepat.
Terkadang normalisasi sampai level yang kesekian, tidak
menjamin suatu desain yang efisien. Untuk membuat desain yang lebih tepat,
kadang setelah melakukan normalisasi perlu dilakukan denormalisasi. Mislanya
table yang hubungannya one-to-one dan sering di akses bersama lebih baik
disatukan dalam satu table.
E.
CLUSTER dan INDEX
CLUSTER adalah suatu segment yang menyimpan data dari
table yang berbeda dalam suatu struktur fisik disk yang berdekatan. Konfigurasi
ini bermanfaat untuk akses data dari beberapa table yang sering di-query.
Penggunaan cluster secara tepat dilaksanakan setelaah menganalisa table-table
mana saja yang sering di-query secara bersamaan menggunakan perintah SQL.
Jika aplikasi sering melakukan query dengan menggunakan
suatu kolom yang berada pada klausa WHERE, maka harus digunakan indec yang
melibatkan kolom tersebut. Pengguanan index yang tepat bergantung pada jenis
nilai yang terdapat dalam kolom yang akan diindex. Dalam RDBMS Oracle, index
B-Tree digunakan untuk kolom yang mengandung nilai yang cukup bervariasi,
sedangkan untuk nilai yang tidak memiliki variasi cukup banyak, lebih bail
menggunakan index bitmap.