yak, dah di buat. mohon yg jago jago, memberikan ilmunya
tentang indexing
-apa itu indexing
-apa saja req nya
-bagaimana membuatnya
-apa saja yg diperhatikan
			
			
			
				ga gitu tau jg sih
Quote from: hatRed on 07 January 2009, 04:49:47 PM
-apa itu indexing
sebuah column dalam table yg fungsinya menyusun penyimpanan lebih rapi (berdasarkan index tadi) shg proses cari jadi lebih cepat
Quote
-apa saja req nya
ga ada keknya :P
Quote
-bagaimana membuatnya
buat column index aja
Quote
-apa saja yg diperhatikan
em... monitor pas ngetik mungkin
			
				Hahaha... itu bukan binatang sdr. hatRed. Itu merupakan malaikat dimana user sudah tidak tahu bagaimana merapikan databasenya.
Untuk keterangan mungkin bisa dilihat disini.
http://20bits.com/articles/interview-questions-database-indexes/
http://mattfleming.com/node/192
Bagaimana cara menggunakannya?
Sebenarnya simple saja. Pada saat sdr. membuat sebuah tabel di database secara otomatis dia melakukan indexing. Hal ini dinamakan indexing database. Ada pula dinamakan index tabel dimana index dilakukan pada saat sdr. menaruh primary key pada tabel tersebut. Maka secara otomatis index mengacu pada field primary.
req?
Tidak ada req, yang penting ada database dan tabel
Perhatikan?
Harus diperhatikan bila hal ini dirubah menjadi manual. Sdr harus tahu mana yang paling dominan dalam hal pencarian. Misalnya field id yang paling dominan dalam akses maka index mengacu pada field id.
			
			
			
				hmmm..... trus mengenai indexing yg tadi masalah si kiman (kok masih aneh ya ma namanya :hammer:)
itu yg mana?
			
			
			
				Quote from: hatRed on 07 January 2009, 04:49:47 PM
yak, dah di buat. mohon yg jago jago, memberikan ilmunya
tentang indexing
-apa itu indexing
-apa saja req nya
-bagaimana membuatnya
-apa saja yg diperhatikan
sebelum dijawab.. tentukan dulu databasenya.. tiap database memiliki cara indexing yang berbeda. dan ada keunggulan masing2 db ditinjau dari segi kecepatan / penampilan... ada database yang file index dan file db nya tergabung, ada juga yang terpisah. 
			
 
			
			
				kalau dari sudut lain *selain indexing relational database, indexing adalah daftar keyword yg tersusun dari sekelompok data yg memiliki rujukan kemana dia ada. Misalnya ada teks sebesar 10 mb. kalau disearch tentu harus cari sequensial. Kalau di index, kita cari diindex lalu langsung bisa tahu dimana teks itu ada.
			
			
			
				INDEX'ing itu kalao dalam kehidupan sehari-hari bagaikan "Table of Content"-nya buku...
INDEX'ing itu bagaikan pengelompokan... Yang cewe... sebelah kanan... Yang cowo sebelah kiri...
Tujuannya? Supaya gampang di cari...
			
			
			
				Contoh kasus...
CREATE TABLE IF NOT EXISTS `tablename` (
  `id` int unsigned NOT NULL auto_increment,
  `kode_barang` char(10) default NULL,
  PRIMARY KEY  (`id`),
  KEY `kode_barang` (`kode_barang`(2))
);
lalu... ada 100 row... yg isi'nya kira-kira
  1 AA00001
  2 AA00002
  3 CD00001
  4 CD00002
...
100 XY00021
Nagh... dengan INDEX KEY `kode_barang` (`kode_barang`(2))
berarti maksudnya... dua char didepan dikelompok2i...
so... semoa AA di kelompokin.... AB di kelompokin... XY dikelompokin... 
sama si DB Engine
Hasilnya...
serupa kek kita lage ngeliad cewe... cuma lirik yg disebelah kanan... dagh ktmu... 
Inti'nya sich untuk mempercepat searching... WHERE kode_barang = '.....';
Yang perlu diperhatiin...
Jangan terlalu sering nge-update yg dikelompokin...
contoh negh... barisan cewe sebelah kanan... barisan cowo sebelah kiri...
dah rapi-rapi semoanya...
tiba-tiba ada cowo yg nyempil didalem barisan cewe...
elo rubah status dia ke cowo... dengan berarti elo mesti pindahin dia kebarisan cowo...
dan... kacaulah barisan...
yg dibelakang si cowo gemblung ini mesti maju kedepan tuk ngerapiin barisan...
so... INDEXING... kurang bagus peforma'nya kalao bakalan sering di UPDATE2x... (berubah2x value'nya)
			
			
			
				primary key n unique key ketika di create, otomatis uda ada index nya...
			
			
			
				ada metode lain selain indexing untuk searching?
uda lama neh ngga maen database.. ^-^
			
			
			
				sdr. kemenyan. kok yang kiri ga diliat lagi? hahaha... ;D
sdr. Lex Chan indexing bukan searching tetapi penerapan untuk siap-siap perang antar query bila dimaksud kepada indexing table
			
			
			
				si Index adalah cara mencari dgn cepat (dgn index file) dimana keuntungnya.. bila ada penambahan, penghapusan, perubahan data, maka index filenya dpt update dgn seketika... dan bila index filenya rusak, dgn mudah dibuat lagi (rebuilt). Dgn adanya sistem index ini, database dpt memiliki lebih dari satu index...
sedangkan databse yg tanpa index.... yg sorted (diurut) adalah tidak efficient apabila ada perubahan data (primary key), dan penambahan data... maka database akan disorted lagi yg memakan waktu lama.
utk memakainya... ya harus dibuat dulu (create)....
yg harus diperhatikan... ingat saya index keynya sebaiknya sama panjang (same length)...
dan utk date...pakai ascii date....
primary key, foreign key, etc...
pertanyaan : Kalau utk suta2 Buddhist, apa yg bisa dibuat utk index key? dan kenapa?
thanks
kira2 begitulah .....(sptnya lagi ujian atau lagi di interview)
			
			
			
				Quote from: polandio on 07 January 2009, 11:18:04 PM
sdr. Lex Chan indexing bukan searching tetapi penerapan untuk siap-siap perang antar query bila dimaksud kepada indexing table
lho... indexing kan emg utk searching... bener ga?
			
 
			
			
				menanggapi ide bro johan3R
indexing di DC ini gmana ya?
			
			
			
				yah sama teorinya, dibikin daftar kata :)
			
			
			
				Quote from: tesla on 08 January 2009, 08:30:08 AM
Quote from: polandio on 07 January 2009, 11:18:04 PM
sdr. Lex Chan indexing bukan searching tetapi penerapan untuk siap-siap perang antar query bila dimaksud kepada indexing table
lho... indexing kan emg utk searching... bener ga?
secara umum, jawabannya iya. utk index yg independen (bukan primary n unique key), jumlah data/record sebaiknya ribuan ato lebih. kalo sedikit, indexing malah memperberat kinerja DB.
secara spesifik, indexing mempercepat data retrieval (SELECT Statement).
berbeda dg primary key, primary key itu penting. di DB Ms. Access, kalo ga ada primary, table ga bs di create...
bener ga?
			
 
			
			
				Agar lebih cepat menangkap, apakah itu indexing. Wa akan memberikan contoh yang simpel. Mudah-mudah bener. Hehehe...
Misalnya terdapat kumpulan huruf seperti ini
AASSSBSSBSBSBSUUDUDUDBJJHHEEE
Bila kita ingin mencari J maka komputer secara otomatis akan membabi buta dalam hal pencarian. Hal ini kita kenal sebagai Brute-force searching. Tetapi bagaimana jika kita menggunakan algoritma indexing? Contoh paling sederhana adalah jika setiap huruf kita beri index (angka setiap hurufnya, A-1, A-2, S-3, S-4, dstnya).
Pada saat kita ingin mencari huruf J maka komputer sudah dapat menangkap mana dimana sih J itu.
Tapi ini juga masih memerlukan memori yang sangat besar. Maka dikembangkanlah sorting (Pengurutan) untuk memudahkan pencarian. Hingga pada saat ini, sebagian database menggunakan algoritma yang umum dalam indexing yaitu B-TREE algorithm (Bisa dilihat pada post wa yang terdahulu).
sdri. kiman, sebenarnya didalam ms. access db, tabel juga bisa dibuat walaupun tanpa primary key. Coba saja sdri. menggunakan query untuk membuat tabel tanpa primary key. GUI nya memang memaksa kita bahwa setiap tabel harus mempunyai primary key.
Semoga membantu.
			
			
			
				Quote from: kiman on 08 January 2009, 11:04:25 PM
secara spesifik, indexing mempercepat data retrieval (SELECT Statement).
sepertinya bukan mempercepat proses di statement SELECT nya, tapi di WHERE clause nya... CMIIW
proses pencarian dapat terjadi di UPDATE & DELETE jg...
mis:
UPDATE ... WHERE ...
DELETE ... WHERE ...
& pastinya
SELECT ... WHERE ...
			
 
			
			
				 [at] polandio
oo kalo saya si GUI hehehe... baru tau, kalo query nya bs too...
umumnya B-TREE index. di oracle ada bitmap index juga. baru baca...
 [at] tesla
oh iya ya... bener2...
thx uda dibenerin...
 [at] hatred
uda ngerti blm ko?
			
			
			
				blon semua,
mungkin bisa kasih contoh
apakah index itu berupa database? 
kalo iya, kek gimana? tablenya apa aja? fieldnya kek gmana?
bisa diberikan contoh fisiknya?
 [at] kiman (teb) ^-^
apakah pas benchmarkingnya cuman, populasi data trus ngetes pake query doank?
			
			
			
				Quote from: hatRed on 09 January 2009, 08:09:27 PM
apakah index itu berupa database? 
indexing itu sebenarnya dapat ditemukan dalam aplikasi kehidupan kita sehari2...
contoh yg sederhana: 
buku telpon. yg dulu ada index A, B, ... Z
index tsb mempermudah kita mencari... mis, mo cari nama hatred, maka saya mulai cari index H & langsung membuka halaman yg isi nama2 yg berawalan H.
detail implementasi dalam database bisa beda2...
disinilah sdri kiman ingin menguji performance antara 2 database yg dikenal umum.
			
 
			
			
				 [at] bos tesla
maksudnya yg si kiman mo kerjain itu, dimana kita bisa buka database indexnya?
i dah punya sql server, tapi nyari table index yg mana ya?
			
			
			
				Untuk SQL Server 2008. Lihat saja disini
http://msdn.microsoft.com/en-us/library/ms188783.aspx
			
			
			
				Quote from: hatRed on 09 January 2009, 09:49:17 PM
 [at] bos tesla
maksudnya yg si kiman mo kerjain itu, dimana kita bisa buka database indexnya?
i dah punya sql server, tapi nyari table index yg mana ya?
wah kiman beruntung nih, dapat 1 partner sukarela...
coba tanya ama sdri kiman aja... aye jg ga jelas skripsinya gimana
			
 
			
			
				Quote from: hatRed on 08 January 2009, 09:28:38 AM
menanggapi ide bro johan3R
indexing di DC ini gmana ya?
Mungkin sejenis forum ini....
ada databse, indexing, dan Template (utk penampilan)...
yg mirip2 blogs begitu.... dan bisa juga index nya ada beberapa macam (mungkin)...
ada yg perlu cepat atau ada yg cukup search biasa.....
Dan yg lebih menarik adalah bagaimana membuat struktur databasenya utk
mengakomodir keinnginan user....
salah satu topik indes spt yg di visualFoxpro... rushmore.... mungkin menarik 
utk dipelajarin bagi yg ingin jualan di teknology index.... sedangkan bagi pemakai...
(orang awam)... cukup mempelajarin STATEMENT utk menggunakannnya....
Adakah yg tau mengenai word count di tripitaka?....
kata2 manakah yg paling sering dipakai serta memiliki makna?
spt PENCERAHAN... berapa kali disebutkan?...
TUHAN berapa kali disebutkan?
			
 
			
			
				 [at] yg tanya skripsi wa kek gimana
gini koko...
wa ngebandingin kecepatan indexing pada table di Oracle n SQL Server.
cara nya gini: wa create table, create index pada salah satu column di table tsb. trus wa insert sktr 1000 data kesitu. sebelum insert, wa catat waktunya. sesudah insert, wa catat lg waktunya. trus dibandingin antara oracle vs sql server... uda gitu doank... kalo uda selesai, tgl sidang deh...
			
			
			
				oya, biar gampang ttg index, di ebook jaman skrg kan bagian akhirnya ada INDEX, ya kurang lebih sama kek gitu, biar mempermudah pencarian kata pada ebook tsb. hasilnya ya berupa halaman dimana kata tsb di ebook ybs...
			
			
			
				Quote from: kiman on 10 January 2009, 02:25:39 PM
 [at] yg tanya skripsi wa kek gimana
gini koko...
wa ngebandingin kecepatan indexing pada table di Oracle n SQL Server.
cara nya gini: wa create table, create index pada salah satu column di table tsb. trus wa insert sktr 1000 data kesitu. sebelum insert, wa catat waktunya. sesudah insert, wa catat lg waktunya. trus dibandingin antara oracle vs sql server... uda gitu doank... kalo uda selesai, tgl sidang deh...
gitu doank bisa jadi skripsi ???
aneh, sungguh aneh
			
 
			
			
				Quote from: hatRed on 10 January 2009, 03:20:01 PM
