Langsung ke konten utama

UTS PBI

Optimasi Kueri dan SQL Tuning (Post Test)


[Copy]Optimasi Kueri dan SQL Tuning (Post Test)

apakah optimasi kueri penting?

Semakin bertambahnya data pada suatu database, proses pengaksesan terhadap data-data ini akan menjadi lambat. Jadi, optimasi query sangatlah perlu untuk dilakukan agar pengambilan maupun penyimpanan data dapat dilakukan dengan waktu yg sangat minimal.
  1. Index
    Mengindeks kolom dalam tabel adalah cara yang biasa dilakukan untuk mengoptimalkan hasil pencarian query SQL.  Membuat indeks dalam sql tak ubahnya seperti membuat daftar indeks pada buku. Bayangkan ketika anda ingin mencari sebuah section pada buku mengenai suatu hal dan harus mencari setiap halaman dari awal sampai akhir, dengan indeks anda cukup mencari urutan indeks kata tersebut dan langsung membuka halaman rujukan yang ada pada indeks.
  2. Menentukan Tipe Data
    Tipe data sangat menentukan dalam penyediaan ukuran penyimpanan. Misalnya char dan varchar. Keduanya memiliki fungsi yang sama, namun ukuran penyimpanan dari char adalah tetap (fixed-length) dan varchar menyesuaikan terhadap isi data (variable-length).
  3. Jangan izinkan Allow NULL
    Nilai NULL dapat menimbulkan kerancuan dan mengakibatkan kesalahan logika dalam pemrograman. Dampak negatif lainnya adalah nilai NULL menggunakan byte tambahan yang menambah beban query. Untuk mengatasi nilai NULL, kita dapat menerapkan pemberian nilai default.
  4. Query yang readable
    Query yang ditulis dalam satu baris panjang akan menyulitkan pemahaman dan modifikasi. Untuk itu kita dapat memecah penulisan query agar lebih mudah dipahami. Selain itu kita juga dapat mengatur penggunaan huruf besar dan kecil, serta tetap konsisten dalam penulisan query.
  5. Hindari SELECT *
    Bayangkan ketika suatu tabel memiliki banyak field dan baris, kemudian Anda melakukan  perintah SELECT * terhadap tabel tersebut. Berapa lama query ini akan menampilkan hasil? Untuk itu, cukup lakukan SELECT terhadap field yang hendak diakses saja.
  6. Batasi ORDER BY
    Seperti yang kita ketahui, ORDER BY berfungsi untuk mengurutkan data. Ketika kita menyisipkan ORDER BY pada query, kita tengah menambahkan satu proses dalam statement kita. Untuk itu, gunakan ORDER BY hanya ketika benar-benar dibutuhkan.
  7. SUBQUERY atau JOIN
    Utamakan penggunaan perintah JOIN daripada SUBQUERY, karena dalam kasus umum memiliki performa lebih cepat.
  8. Gunakan WHERE dalam SELECT
    Dengan bantuan WHERE di dalam SELECT, kita dapat mempercepat proses eksekusi karena hanya menampilkan eksekusi yang bernilai benar.
  9. Kecepatan akses operator
    Misalkan operator dalam WHERE 1 = 1 dengan WHERE 0 <> 1, operator = akan diproses lebih cepat dibandingkan dengan operator <>.
  10. Membatasi jumlah record
    Pembatasan terhadap jumlah record yang ingin ditampilkan dapat dilakukan dengan LIMIT.
  11. Batasi penggunaan Function
    Sebaiknya gunakan fungsi-fungsi yang telah disediakan oleh SQL.
  12. Baca dari kiri ke kanan
    Proses eksekusi akan dilakukan dari kiri ke kanan pada query. Dengan catatan tidak ada kondisi yang diprioritaskan (dengan tanda kurung).
  13. Symbol Operator
    Penggunaan operator simbol seperti <, >, =, !=, ><, dll sangat membantu dalam menghasilkan kecepatan pencarian dari query.  Cara kerja database management system (DBMS) dalam menerapkan query dengan kondisi “>” dibandingkan dengan “=>” akan sedikit berbeda, apabila kita menggunakan “=>” maka DBMS akan menerapkan dua kriteria pada setiap hasil.

