Ada beberapa hal yg perlu diperhatikan utk membuat index pada column di dalam 
sebuah table.
1. Apakah column yg akan di index tsb sering dipakai pada where clause
--- walaupun dipakai pada where clause tetapi menggunakan function (misal: 
where UPPER(nama) = 'JOKO'),
maka index pada column "nama" tsb tidak akan dipakai. Kecuali kalau menggunakan 
function based index.

2. Jumlah rata2 record hasil select dgn menggunakan column di where clause
--- misal: apabila kurang dari 2% dari total record yg ada maka column tsb 
perlu diindex

3. Distinct value dari column tersebut

Apalagi ya???
BTW, berikut ini adalah hal2 yg juga perlu dipertimbangkan:
1. optimizer yg digunakan (CBO atau RBO)
2. statistics dari table & index
3. histogram
4. normal/reverse index
5. bitmap index & bitmap join index
6. index partitioning
7. virtual index
8. rebuild index, khususnya utk table yg sering di delete & di update (pada 
column yg diindex)
9. logging/nologging index

cmiiw,
bw


--- In [email protected], Febry Kurniawan <febr...@...> wrote:
>
> Dear mas Aji
> 
> untuk index setahu saya sih tidak ditentukan oleh maks row data.
> lalu untuk insert memang lebih cepat jika tidak ada index karena jika ada 
> index lalu melakukan insert data maka sambil insert sambil melakukan indexing 
> sehingga lama insert nya :)
> 
> mungkin bro Yulius bisa menambahkan :D
> 
> Regards,
> Febry Kurniawan
> 
> 
> ________________________________
> From: Aji Perdana <aji_perd...@...>
> To: [email protected]
> Sent: Thu, April 22, 2010 2:18:03 PM
> Subject: Re: [indo-oracle] Re: Indexed Table join with non-indexed table
> 
>   
> Mas Yulius,
> 
> Thanks atas infonya.
> btw ada referensi untuk batas maksimum row data (dengan total bytes tertentu 
> per row) dimana table harus diindex?
> soalnya AFAIK insert data ke table akan lebih cepat jika tidak ada index-nya 
> (CMIIW please),
> karena aplikasi yg sedang dibangun akan sangat intens di aktifitas insert 1 
> table (analogi logging)
> 
> ____________ _________ _________ __
> From: yulius_wibowo <yulius_wibowo@ yahoo.com>
> To: indo-oracle@ yahoogroups. com
> Sent: Thu, April 22, 2010 11:17:46 AM
> Subject: [indo-oracle] Re: Indexed Table join with non-indexed table
> 
> Mas Aji,
> 
> L.L_id (PK) => by default harusnya sudah ada indexnya karena Primary Key.
> S.S_id (PK) => by default harusnya sudah ada indexnya karena Primary Key.
> L.S_id (FK) => by default belum ada indexnya.
> 
> berdasarkan where clause yg ada:
> where l.S_id = s.S_id
> and l.L_id = 1234
> 
> Data akan dicari berdasarkan urutan sbb: (Asumsinya menggunakan Rule Base 
> Optimizer)
> 
> 1. data di table L dgn nilai L_id = 1234 akan dicari terlebih dulu,
> karena L_id adalah Primary Key , maka kemungkinan data yg didapat hanya 1 
> atau 0. Karena L_id-nya sudah terindex (Primary Key), maka plan-nya adalah 
> UNIQUE INDEX SCAN. Dari pengaksesan index akan didapat ROWID. Dengan rowid 
> tsb akan dicari recordnya. Termasuk data utk column L.S_id.
> 
> 2. Dari data L.S_id yg didapat, sebut saja nilai L.S_id = 5678
> akan dicari data dari table S (s_id) yg nilainya 5678. Karena S.S_id adalah 
> primary key, kemungkinan data yg didapat hanya 1 atau 0.Karena S.S_id-nya 
> terindex (Primary Key), maka plan-nya adalah UNIQUE INDEX SCAN, bukan FULL 
> TABLE SCAN.
> 
> cmiiw,
> bw
> 
> --- In indo-oracle@ yahoogroups. com, Aji Perdana <aji_perdana@ ...> wrote:
> >
> > Halo Masters,
> > 
> > Numpang tanya, klo ada table yg isinya bisa jutaan baris data dan ter-index 
> > (tbl_L)
> > di query join dengan table lain yg isinya cuma puluhan baris tapi tidak 
> > ter-index (tbl_S)
> > apakah query yg di execute akan berlaku indexnya atau tetap fullscan table?
> > 
> > berikut simulasinya:
> > tbl_L
> > ==========
> > L_id (PK) -> "index1"
> > S_id (FK) -> "index1"
> > data
> > 
> > tbl_S
> > ==========
> > S_id (PK)
> > data
> > 
> > Query :
> > select l.data, s.data
> > from
> > tbl_L l,
> > tbl_S s,
> > where l.S_id = s.S_id
> > and l.L_id = 1234
> > 
> > 
> > Mohon pencerahannya 
> > Terimakasih
> > 
> > Regards,
> > Aji
> > 
> > 
> > 
> > 
> > [Non-text portions of this message have been removed]
> >
> 
> [Non-text portions of this message have been removed]
> 
> 
> 
> Reply to sender | Reply to group | Reply via web post | Start a New Topic 
> Messages in this topic (8) 
> Recent Activity:      * New Members 35 
> Visit Your Group 
> --
> -----------I.N.D.O - O.R.A.C.L.E---------------
> Keluar: [email protected]
> Website: http://indooracle.wordpress.com
> http://www.facebook.com/group.php?gid=51973053515
> -----------------------------------------------
> 
> Bergabung dengan Indonesia Thin Client User Groups, 
> Terminal Server, Citrix, New Moon Caneveral, di:
> http://indo-thin.blogspot.com 
> MARKETPLACE
> Stay on top of your group activity without leaving the page you're on - Get 
> the Yahoo! Toolbar now.
> 
> ________________________________
> 
> Welcome to Mom Connection! Share stories, news and more with moms like you.
> 
> ________________________________
> 
> Hobbies & Activities Zone: Find others who share your passions! Explore new 
> interests.
>  
> Switch to: Text-Only, Daily Digest • Unsubscribe • Terms of Use
> .
> 
> 
>       
> 
> [Non-text portions of this message have been removed]
>


Kirim email ke