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] >

