folder Tahribat.com Forumları
linefolder Database - Veritabanı
linefolder Mssql - Primary Key Olusturunca İndex De Oluşmuş Oluyor Mu?



Mssql - Primary Key Olusturunca İndex De Oluşmuş Oluyor Mu?

  1. KısayolKısayol reportŞikayet pmÖzel Mesaj
    Hannibal_King
    Hannibal_King's avatar
    Kayıt Tarihi: 22/Ağustos/2010
    Erkek

    sql server da 1 tablo icin primary key olusturdugum zaman ayni zamanda o bir index mi olmuş oluyor.Yok eğer index olmuyorsa tablo hangi boyutlara ulasinca performans icin index tanimlamak gereklidir?

  2. KısayolKısayol reportŞikayet pmÖzel Mesaj
    KodlayanAdam
    KodlayanAdam's avatar
    Kayıt Tarihi: 01/Ekim/2005
    Erkek

    Primary key oluşturduğun kolon için index de oluşturmuş oluyorsun. Fakat bu ekstra index oluşturmamalısın anlamına gelmiyor. Performans artışı için tabloda en çok kullanılan sorgulara uygun indexler oluşturman gerekebilir.


    Hiç savaş görmemiş çocuklarla, hiç barış görüşmemiş çocuklar için adalet farklı anlamlar taşır.
  3. KısayolKısayol reportŞikayet pmÖzel Mesaj
    Hannibal_King
    Hannibal_King's avatar
    Kayıt Tarihi: 22/Ağustos/2010
    Erkek

    Peki hocam mesela 10 kolondan oluşan 1 tabloda index oluşturmak hangi aşamada gözle görülür bir fayda sağlar yani tablomda toplam10 000 satır kayıt varsa index in olması yada olmaması önemli olmaz sanırım? İndex i gerektirecek değer nedir aşağı yukarı?

  4. KısayolKısayol reportŞikayet pmÖzel Mesaj
    snnyk
    snnyk's avatar
    Kayıt Tarihi: 28/Mayıs/2007
    Erkek
    Hannibal_King bunu yazdı

    Peki hocam mesela 10 kolondan oluşan 1 tabloda index oluşturmak hangi aşamada gözle görülür bir fayda sağlar yani tablomda toplam10 000 satır kayıt varsa index in olması yada olmaması önemli olmaz sanırım? İndex i gerektirecek değer nedir aşağı yukarı?

    eğer kolonda search yapıyorsan ve bu kolonda string öğeler içerisyorsa çok farkeder 

    mesela name kolonundan like yapıyorsan veya order by ile sıralama yapıyorsan çok ama çok farkeder

     


    snnyk.com - code is poetry all that i know...
  5. KısayolKısayol reportŞikayet pmÖzel Mesaj
    KodlayanAdam
    KodlayanAdam's avatar
    Kayıt Tarihi: 01/Ekim/2005
    Erkek

    10000 satırda eğer herbir satırdaki veri boyutu çok büyük değilse büyük bir etkisi olacağını sanmıyorum fakat çok fazla sorgu yapılan sistemlerde 10ms bile önemli olabilir.

    Tabloda sorgu yaparken where koşulunda sadece primary keyi kullanıyorsan başka index eklemene gerek yok. Mesela tabloda  where ad = 'xxx' and soyad = 'xxx' benzeri bir sorgu çok fazla kullanılıyor diyelim. Bu durumda ad ve soyadı beraber indexlemen bu sorguları hızlandıracaktır.

    Basit bir script yazıp elindeki tabloya bir milyon rastgele kayıt girip, indexler oluşturup rebuild ederek kendin daha iyi gözlemleyebilirsin.


    Hiç savaş görmemiş çocuklarla, hiç barış görüşmemiş çocuklar için adalet farklı anlamlar taşır.
  6. KısayolKısayol reportŞikayet pmÖzel Mesaj
    Hannibal_King
    Hannibal_King's avatar
    Kayıt Tarihi: 22/Ağustos/2010
    Erkek

    Anladım saolun cevaplar için peki index i sonradan eklesem sıkıntı olmaz değilmi? Proje bitsin bakayım hangi sorguları kullanmışım daha çok ona göre sonradan gerekli yerlere eklerim.

  7. KısayolKısayol reportŞikayet pmÖzel Mesaj
    Gizem
    sLeymN
    sLeymN's avatar
    Kayıt Tarihi: 31/Mart/2008
    Erkek
    Hannibal_King bunu yazdı

    Anladım saolun cevaplar için peki index i sonradan eklesem sıkıntı olmaz değilmi? Proje bitsin bakayım hangi sorguları kullanmışım daha çok ona göre sonradan gerekli yerlere eklerim.

    abi zaten mantıklı olan davranışta budur. Projeyi bitir, stres testlerini çalıştırırken, veritabanı tarafından sql sorgularının çalışma zamanlarını göz önünde bulundurarak indexleri yapılandır.

     


    Cehennemin dibine kadar yolum var daha.. || Nasılsa her yalnız kendine sürgündür Asmera unutma.
  8. KısayolKısayol reportŞikayet pmÖzel Mesaj
    Diathorus
    Diathorus's avatar
    Kayıt Tarihi: 19/Mayıs/2014
    Erkek

    Ayrıca, oluşturduğun primary key' e clustered index, oluşturacağın diğer index' lerede nonclustered index denir. Bu terimleri araştırarak daha detaylı bilgiye ulaşabilirsin.

Toplam Hit: 628 Toplam Mesaj: 8
sql server index