Home » , , » Optimalisasi Database

Optimalisasi Database

http://mozalora.blogspot.com/2013/04/optimalisasi-database.htmlSalam sobat moza,

Sebelum kita bahas tentang  OPTIMALISASI DATABASE atau mengoptimalkan kinerja database yang merupakan topik inti dari postingan ini, alangkah baiknya saya akan menyinggung terlebih dahulu Perancangan Database karena Optimalisasi Database bagian dari atau isi singkat dari Perancangan Database. Mungkin sobat sekalian sudah tahu tentang apa itu database, tapi tidak salahnya kalau saya akan tuliskan kembali pengertian dari database itu sendiri, ya sebagai bahan untuk mengingatkan kita kembali..:)
ok lanjut tpi saya ngopi dulu.....biar semangat ketikanya.....hehehehe...

Apa sih Database itu , dan apa hubungannya dengan kalimat perancangan database? kalau dilihat dari kalimatnya sih dah pada tahu ya hubungannya....hehehehe

 Database merupakan .......sistem yang penting dalam sebuah program.......sebagai tempat penyimpanan data yg dimasukan melalui interface program......  nah kalau metode yang berkembang sekarang yaitu menggunakan metode RDBMS (Relational Database Management System).....cara kerjanya gimana??.......mau tahu? atau mau tahu bangatttt?...hahahaha....

ini dia cara kerjanya yaitu Metode RDBMS bekerja dengan cara tabel yang saling berhubungan satu dengan yang lainnya...untuk apa sih???....Untuk membentuk sebuah informasi yang dihubungkan oleh kunci.....hahahaha kok ada kuncinya....hehehe jgn salah arti dlu ya maksudnya kunci ini yaitu sebuah primary key dan foreign key. fungsi database disini sangat cruasial,  so database yang anda buat harus patuh dan mengerti perintah yang diberikan program....aishhh...dalam beberapa kasus database seringkali mengalami masalah....seperti penurunan performance.......Pesan kesalahan atau bahkan hasil laporan yang tdk sesuai dgn keinginan..... Nah maka dari itu kita harus membuat yang namanya perancangan database yg merupakan faktor penting dalam membuat program berjalan dengan baik untuk menghindari kesalahan2 proses dalam database.....istrahat dulu smbil ngopi.....capeh ngetiknya....wkwkwkw

Ok lanjutt ke intinya...

OPTIMALISASI DATABASE
Berikut merupakan beberapa hal yang digunakan untuk mengoptimalkan kinerja dari database :
  • Memahami Normalisasi Database 
Normalisasi Database menghindari kesalahan laporan data dan double entri data. Misalnya..ada 2 nama petugas yang sama namun dengan alamat yang berbeda, jika itu dibuat dalam satu tabel tanpa dibantu kode petugas, tentu program akan kesulitan mengidentifikasi petugas tersebut.....kita aja bingung apalagi komputer...hahaha sepandai2 apapun komputer tapi dibuat oleh manusia...jadi mana yang lebih pandai??

  • Optimalisasi Index
Gunannya untuk meningkatkan proses pencarian. kita harus mengetahui field yang akan diindex karena tidak semua field memerlukan...Sistem pencarian dapat menggunakan index scan dan tabel scan...Apa itu index scan???....suatu proses pencarian yang dilakukan dengan membaca pada file index tidak langsung pada tabel sedangkan pada tabel index proses pencarian dilakukan langsung pada tabel database record per record........lalu apakah index scan lebih cepat dalam proses pencariann??? hmm belum tentu juga untuk data yang sedikit dan menmpilkan data secara keseluruhan tabel index bisa dibilang paling efektif namun jika untuk pencarian record denga data yang besar pada field tertentu, index scan merupakan cara yang paling efektif karena dapat mengurangi pembacaan I/O sehingga menghasilkan kinerja yang lebih cepat. I/O)Input/Output).
Sebagai patokan gunakan field yang sering diakses dengan klausa WHERE, JOIN, ORDER BY, GROUP BY.
  • Menentukan Tipe Data
Menentukan tipe data merupan gampang2 susah...Apakah menggunakan tipe data yang kecil atau yang besar, denganseiring 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 Null
Jika 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 Dibaca
SQL memang merupakan bahas declarative, tidak mengherankan memang kita menulis Query dalam bentuk kalimat yang panjang, walaupun hanya untuk menmbahkan 1 field....
hmm.....Sebaiknya ni dihindari penulisan Query yang panjang dalam satu kalimat selain nantinya kesusahan dalam memahami dan melakukan modifikasi cara tersebut kadang mebuat program untuk membaca perintah dari skrip. Pemilihan huruf besar dan kecil dpt mempermudah pembacaan misal: konsisten menuliskan dengan huruf kapital untuk keyword SQL, dan tambahkan komentar jika diperlukan untuk memudahkan identifikasi..........:)
  • 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 BY
 Perintah 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 Operator
WHERE 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 Database
Jika 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. Jika ingin menyimpan gambar sebaiknya berupa link dari gambar tersebut...
  • Pengukuran Kinerja
ada 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.
  • Validasi
Teknik validasi merupakan teknik dimana dimana memberikan batasan-batasan akses dalam sebuah program. Silahkan cari kelemahan program dan berikan validasi untuk melindungi program dari kemungkinan penggunaan user yang dapat menyebabkan program error, karena tidak sesuai dengan standar penggunaan yang sudah dibuat....

Sekian dulu postingan tentang OTIMALISASI DATABASE...
Masih banyak teknik Optimalisasi Database atau teknik mengoptimalkan kinerja database yang belum dibahas....silahkan mencari2 pada sumber yang lain....
Semoga Bermanfaat................

1 comment: