Ana içeriğe atla

Devexpress XPO ile ORM üzerinden Index Yönetimi

Veritabanı sorgu performansını etkileyen en önemli konulardan bir tanesi indexleri doğru uygulamaktır. Uygulamanızın tablolarda nasıl sorgular yapacağını, hangi alanları sıkça kullanacağını önceden tahmin ederek indexlemesini tablo oluştururken yapmak uygulama performansını da yükseltecektir

Bu kısa makalede Veritabanı indexlerinin Devexpress XPO ile nasıl oluşturulacağını ve kullanılacağını anlatmaya çalışacağım. 

Baştan bunu söylemem lazım...

Devexpress XPO'nun en beğendiğim özelliklerinden bir tanesi objeleri tanımlarken indexleri de beraberinde oluşturabilmesidir. 

Önemli Not 1: Daha önce oluşturulan tablolar üzerinde index oluşturabilirsiniz. Bunu yapmadan önce tablonun büyüklüğünü de göz önünde bulundurarak index oluşturma süresine bağlı olarak gecikme olabileceğini dikkate alın. Hatta benim tavsiyem daha önce oluşturulmuş ve içinde100k üzeri veri olan tablolarda index oluşturmamanızdır. Mümkünse manuel olarak veritabanından oluşturduktan sonra bağlantı yapın.

Önemli Not 2: String alanlarının boyutu büyükse bunlar için index oluşturmayın. Beklenmedik hatalar alabilirsiniz. Bu hatalar da genelde veritabanı bazlı hatalar olur. Örnek: index Oracle'de çok iyi sonuç verirken, SQL Server veya Postgres üzerinde hata oluşmasına neden olabilir.

Önemli Not 3: Obje bağlantıları için index oluşturmanıza gerek yok. XPO foreign key bağlantıları için otomatik index oluşturur.


Gelelim Devexpress XPO ile indexleri nasıl tanımlayacağımıza...

Index tanımlaması aşağıdaki gibi bir kodu Property'ye eklenmesi ile mümkün oluyor:


[Indexed(Unique =false, Name ="tablename_index_propertyname")]


Gördüğünüz gibi çok basit bir uygulama mevcut. İndexed parametresinin iki değerini belirliyoruz. Bunlardan birincisi alanın tekil olup olmayacağı. Bunun için Unique  alanının değerini değiştirmemiz yeterli. Eğer bu bilgiyi vermezsek default değeri false olacaktır. Diğer parametremiz ise index adıdır. Otomatik oluşturulan indexler ile kendi indexlerinizi ayırmak için bu parametreyi de mutlaka kullanın. Eğer kullanmazsanız XPO Property adına göre otomatik isimlendirme yapacaktır.

Örnek kullanım için aşağıdaki örneği vermek istiyorum.


[Indexed(Unique =true, Name ="kullanicilar_index_kullaniciadi")]

public string KullaniciAdi { get; set; }


Konuyla ilgili sorularınız olursa yorumlar kısmından bana yazabilirsiniz.

Yorumlar

Bu blogdaki popüler yayınlar

Medyan (Ortanca) Nedir? Nasıl Hesaplanır? Nerelerde Kullanılır?

Medyan işlemi olasılık hesaplamalarında sıkça kullanılan bir sayı dizisinin ortalamasını hesaplamak için alternatif yöntemlerden bir tanesidir. Ortanca medyan işleminin diğer adıdır. Matematiksel olarak medyan işlemi bir sayı dizisi küçükten büyüğe sıralayarak ortada kalan elemanı medyan değeri olarak belirleme işlemidir. Örnek verecek olursak: 2, 1, 5, 4, 5, 1, 2, 3, 5 serisi sıralanırsa 1, 1, 2, 2, 3, 4, 5, 5, 5 serisi elde edilir. Bu seri 9 elemanlı olduğundan ortadaki, yani 5. eleman (medyan) olacaktır. 5. eleman 3 sayısıdır. Yani ortanca değeri 3'dür Eleman sayısı tek sayı olan bir seride medyan değerin sırasının hesaplaması şu şekilde formüle edilir. Medyanın Sırası = (Eleman Sayısı + 1) / 2 Bu formülü yukarıdaki örneği uygulayacak olursak; Medyanın Sırası = (9 + 1) / 2 = 5 Veri serisi eleman sayısı bir çift sayı ise bu durumda serinin 2 medyanı olacaktır. Örneğin 2, 1, 5, 4, 5, 1, 2, 3, 5, 4 serisi sıralandığında 1, 1, 2, 2, 3, 4, 4, 5, 5, 5 s

Ağaçlar Kireçle veya Badana İle Neden Boyanır?

Ağaçlar kireçle boyanmasının veya badana yapılmasının hem çevreye hem de doğaya, ağaçlara faydası var. Bu makalede bu geleneği enine boyuna tartışmaya çalıştık. Ağaca zarar veren mikrop ve bakterileri öldürür. Ağacı çok aşarı soğuk havalarda ve çok aşırı sıcak havalarda korur. Ağacın çürümesini ve kurtlanmasını önler. Ağacın gövdesinin alabileceği zararları en az düzeyde düşürmeyi sağlar. Hoş, güzel, hijyenik, temiz pırıl pırıl bir görüntü oluşturur. Ayrıca çok sıcak havalarda da ağacı yanmaya karşı korumak. En büyük etkisi soğuk havalarda ağacı don vurmalarına karşı korumak . Küresel ısınma göz önüne alındığında mevsim değişiklikleri ani don, ani ısı artışları ve azalışları sonucunun doğuracağı etkenler için yararlı etkin bir yöntem. Gövdeden obur dalların çıkmasını azaltmak için sürülür. Kireçleme ağaçları güneş yanığından korumak için yapılıyor. Ağaçlar da güneşten yanabiliyorlar. Bu arada odun dokudaki gözenekleri doldurarak kapattığı için, zararlıların yuv

Azərbaycan Dilində Vurğu Qəbul Etmeyen Şekilçiler

Sözlərdə hecalardan birinin digərlərinə nisbətən daha qüvvətli deyilməsinə heca vurğusu deyilir. Üzərinə vurğu düşən hecaya isə vurğulu heca deyilir. Azərbaycan dilində vurğu adətən söz sonuna düşür. Söz şəkilçi qəbul ederkən vurğu adətən şəkilçinin üzərinə keçir. Məsələn: çiç ə k - çiçəkl ə r - çiçəklərd ə n məkt ə b - məktəbl i - məktəblil ə r - məktəblilərd ə n Buna baxmayaraq dilimizdə bir sıra şəkilçilər var ki onlar vurğu qebul etmirlər. Bu məqalədə Azərbaycan dilində vurğu qebul etməyən şəkilçilər incələnəcək ve bu şekilçilərin hansı hallarda vurğu qebul edib hansı hallarda vurğu qebul etmediyi araşdırılacaqdır. Eyni zamanda bildirmək istəyirəm ki vurğu ilə bağlı daha geniş və ətraflı məlumat üçün Azərbaycan Dilində Vurğunun Praktik Məsələləri adlı məqaləyə də nəzər yetirə bilərsiniz.  1. İsimlərdəki şəxs(xəbərlik) şəkilçiləri Məsələn: müəli'məm müəli'msən müəli'mdir müəli'mik müəli'msiniz müəli'mdirlər Qeyd: -dır4