CLR(Comman Language Runtime) Nedir ?

CLR(Comman Language Runtime) Türkçede Ortak Çalışma Zamanı olarak çevriliyor.Peki nedir bu Clr ne işe neler yapabiliriz.
Microsoft neden böyle birşeyi neden yapmış bunu dilim döndüğünce makalemde anlatmaya çalışacağım.Asp.Net Mssql ve Ajax üçlüsünü kullanarak bir blog yaptığımızı farz edelim.Projemiz içerisinde şifreleme kriptolojisi olmasını istiyoruz.Bunu asp.net ile kodlarımız arasına değilde SQL server’ımıza gömmek istiyoruz nasıl yapabiliriz ki ?
T-SQL içerisinde md5 fonksiyonu yok işte clr burada devreye giriyor.Clr ile fonksiyonumuzu yazıp bir dll haline getirip bunu SQL Serverımızın içerisine gömüp kullanabiliriz veya öyle bir projedeyiz ki proje içerisinde belli bir text dökümanı içerisindeki belli bir kritere uygun olan kayıtları veri tabanına ekleyeceğiz.T-SQL ile File IO(Dosya girdi çıktı,File İnput\Output) kütüphanesi yok işte bunu Clr kullanarak yapabiliriz.Peki Clr’ı her zaman mı kullanmalıyız örneğin xlm 1oo kayıttan oluşan ve maximum olarak 5ooo karakter bulunduran bir datayı çok hızlı toparlar ve sunar ancak 1o.ooo.ooo kayıt içeren bir datayı o hızda toparlayıp sunamaz ve tıkanır.Performans açısından çok büyük bir kayıp olur yani yerine göre xlm kullanmamız gerekir.İşte Clrda böyledir.C#’dada olan Mssql’dede olan bir fonksiyonu clr kullanarak performansı düşürmenin bir manası yok.Az önce verdiğim örnekte File IO olmasaydı ancak bu işlem başka bir tablo üzerinden yapılmak istenseydi işte burada store procedur kullanarak veya bir scaler fonksiyonu yazarak daha performanslı ve maaliyeti daha düşük bir şekilde yapabilirdik. Clr SQL Server 2005 ile gelen bir özellik bazı firmaların uygulamalarında performans artışına ihtiyaç duyduğundan dolayı sırf CLR için SQL Server 2ooo’den vazgeçip 2005′e geçiş yaptığıda görülmüştür.

Umarım yararlı olur.

Makale Sahibi : Kerem125

1 Yorum Yapılmış

  1. 1

    Mehmet Selim
    Pazartesi 15 Eyl 2008 7:50 pm

    Yararlı bir makale anlatımda güzel kerem arkadaşımıza teşekkürler.

Yorum Yazın