index'in Fazlalığı Append, update,edit ne yönde etkiler

MS SQL Server veritabanı ve SQL komutlarıyla ilgli sorularınızı sorabilirsiniz. Delphi tarafındaki sorularınızı lütfen Programlama forumunda sorunuz.
Cevapla
Kullanıcı avatarı
pro_imaj
Kıdemli Üye
Mesajlar: 1364
Kayıt: 18 Oca 2005 05:45
Konum: Dünyadan

index'in Fazlalığı Append, update,edit ne yönde etkiler

Mesaj gönderen pro_imaj »

Merhaba;

Veri tabanında 6 tane birincil index var bunlardan 2 tanesinin sıralamasıda Z-A şeklinde index fazlalığının append, update, edit, insert işlemlerinde ne gibi yavaşlık veya sorunlara neden olabilr acaba!

Not:6000 kayıtı (tablede 120 alan var) yaklaşık 4 dakikada Insert ediyor.

Saygılarımla
Teşekkürler.
Gün gelecek, dilleri, elleri ve ayakları yapmış oldukları bütün kötülükleri tek tek bildirerek aleyhlerinde şahitlik edecektir. [Nur Suresi 24]
_________________
Hakan Can
Üye
Mesajlar: 634
Kayıt: 04 Mar 2005 04:27
Konum: Ankara

Mesaj gönderen Hakan Can »

Çok kaydı teker teker INSERT yapma durumu söz konusu olduğunda şöyle bir yöntem izlenebilir.

MS SQL'de başına # koyarak geçici oluşturulan tablolardan oluşturup, kayıtları buna yapıp, sonra bundan tek komutla asıl tabloya INSERT INTO yapıp, en sonunda # lı tabloyu DROP ederek çok daha kısa sürede toplu kayıt yapılmış olur.

Bu yöntem daha da geliştirilip belirli sayıda kayıtda bir tekrarlanabilir.
Bu esnada aralarda TRUNCATE TABLE komutu kullanılabilir.
Kullanıcı avatarı
mussimsek
Admin
Mesajlar: 7603
Kayıt: 10 Haz 2003 12:26
Konum: İstanbul
İletişim:

Mesaj gönderen mussimsek »

Fazla indeks sanılanın aksine programı yavaşlatır. Her kayıt ekleyişte ne kadar indeks varsa, veritabanı onun için kayıtlar ekler.

Ben genelde bir primary key + foreign keyler için indeks tanımlıyorum ki bunlarda zaten otomatik istemesinizde indeks yapıyor : ) Onun dışında raporlarda genelde tarih kullanıldığı için tarih alanını indeks yaparım.

Diğer türlü kompleks raporlarda ise sp yapıp, gerekli sıralamaları vs. sp'de yapmak en güzeli.

Kolay gelsin...
Kullanıcı avatarı
pro_imaj
Kıdemli Üye
Mesajlar: 1364
Kayıt: 18 Oca 2005 05:45
Konum: Dünyadan

Mesaj gönderen pro_imaj »

Değerli cevaplarınız için tşk ederim.

@Hakan Can hocam zaten sizin söylediğinize yakın bir mantıkla hareket ediyorum, bazen olmasada ara sıra insert yaparken baya bir bekleme oluyor .

Mustafa hocam dediğiniz gibi komplike raporlar için sp en iyisi muhakkak.

o zaman şöyle sorayım 6 tane index çokmu (Performansı kullanıcınında hissedeceği şekilde çok fazla etkilermi.)

Saygılarımla
Teşkkürler.
Gün gelecek, dilleri, elleri ve ayakları yapmış oldukları bütün kötülükleri tek tek bildirerek aleyhlerinde şahitlik edecektir. [Nur Suresi 24]
_________________
Glen
Üye
Mesajlar: 277
Kayıt: 12 Eki 2005 11:58

Mesaj gönderen Glen »

Eger tablonuzda trigger kullanilmiyorsa BULK INSERT kullanmakta da fayda olacagini düsünüyorum.
Cevapla