Indexing database untuk performa query.

Dalam membangun sebuah website database adalah punya peran yang sangat penting. Salah satu yang perlu diperhatikan saat membuat struktur database pada aplikasi adalah indexing table. Indexing ini banyak dilupakan, padahal sangat besar pengaruhnya dalam performa query, terutama query SELECT.

Yang perlu kita ingat saat membuat sebuah table database adalah field apa yang nanti bakal jadi acuan query. Jadi acuan query maksudnya field itu jadi acuan saat query SELECT dengan syntax WHERE, ORDER BY, GROUP BY. Field yang jadi acuan syntax-syntax tersebut mutlak harus diindex.

Kita ambil contoh, table sebagai berikut:

nama table : artikel
`id` int(11) auto_increment-primary
`idrubrik` smallint(6)
`judul` varchar(255)
`subjudul` varchar(255)
`summary` varchar(255)
`isi` text
`penulis` varchar(100)
`tanggalsistem`
`tanggalberita`
`headline` char(1)
`remark` varchar(100)

Dari table di atas yang perlu di index adalah field :

  • idrubrik, karna akan ada query listing berita dengan idrubrik tertentu
  • judul, mungkin akan ada query mencari judul yang mirip dengan suatu kata
  • tanggalberita, karna semua query berita biasanya order by tanggalberita
  • untuk field isi harus dipertimbangkan, akan adakah pencarian di field ini, jika ada harus diindex juga dengan metode fulltext-index, karena tipe data text.
  • untuk id, tidak perlu diindex karena primary key otomatis terindex.

Jadi dalam kita menentukan field mana yang akan diindex, kita harus pertimbangkan di aplikasi nanti field tersebut jadi acuan query atau tidak.

index sangat baik dilakukan untuk table yang banyak dibaca sedikit ditulis, misalnya table berita suatu portal. Karena untuk record yang sangat banyak penulisan index juga makan resources.

Aplikasi yang baik seharusnya menentukan dengan jelas table akan banyak dibaca atau akan banyak ditulis, karna sangat berpengaruh pada indexing dan perlakuan aplikasi terhadap table.

Perihal Del Prio
Saling berbagi, saling memberi, saling menerima. (^.~)v Saling silang tapi bukan kawin silang (^,^)

6 Responses to Indexing database untuk performa query.

  1. manroenisti mengatakan:

    Mantap infox gan!!
    Salam Hangat
    http://www.inter.co.nr

    • Del Prio mengatakan:

      Salam hangat juga boz….

  2. daffyndra mengatakan:

    Bagus juga..boleh tuh kalo mo ngajarin kita..hehehehe tx ya

    • Del Prio mengatakan:

      trim juga boz dah mampir, heheh.. lebih tepatnya kita blajar besama kale ya boz…😀

  3. Mas Wawa mengatakan:

    mantep mantep mantep mantep.
    gek golek bojo kang😛

    • Del Prio mengatakan:

      wkikikik….. goleke nang ngendi boz😀

Tinggalkan Balasan

Isikan data di bawah atau klik salah satu ikon untuk log in:

Logo WordPress.com

You are commenting using your WordPress.com account. Logout / Ubah )

Gambar Twitter

You are commenting using your Twitter account. Logout / Ubah )

Foto Facebook

You are commenting using your Facebook account. Logout / Ubah )

Foto Google+

You are commenting using your Google+ account. Logout / Ubah )

Connecting to %s

%d blogger menyukai ini: