none
Index'lerin Farklı Filegroup'ta Tutulması RRS feed

  • Soru

  • Merhabalar,

    Sql 2005 Entprise sürümünü kullanmaktayız.Şuan ki yapıda indexlerin tamamı primary filegroup içerisinde tutuluyor.Bu sebeple indexleri ayrı bir secondary filegroup'a taşıyıp ve bu filegroup'u  farklı bir diske taşıyarak eş zamanlı olarak index'e ve veriye ulaşılmasının sağlanmasını performans artışını hedefliyoruz.Bu işlemi ilk olarak yaklaşık 300 milyon  verinin tutulduğu tablomuz için yapmak istiyoruz.Özellikle canlı sistemler üzerinde bu çalışmayı yapanlar bilgi verebilirse sevinirim.

    • Secondary filegroup oluşturma aşamasında dikkat edilmesi atlanmaması gereken çok önemli konudur diyebileceğiniz bir nokta var mıdır?  
    • Secondary filegroup oluşturduktan sonra  index'leri  drop edip secondary filegroup'da create etme esnasında bunun canlı sistem olduğunu düşünerek dikkat edilmesi gereken hususlar nelerdir? 
    • Indexler'in filegroup değişiminde drop/create edilmesi drop_existing yöntemi ile uzun sürebilecek bir işlem değil diye biliyorum ama yine de proccesslerin bloklanmasına yol açarmı ,eğer bloklar ise nasıl bir yol izlememizi önerirsiniz?

    Kesinti ve veri kaybı yaşamadan bu çalışmayı yapabilmek bizim için çok önemli ,sorularımın temel sebebi de bu aslında.Olası senaryolar,karşılaşabilecek hatalar vs. verebileceğiniz bilgiler için şimdiden teşekkür ederim.


    9 Nisan 2015 Perşembe 11:00

Yanıtlar

  • Merhaba Selçuk,

    Indexleri farklı bir filegroup içinde organize etme fikrin mantıklı. Fakat bu işlemi sistemi minimum etkilenecek şekilde yapman daha iyi olur. Burada benim sana önerim şu olur madem enterprise edt kullanıyorsunuz. Veritabanına ikinci bir filegroup ekle, indeks kullanım istatistiklerii incele tasımak istediğini indeksleri drop_existing ile tasıma. sebebi ise sistem calişirken o indekslere ihtiyac duyacaktır. Bunun yerin aynı keyleri içeren farklı bir indeksi yeni filegroup üzerinde olustur ve online seçeneğini kullan. Oluşturma işlemi bittikten sonrra ve eminsen ilk indeksleri silebilirsin.


    SQL Server 2012 Kitabımı incelediniz mi?

    9 Nisan 2015 Perşembe 11:43

Tüm Yanıtlar

  • Merhaba Selçuk,

    Indexleri farklı bir filegroup içinde organize etme fikrin mantıklı. Fakat bu işlemi sistemi minimum etkilenecek şekilde yapman daha iyi olur. Burada benim sana önerim şu olur madem enterprise edt kullanıyorsunuz. Veritabanına ikinci bir filegroup ekle, indeks kullanım istatistiklerii incele tasımak istediğini indeksleri drop_existing ile tasıma. sebebi ise sistem calişirken o indekslere ihtiyac duyacaktır. Bunun yerin aynı keyleri içeren farklı bir indeksi yeni filegroup üzerinde olustur ve online seçeneğini kullan. Oluşturma işlemi bittikten sonrra ve eminsen ilk indeksleri silebilirsin.


    SQL Server 2012 Kitabımı incelediniz mi?

    9 Nisan 2015 Perşembe 11:43
  • İsmail Bey verdiğiniz bilgiler için teşekkür ederim.Peki clustered index taşımak için izlediğiniz benzer bir yöntem var mıdır? 

    Teşekkürler

    10 Nisan 2015 Cuma 13:15