Search

Optimalisasi Syntax Query

Terkadang saat kita coding syntax Query, kita tidak pernah memperhatikan betapa berpengaruhnya pada memori harddisk kita. Yang penting bisa dijalankan dan semua beres. Tetapi tahu atau tidak, cara seperti itu bisa membuat pembengkakan memori yang cukup besar. Oleh karena itu, penting juga untuk kita mengoptimalkan syntax query. Manfaat dari optimalisasi syntax query adalah :

1. Data yang tersimpan dalam database semakin lamaakan semakin besar ukuran atau volumenya.
2. Kalau tidak didukung dengan kecepatan akses yang memadai maka akan semakin menurun unjuk kerjanya.



Banyak cara yang perlu diperhatikan agar permasalahan tersebut bisa teratasi seperti optimalisasi index, perancangan database, sampai optimalisasi melalui perintah query. Dan berikut ini adalah cara-caranya.

1. Hindari penggunaan SELECT *.
Alasannya sederhana, karena jika kita menggunakan SELECT *, maka semua field akan ditampilkan, baik yang sedang kita cari atau pun tidak. Perhatikan gambar berikut, kemudian bandingkan keduanya.
















Bandingkan dengan penggunaan Select yang sesuai kebutuhan.




Kecepatan Proses / Execution Time berbeda di kedua penggunaan syntax ini. Perbedaan ini akan terlihat jika query dieksekusi di PC dengan spec rendah.


1    2. Gunakan Kriteria
Hindari pengaksesan seluruh data, tetapi FOKUSLAH kepada data yang mau dicari. Gunakan clausa WHERE. Lihat perbandingannya berikut ini.


 

3. Batasi jumlah record yang akan ditampilkan kecuali memang betul-betul dibutuhkan.

 


 
4    4.Urutkan berdasarkan kolom.
Penulisan nama kolom disarankan menggunakan urutan sebagaimana kolom tersebut didefinisikan di dalam tabel,misal struktur tabel terdiri dari kolom npm; kode; nilaiun; nilaith; nilaitb; ambilke.


 
 
5    5. Batasi penggunaan ORDER BY / batasi pengurutan data
Order by, digunakan untuk pengurutan data berdasarkan field / colomn tertentu. Tetapi cobalah untuk menguranginya sekarang. Kenapa begitu, coba perhatikan perbandingan berikut ini.
 
 

 
1    6.Kecepatan akses operator
Dari sisi kinerja, urutan operator yang diproses paling cepat adalah:
1.       =
2.       >, >=, <. <=
3.       LIKE
4.       <> 
 

               Tidak dalam setiap kondisi operator dapat disubtitusikan seperti contoh sederhana di atas, tetapi prioritaskanlah penggunaan operator yang tercepat.

               Mungkin Anda akan menemukan bahwa setelah diuji dengan data sampel maka kinerja sebelum dan sesudah optimasi ternyata sama sekali tidak signifikan, beda tipis, atau tidak ada bedanya sama sekali. Memang benar, dengan spesifikasi hardware yang semakin meningkat, data yang relatif kecil, dan alur yang sederhana, Anda mungkin tidak akan mendapatkan perbedaan yang signifikan. Tetapi, jika Anda siap untuk terjun menghadapi tantangan menangani aplikasi yang lebih besar, maka perbedaan antara tanpa dan dengan optimasi akan sangat nyata, dengan pemahaman dan kebiasaan coding yang baik, Anda akan dapat menghasilkan aplikasi yang juga lebih baik. Dan tidak ada salahnya menerapkan optimasi yang Anda ketahui sedini mungkin dalam pengembangan sistem aplikasi Anda.
 









4 comments:

Unknown

thx info nya gan, manfaat bgt nih
http://sepatus.com

Koko Sip

ok gan... sama2...

Amir

ada satu lagi agan koko, penggunaan tipe data.
untuk data yang jumlah karakternya fix atau tetap seperti "nip, npwp, dll" bisa menggunakan tipedata char, tapi untuk yang jumlah karakternya bervariasi seperti "nama, alamat, dll" alangkah lebih baik gunakan varchar. Sebab pada saat query select, tipe data char dengan length 10 akan dibaca 10 karakter oleh query meskipun karakter di dalam database hanya 5 misalnya. Tapi tipe data varchar dengan lenght 10 akan dibaca sesuai dengan jumlah karakter yang ada di database. ini bisa sedikit membantu, pada saat data sudah bertumpuk.

Koko Sip

terima kasih agan amir masukannya,. yupss,. betul sekali,. itulah bedanya char dan varchar... ^_^

Posting Komentar