Gereksinimlerim:
- Herhangi bir veri türünün Kullanıcı Tanımlı alanlarını dinamik olarak ekleyebilmemiz gerekir
- UDF'leri hızlı bir şekilde sorgulayabilmemiz gerekiyor
- Veri tipine göre UDF'lerde hesaplamalar yapabilmek gerekir
- UDF'leri veri tipine göre sıralayabilmeli
Diğer bilgiler:
- Öncelikle performansı arıyorum
- UDF verisi eklenebilen birkaç milyon Ana kayıt var
- En son kontrol ettiğimde, mevcut veritabanımızda 50milden fazla UDF kaydı vardı
- Çoğu zaman, bir UDF sadece birkaç bin Master kaydına eklenir, hepsi değil
- UDF'ler birleştirilmez veya anahtar olarak kullanılmaz. Bunlar yalnızca sorgular veya raporlar için kullanılan verilerdir
Seçenekler:
StringValue1, StringValue2 ... IntValue1, IntValue2, ... vb. İle büyük bir tablo oluşturun.
Gerektiğinde isteğe bağlı yeni bir sütun ekleyen dinamik bir tablo oluşturun. Ayrıca bu fikri sevmiyorum çünkü her sütunu dizine eklemediğiniz sürece performansın yavaş olacağını hissediyorum.
UDFName, UDFDataType ve Value içeren tek bir tablo oluşturun. Yeni bir UDF eklendiğinde, yalnızca bu verileri çeken ve belirtilen türde ayrıştıran bir Görünüm oluşturun. Ayrıştırma ölçütlerini karşılamayan öğeler NULL döndürür.
Her veri türü için bir tane olmak üzere birden çok UDF tablosu oluşturun. Yani UDFStrings, UDFDates, vb. İçin tablolarımız olurdu. Muhtemelen # 2 ile aynı şeyi yapar ve yeni bir alan eklendiğinde otomatik olarak bir Görünüm oluşturur
XML Veri Türleri? Bunlarla daha önce çalışmadım ama bahsettiklerini gördüm. Bana istediğim sonuçları, özellikle performansla verip vermeyeceklerinden emin değilim.
Başka bir şey?