Pentingnya sebuah Indexing pada Database Microsoft SQL Server

 on Thursday, May 24, 2018  


Sering sekali saya mendengar keluhan dari pengguna aplikasi web-base atau aplikasi online yang diakses melalui jaringan internet. Keluhannya seperti sebuah lagu pop lama yang sering kali kita dengar, yaitu akses database lemot alias lambat bukan main.

Apa yang harus dilakukan jika aplikasi lambat karena kinerja database yang lemot dan lambat bukan main? Ada beberapa cara yang bisa kita tempuh sebagai solusi bagi permasalahan tersebut diatas.

Salah satu hal yang terpenting adalah melakukan INDEXING. Index adalah sebuah objek dalam sistem database yang dapat mempercepat proses pencarian (query) data. Index adalah daftar isi yang dapat dipakai oleh query tanpa perlu membaca isi tabel secara langsung.

Index sangat ampuh untuk meningkatkan performa kecepatan pada akses database. Tujuan adanya indeks dalam database antara lain adalah untuk mempercepat pencarian data berdasarkan kolom tertentu.

Tanpa adanya sebuah index pada database, kinerja database sangat menurun dengan sangat signifikan. Hal ini dikarenakan resource CPU banyak digunakan untuk pencarian data atau pengaksesan query SQL dengan metode table-scan. Index membuat pencarian data akan lebih cepat dan tidak banyak menghabiskan resource CPU.

Yang perlu kita pahami bahwa index tidak masuk dalam struktur tabel dalam database dan merupakan obyek struktur data tersendiri. Dengan index, kita dapat secara langsung menunjuk ke baris yang tepat pada tabel, sehingga menghindari terjadinya full table-scan.

Index diperlukan pada saat ada kondisi tabel sangat besar, kolom  sering digunakan sebagai kondisi dalam query, Kebanyakan query menampilkan data lebih dari 2-10% dari seluruh data, dan table jarang di-update.

Penggunaan index di table microsoft sql server pada dasarnya berfungsi untuk mengurutkan data sehingga proses pencarian set data bisa lebih cepat karena data sudah tersusun dengan kondisi tertentu.

Ada beberapa perbedaan clustered index dan nonclustered index pada sql server yaitu dalam clustered index hanya terdiri satu dalam satu table atau hanya dapat diterapkan satu kali pada satu table, sedangkan nonclustred boleh lebih dari satu (banyak). Selain itu clustered index lebih cepat karena menyatu dengan fisik table dan tidak memerlukan memory tambahan sedangkan nonclustered index memerlukan memory tambahan.
Pentingnya sebuah Indexing pada Database Microsoft SQL Server 4.5 5 Darto Iwan Thursday, May 24, 2018 Artikel Indo, Data, Data Mining, Database, Server, Ms SQL, Microsoft, Sering sekali saya mendengar keluhan dari pengguna aplikasi web-base atau aplikasi online yang diakses melalui jaringan internet. Keluha...


2 comments:

  1. Sepertinya sangat menarik sekali Pak. Ada artikel lanjutannya? Saya menggunakan MySQL sebagai pengelola databasenya.

    ReplyDelete
    Replies
    1. ada beberapa artikel terkait ini di blog ini , silakan dinikmati ...:)

      Delete

Silakan berkomentar ....