Quote from: kiman on 10 January 2009, 02:25:39 PM
 [at] yg tanya skripsi wa kek gimana
gini koko...
wa ngebandingin kecepatan indexing pada table di Oracle n SQL Server.
cara nya gini: wa create table, create index pada salah satu column di table tsb. trus wa insert sktr 1000 data kesitu. sebelum insert, wa catat waktunya. sesudah insert, wa catat lg waktunya. trus dibandingin antara oracle vs sql server... uda gitu doank... kalo uda selesai, tgl sidang deh...
gitu doank bisa jadi skripsi ???
aneh, sungguh aneh
mungkin ga 1000 data aja kali...
data yg diuji mungkin jutaan, belum termasuk jenis variasinya
mis: ada data yg sama sekali random, atau ada yg memiliki kesamaan terkelompok.
mungkin kiman jg bisa hitung big o nya kalau seandainya ada membahas algoritma searchingnya.
benar ga kiman?
			
 
			
			
				Quote from: polandio on 08 January 2009, 11:34:18 PM
Agar lebih cepat menangkap, apakah itu indexing. Wa akan memberikan contoh yang simpel. Mudah-mudah bener. Hehehe...
Misalnya terdapat kumpulan huruf seperti ini
AASSSBSSBSBSBSUUDUDUDBJJHHEEE
Bila kita ingin mencari J maka komputer secara otomatis akan membabi buta dalam hal pencarian. Hal ini kita kenal sebagai Brute-force searching. Tetapi bagaimana jika kita menggunakan algoritma indexing? Contoh paling sederhana adalah jika setiap huruf kita beri index (angka setiap hurufnya, A-1, A-2, S-3, S-4, dstnya).
Pada saat kita ingin mencari huruf J maka komputer sudah dapat menangkap mana dimana sih J itu.
Tapi ini juga masih memerlukan memori yang sangat besar. Maka dikembangkanlah sorting (Pengurutan) untuk memudahkan pencarian. Hingga pada saat ini, sebagian database menggunakan algoritma yang umum dalam indexing yaitu B-TREE algorithm (Bisa dilihat pada post wa yang terdahulu).
sdri. kiman, sebenarnya didalam ms. access db, tabel juga bisa dibuat walaupun tanpa primary key. Coba saja sdri. menggunakan query untuk membuat tabel tanpa primary key. GUI nya memang memaksa kita bahwa setiap tabel harus mempunyai primary key.
Semoga membantu.
Kok jadi seperti Hash ya? 
Kalo pake minimal perfect hash, t pencarian bisa nyaris 0 lho !
			
 
			
			
				Quote from: tesla on 10 January 2009, 04:39:22 PM
Quote from: hatRed on 10 January 2009, 03:20:01 PM
Quote from: kiman on 10 January 2009, 02:25:39 PM
 [at] yg tanya skripsi wa kek gimana
gini koko...
wa ngebandingin kecepatan indexing pada table di Oracle n SQL Server.
cara nya gini: wa create table, create index pada salah satu column di table tsb. trus wa insert sktr 1000 data kesitu. sebelum insert, wa catat waktunya. sesudah insert, wa catat lg waktunya. trus dibandingin antara oracle vs sql server... uda gitu doank... kalo uda selesai, tgl sidang deh...
gitu doank bisa jadi skripsi ???
aneh, sungguh aneh
mungkin ga 1000 data aja kali...
data yg diuji mungkin jutaan, belum termasuk jenis variasinya
mis: ada data yg sama sekali random, atau ada yg memiliki kesamaan terkelompok.
mungkin kiman jg bisa hitung big o nya kalau seandainya ada membahas algoritma searchingnya.
benar ga kiman?
ampun koko... ga ngerti big 0 saya... >,<
data nya jg ribuan, ga jutaan coz gile aje ngetik insert nya seberapa banyak kalo jutaan...
>,<
			
 
			
			
				kgk pake script? :D masak diketik query insertnya manual, bisa gempor hehehe
			
			
			
				pake la, diketiknya di file .sql...
			
			
			
				maksudnya utk generate file .sql nya pake program jg aja. biar datanya dirandom pake program
			
			
			
				OOT keknya mysql udah sedian script utk benchmarking...
(eh yg dibicarakan database server yg mana yah?) :hammer:
			
			
			
				ORACLE and SQL Server
itu sih katane si Kiman-teb