OPTIMALISASI DATABASE
Berikut merupakan beberapa hal yang digunakan untuk mengoptimalkan kinerja dari database :
- Memahami Normalisasi DatabaseNormalisasi Database menghindari kesalahan laporan data dan double entri data.
- Optimalisasi IndexGunannya untuk meningkatkan proses pencarian. Sebagai patokan gunakan field yang sering diakses dengan klausa WHERE, JOIN, ORDER BY, GROUP BY.
- Menentukan Tipe DataMenentukan tipe data. Apakah menggunakan tipe data yang kecil atau yang besar, dengan seiring bertambahnya data setiap harinya. Penentuan tipe data memerlukan ketelitian dan analisis data yang dibutuhkan..hehehe jgn sampai datanya sedikit tapi tipe data yang digunakan malah tipe data yg besar.... hahahaha tidak apa2 sih....tp kalau tipe datanya kecil tpi datanya malah besar.. nah ini baru gawat......patokan: misalnya untuk kode pos butuh 6 digit anhka saja karena jumlah kode pos setahu saya sih 6 digit, nah maka kita dapat menggunaka tipe data text dengan memberikan maximal field 6 digit atau number dengan pilihan Byte sesuai dengan banyaknya data.
- Kurangi Penggunaan Allow NullJika memungkinkan ya kurangi field yang memperbolehkan inlai null. Sebaiknya kita memberikan nilai default pada field tersebut misal 0 nilai default untuk angka awal yang tidak diisi. nilai Null kadang rancu dalam pemrograman bahkan dapat mengakibatkan kesalahan logika.
- Query Yang Mudah DibacaSQL memang merupakan bahas declarative, tidak mengherankan memang kita menulis Query dalam bentuk kalimat yang panjang, walaupun hanya untuk menmbahkan 1 field.
- Hindari SELECT*Select merupakan keuword yang paling sering digunakan, tapi ingat jang banyak menggunakan SELECT * yang berarti perintah mengakses field secara keseluruhan dalam suatu tabel, jika hanya ingin mengakses field tertentu saja gunakan Query SELECT Nama Field, hal ini akan mengurangi bebar jaringan dan Lock pada tabel, terutama dalam tabel tersebut memiliki field berukuran besar.
- Batasi ORDER BYPerintah ORDER BY berfungsi untuk mengurutkan data. ternyata memiliki konsekuensi menambah beban Query karena menambah satu proses lagi yaitu sortir. Gunakan ORDER BY jika memang benar2 diperlukan dalam program. Atau untuk lebih baiknya dapat juga melakukan proses sortir pada komponen grid sesuai kebutuhan pengguna.
- Kecepatan Akses OperatorWHERE 1=1 dan WHERE 0<>1 merupakan suatu kondisi yang sama menghasilkan nilai true, tapi lebih baik menggunakan WHERE 1=1, karena operator = diproses lebih cepat dibanding operator <>, berikut urutan operator yang diproses paling cepat:- =- >, >=, <, <=- LIKE- <>NB: Tidak semua operator dapat disamakan dari urutan diatas tapi utamakan menggunakan operator dengan pengaksesan cepat.
- Menyimpan Gambar dalam DatabaseJika ingin menyimpan gambar dalam database untuk keaman data, tidak menjadi masalah, tetapi yang perlu di ingat bahwa ukuran gambar relatif besar dari pada data dalam bentuk teks atau angka, jadi akan membuat ukuran besar, beban database akan semakin besar, hal ini akanmembuat proses backup dan migrasi semakin sulit untuk dilakukan.
- Pengukuran Kinerjaada baiknya jika dilakukan pengukuran kinerja Query , seberapa cepat waktu eksekusi dan operasi apa saja yang dilakukan. Jika menemukan Query yang tidak OPTIMAL tulis ulang Query denga teknik dan metode yang lenih baik. Semakin banyak Query yang diOPTIMALKAN semakin baik kerja programnya. terutama Query dengan pemakaian yang relatif tinggi.
- ValidasiTeknikvalidasi merupakan teknik dimana dimana memberikan batasan-batasan akses dalam sebuah program.
Gambaran Optimalisasi Database, terkait dengan hal sebagai berikut:
A. Storage efficiency and speed of access (Efisiensi penyimpanan dan kecepatan akses)
contohnya pada kecepatan akses pada operator.
B. Database performance (Kinerja database)
contohnya pada penyimpanan gambar pada database.
C. Query performance (Kinerja Query)
contohnya pada hindari SELECT dan ORDER BY
Tidak ada komentar:
Posting Komentar