Kesimpulan

Optimasi kueri sangat vital fungsinya dalam manajemen database, karena optimasi membantu mempercepat pemrosesan data sehingga waktu yang digunakan dapat sangat singkat.
Optimasi kueri dapat dilakukan dengan banyak cara, yaitu: dengan menggunakan indek, operator, pengondisian dan sebagainya.

Komentar

Postingan populer dari blog ini

Perbedaan Penduduk dan Masyarakat

1.       Pengertian Penduduk Penduduk adalah semua orang yang tinggal atau menetap di suatu wilayah selama enam bulan  atau lebih dan atau mereka yang tinggal berdomisili kurang dari enam bulan tetapi bertujuan menetap dan secara hokum berhak tinggal di daerah tersebut. Pertumbuhan penduduk diakibatkan oleh tiga komponen yaitu: fertilitas, mortalitas dan migrasi. 2.       Pengertian Masyarakat Masyarakat adalah sejumlah manusia yang merupakan satu kesatuan golongan yang berhubungan tetap dan mempunyai kepentingan yang sama. Seperti, sekolah, keluarga, perkumpulan, Negara semua adalah masyarakat. Dalam ilmu sosiologi kita mengenal ada dua macam  masyarakat, yaitu masyarakat paguyuban dan masyarakat petambayan. Masyarakat paguyuban terdapat hubungan pribadi antara anggota- anggota yang menimbulkan suatu ikatan batin antara mereka. Pada masyarakat patambayan terdapat hubungan pamrih antara anggota-anggota nya. Dapat dilihat bahwa Penduduk adalah orang yang menem

Pertumbuhan Penduduk Australia

Dr Richard Denniss dari Institut Australia (TAI) mengatakan pada tahun 2014 penduduk Australia bertambah 400 ribu orang dan itu menunjukan tingkat laju pertumbuhan penduduk Australia ternyata jauh lebih cepat dari prakiraan sebelumnya. Penduduk Australia sudah mencapai  24 juta jiwa pada akhir tahun 2015. Seiring dengan jumlah kelahiran bayi yang terus meningkat, terutama bayi dari keluarga imigran baru. Berdasarkan Australian Bureau of Statistics tercatat bahwa populasi bertambah 1.6% pada akhir tahun 2017.  Dalam 15 tahun terakhir sejak tahun tahun 2000 tercatat populasi warga pendatang di Australia telah meningkat sebesar 2,75 juta orang. Angka ini melebihi jumlah total pendatang selama tahun 1950-an, 60-an dan 70-an yang hanya mencapai  2,54 juta. Kemajuan yang diraih Australia membuat banyak orang yang ingin tinggal di Australia, dan kenyataannya tingkat tertinggi migrasi ke Australia terjadi tahun 2009, tahun setelah terjadi krisis keuangan global dimana Australia

Perkembangan Desktop pada Sistem Operasi Linux

Pernahkan kita berpikir bagaimana sistem operasi yang kita gunakan saat ini dapat memiliki antarmuka yang interaktif?  Mengapa kita sangat familiar dengan antarmuka pada Sistem Operasi Windows sedangkan tidak dengan Sistem Operasi Linux?  Dan mengapa setiap distribusi linux memiliki tampilan yang sangat berbeda satu sama lain padahal pada dasarnya sesama linux? Pada dasarnya linux hanyalah sebuah kernel, yaitu inti atau jantung dari sistem operasi. Karena sifatnya yang open source, setiap orang bebas membangun sistem operasinya sendiri menggunakan kernel tersebut sesuai dengan visi mereka masing-masing. Ini sebabnya linux memiliki banyak distribusi, kita mengenal berbagai macam linux seperti Ubuntu, Debian, Archlinux, dan sebagainya.  Desktop Environment Pada Dekstop Linux dikenal istilah Dekstop Environment yang merupakan kesatuan paket komponen GUI dengan fungsi tertentu seperti panel, system tray, window manager, dll sehingga memungkinkan penggunanya mendapatkan pen