SQL Server 2005′te yeni ne var – II [Programlama]

SQL Server, Oracle Add comments

Önceki yazıda SQL Server 2005 veri tabanı yöneticileri için geliÅŸtirdiÄŸi yenilikleri vermeye çalıştık. Bu yazıda da uygulama geliÅŸtiriciler için gelmiÅŸ olan yeni özellikleri, T-SQL’deki deÄŸiÅŸiklikleri özetlemeye çalışacağız. SQL Server 2005 ile birlikte programcılar için gelen en önemli iki özellik, .NET Framework desteÄŸi ve daha kullanışlı, yetenekli bir XML teknoloji desteÄŸidir. .NET Framework desteÄŸi, VS.NET IDE’sinde SQL Server’in yönetimini, XML desteÄŸi de sunucunun farklı platform ve cihazla iletiÅŸimi saÄŸlamaktadır.

Developerlar için sunulan yenilikleri şu başlıklarda toplayabiliriz:

  • GeniÅŸletilmiÅŸ dil desteÄŸi (Expanded language support)
  • GeliÅŸtirilmiÅŸ geliÅŸtirme araçları (Improved development tools)
  • GeniÅŸleyebilirlik (Extensibility)
  • GeliÅŸtirilmiÅŸ Veri EriÅŸim (Improved data access)
  • XML ve Web servisleri (XML and Web services)
  • Uygulama çatısı (Application framework)

    GeniÅŸletilmiÅŸ Dil DesteÄŸi ve CLR/.NET Framework Entegrasyonu
    Common Language Runtime(CLR) SQL Server Database Engine içerisine gömüldüğü için developerlar, uygulama geliştirirken kısıtlı T-SQL dilinin haricinde daha gelişmiş gerçek programlama dili olan VB.NET, C# dillerini de kullanabilecekler. Böylece programcılar, SQL Server ortamında .NET dilleriyle geliştirdikleri fonksiyon ve prosedürleri veya Microsoft tabanlı olmayan thirty party bileşenlerini de kullanma imkanı elde etmiş olacaktır.

    SQL Server 2005′in CLR/.NET teknolojisini destekliyor olması, programcılara veri tabanı uygulamalarında nesne tabanlı programlama yaklaşımını(encapsulation, inheritance ve polymorphism yöntemlerini) kullanma özgürlüğü sunduÄŸu gibi programcıların daha güçlü bir hata yönetimi yapmalarını, geliÅŸmiÅŸ bir güvenlik mekanizmasını kurmalarını ve daha yenetekli namespace ve classlar kullanmasını, bunlar aracılığıyla I/O ve XML tabanlı iÅŸlemlerini daha kolay yapmalarını saÄŸlamıştır. Bu özellikler, veri tabanı iÅŸlemlerinde daha yüksek ve karmaşık hesaplama ve mantıksal iÅŸlemlerinde bile performans ve esneklik kazandırmıştır. Aynı ÅŸekilde CLR’ın sunduÄŸu type safety özelliÄŸiyle veri tabanı iÅŸlemleri daima gözetim altında tutuAyrıca SQL Server 2005′in VS.NET gibi güçlü bir uygulama geliÅŸtirme ortamıyla bütünleÅŸik çalışıyor olması da programcıların tek çatı altında iÅŸlem yapmalarına izin vermektedir.

    SQL Server 2005, bu dil desteÄŸiyle birlikte T-SQL dilinde de yenilikler yapmıştır. Özellikle T-SQL’in eksik olduÄŸu için hata yakalama konusunda ve öz yinelemeli iÅŸlemlerde yeni yöntemler eklendi. Ayrıca daha esnek sorgular hazırlamak için yeni T-SQL komutları geliÅŸtirildi. Bunları sonraki makalede örneklendireceÄŸiz.

    Geliştirilmiş geliştirme araçları
    Uygulama geliÅŸtiriciler, SQL Server 2005′in VS.NET ile bütünleÅŸik çalışıyor olması sebebiyle artık T-SQL, XML, Multidimensional Expressions(MDX) ve XML for Analysis(XML/A) iÅŸlemlerini tek çatı altında yapabilecekler.

    SQL Server 2005 ile birlikte sunulan araçlardan biri de database engine, analysis services ve reporting services bileşenlerini kullanan ve programcıların grafiksel ortamda kurumsal zeka süreçlerini(Business Intelligence-BI) oluşturdukları Business Intelligence Development Studio aracıdır. Bu araç üzerinde daha önceki versiyonlardan bildiğimiz DTS paketlerinin yerine sunulan SQL Server Integration Services(SSIS) paketleri hazırlanır.

    GeniÅŸleyebilirlik (Extensibility)
    SQL Server’in kullanıcıya sunduÄŸu geniÅŸleme kabiliyetlerinin başında kullanıcı tanımlı veri tipleri(User-Defined Types) gelmektedir. Programcı var olan SQL tiplerini kullanarak uygulamasına özel tipler oluÅŸturabilir. Böylece tekrar eden veya benzer kolonlar için her defasında yeniden tip tanımlaması yapılmamış olur. SQL Server 2005 ile birlikte bu esneklik grupsal fonksiyonlara da(Aggregate Function) kazandırıldı. Bu durumda uygulama geliÅŸtirici ihtiyaç duyduÄŸu ve SQL Server ile birlikte standart gelmeyen bir hesaplama fonksiyonunu gerek T-SQL gerek CLR stored procedure gerekse sunucu taraflı cursor kullanarak yazabilir.

    SQL Management Objects(SMO)
    BilindiÄŸi gibi SQL Server yönetim nesnesi olarak önceki versiyonlarda DMO kullanılmaktaydı. SQL Server 2005′in yeni yönetim nesne modeli SQL Management Objects (SMO) olarak deÄŸiÅŸtirildi. .NET Framework tabanlı çalışan, yeni nesil veri tabanları ihtiyaçlarına göre geliÅŸtirilmiÅŸ ve programcılar tarafından kolaylıkla programlanabilen bu nesne, Server Management Studio’daki tüm iÅŸlemler tarafından kullanılmaktadır.

    Analysis Management Objects(AMO)
    AMO aracı, istemci uygulamalarının Analysis Services üstündeki nesnelere, DDL scriptleri veya uzun Analysis Services Scripting Language(ASSL) kodları yazmadan bağlanabilmesini ve üzerine işlemler yapabilmesini sağlar.

    GeliÅŸtirilmiÅŸ Veri EriÅŸimi ve Web Servisleri
    SQL Server 2005, veri tabanı sunucusu üzerinde XML web servisleri geliştirilmesine ve HTTP üzerinden sunucuya bağlanıp SQL scripleri çalıştırılmasına olanak tanır. Bu işlemler için IIS gibi bir orta katmana ihtiyaç duymaması da bir esneklik olarak karşımıza çıkmaktadır.

    ADO.NET 2.0/ADOMD.NET
    ADO.NET’in geliÅŸtirilmiÅŸ yeni özellikler kazandırılmış yeni versiyonudur.

    Query Notification
    SQL Server 2005′in sunduÄŸu yeni özelliklerden biri de Query Notification’dır(Sorgu Uyarı Sistemi). Bu modelde ADO.NET, OLE DB, Open Database Connectivity (ODBC), Microsoft ActiveX Data Objects (ADO) ya da Simple Object Access Protocol (SOAP) gibi bir veri eriÅŸim API’si aracılığıyla veri tabanı sunucusuna gönderilmiÅŸ bir sorgunun sonucunda deÄŸiÅŸiklik olduÄŸu anda istemcinin uyarılması saÄŸlanır. SQL Server kendisine gönderilen sorgunun beslendiÄŸi kaynaklar için bir dependency nesnesi oluÅŸturularak kaynaklar üzerinde bir deÄŸiÅŸiklik yapıldığı zaman Service Broker üzerinden sorgunun sahibi olan istemci uyarılır. Özellikle web uygulamalarında network trafiÄŸini meÅŸgul etmemek için cachelenmiÅŸ verilerde sadece deÄŸiÅŸiklik sözkonusu olduÄŸu zaman bunun web uygulamasına bildirilmesi performansı artırır.

    Multiple Active Result Sets (MARS)
    MARS, tek bir aktif baÄŸlantı(connection) üzerinden birden fazla talebi(command) iÅŸleyebilen döndürebilen bir yapıdır. ADO.NET 2.0′dan önceki versiyonlarda forward-only kayıt setini çektiÄŸimiz durumlarda aktif olan aynı connection nesnesini ikinci bir tablep kullanamıyorduk.

    XML ve Web Servisleri DesteÄŸi
    Bilindiği gibi XML(Extensible Markup Language), yerel ağlar ve Internet üzerindeki farklı uygulamalar arasında veri alışverişi için önemli bir standart olarak karşımızda durmaktadır. SQL Server 2005, bütünleşik olarak XML belgelerini saklama ve sorgulama desteğini sunmaktadır.

    SQL Server 2005 XML türünde bir veri tipi sunuyor ve XML formatındaki verilerin programcılar tarafından sorgulanabiliyor olmasını sağlamaktadır. XML sorguları, XQuery standartlarına göre yapılmaktadır. XML Query Language (Xquery) her türlü XML verilerinin sorgulanması için oluşturulmuş güçlü bir dildir.

    SQL Server, XML verilerini binary large objects modelinde saklar ve XML türündeki kolonlar üzerinde constraint ve indexler oluşturulmasına izin verir.

    SQL Server 2005 sayesinde geliÅŸtiriciler SQL Server’ı bir Hypertext Transfer Protocol (HTTP) dinleyicisi haline getirerek veritabanı katmanında Web servisleri geliÅŸtirebilirler.

    Application Framework
    SQL Server 2005, Service Broker, Notification Services, SQL Server Mobile ve SQL Server Express bileşenlerini içeren yeni bir uygulama mimarisi sunmaktadır.

    Service Broker
    SQL Server 2005 ile birlikte hayatımıza girmiş olan bu teknoloji, aynı veya farklı veri tabanı uygulamalarının veri tabanı üzerinde belli koşullar oluştuğunda uyarılmasını sağlayan bir servistir. Asenkron mesaj iletimine dayalı olup özellikle Service Oriented Architecture yapılarında önemli bir katma değer sağlamaktadır. Bazı processlerin eş zamanlı yürümemesi amacıyla oluşturulan kuyruk yönetimi için daha önce Microsoft Message Queuing (MSMQ) kullanılmaktaydı. SQL Server 2005 ile birlikte MSMQ olmadan asenkron uygulamalar yazılabilecek.

    SQL Server Express
    SQL Server 2005′in ücretsiz, kullanımı kolay bir sürümü olan Microsoft SQL Server Express ürünü, MSDE 2000’in yerine geliÅŸtirilmiÅŸtir. SQL Server 2005′in pek çok özelliÄŸini barındıran, MSDE’ye oranla daha büyük veri tabanını destekleyen, daha yetenekli, güçlü, ücretsiz bir üründür.

    Business Intelligence
    Microsoft’un Business Intelligence alanındaki ustalığı SQL Server 2005′te de kendini göstermiÅŸtir. VS.NET 2005 ile entegre çalışan BI, data mining alanında rol oynayan yöneticiden programcıya kadar birçok kiÅŸinin analiz servislerini kullanmasına, MDX sorguları yapılmasına olanak tanır.

    SQL Server BI aşağıdaki özelliklere sahiptir:


    • End-to-end integrated business intelligence platformu : Uçtan uca bütünleÅŸik kurumsal iÅŸ zeka platformu olarak tanımlanan bu yenilik, her tür analiz için gerekli olan araç ve metodları içerir.

      BI’nin analiz tabanlı uygulamalar için sunduÄŸu araçlar ÅŸunlardır:


      • Design(Tasarım) : Business Intelligence Development Studio aracı, BI programcılarına yönelik ilk entegre çalışması olup VS.NET üzerinde çalışır. BI uygulamasındaki hata yönetimi, script geliÅŸtirilmesi bu araç üzerinden yürütülür.
      • Integrate(Entegrasyon) : SQL Server Integration Services (SSIS) karmaşık veri transferi, dönüştürümü gibi iÅŸlemleri gerçekleÅŸtirir. Integration Services, Analysis Services ve Reporting Services birlikte çalışarak farklı veri kaynaklarından gelen verileri birleÅŸtirip ortaya daha anlamlı verileri çıkarır.
      • Analyze(Analiz) : Analiz süreci için kullanılan Microsoft Data Mining aracı, yeni algoritmalarla güçlendirilerek daha kullanışlı ve güçlü hale getirildi. Ayrıca Analiz küplerine, Anahtar Performans Göstergeleri(Key Performance Indicator-KPI), MDX scriptleri ve diÄŸer standart geliÅŸmiÅŸ iÅŸ analiz araçları gibi yeni özellikler eklenerek relational database ve multidimensional database iÅŸlemlerinin daha hızlı ve doÄŸru sonuçlar vermesi saÄŸlanmıştır.
      • Report(Raporlama) : Reporting Services aracı, BI platformunda analiz sorgularının kolayca oluÅŸturulduÄŸu, sonuçların farklı formatları destekleyecek ÅŸekilde görüntülendiÄŸi araçtır. Ayrıca web servisleriyle bütünleÅŸik çalışıyor olması önemli bir artık olarak deÄŸerlendirilmektedir.
      • Manage(Yönetim) : SQL Server Management Studio aracı ile, her türlü SQL Server 2005 bileÅŸeni tek bir çatı altında yönetilir.

    • Integration Services
    • Analysis Services
    • Reporting Services
    • Microsoft Office Sistemi ile entegrasyon

    Integration Services ve GeliÅŸmiÅŸ ETL Platformu
    SQL Server 2005, SQL Server Integration Services (SSIS) isimli, yeniden tasarlanmış bir ETL platformu sunmaktadır. SQL Server 2000’de yer alan DTS paketlerinin yerine kullanılan SSIS platformu, farklı kaynaklardaki verileri tek çatı altında toplayı homojen bir yapı oluşturulmasına katkıda bulunur. SSIS tamamen programlanabilir ve genişletilebilir bir yapıda olup birçok yetenekli özelliğiyle daha yüksek performans sunmaktadır.

    Analysis Services :
    SQL Server 2005 Analysis Servisleri şirket verilerinin klasik verilerinin, raporlama amaçlı verilerinin ve data mining verilerinin standart bütünleik bir görüntüsünü oluşturur.

    Reporting Services
    Yüksek performanslı rapor düzenleme ve işleme aracı olan Reporting Services, BI platformunda kullanıcıların şirket verilerine farklı formatlarda erişmesini sağlar. Ayrıca bu servisin farklı IT platformlarıyla bütünleşik çalışıyor olması da tercih nedeni olmaktadır.

    Report Builder
    SQL Server 2005 Reporting Services birlikte gelen bu araç, sunduğu grafiksel arayüz aracılığıyla kullanıcıların, sürükle-bırak yöntemiyle kolayca rapor oluşturabilmelerini sağlamaktadır.

    SQL Server 2005 Reporting Services çatısı altında oluşturulan raporlar, Microsoft Office Sistemi ile entegre çalışır. Microsoft Word, Excel, PowerPoint gibi araçlar üzerinden bu raporlara erişilebilir.

  • 4 Responses to “SQL Server 2005′te yeni ne var – II [Programlama]”

    1. naçar Says:

      Merhaba,
      Bende ms sql server 2005 management studio 2005 var. bunda reporting service yok. raporlama için hangi toolu yüklemeliyim?

    2. Ahmet Kaymaz Says:

      SQL Server 2005 Reporting Services aracını aşağıdaki SQL Server sürümlerinden biriyle birlikte kurabilirsiniz.

      SQL Server 2005 Developer Edition
      SQL Server 2005 Standard Edition
      SQL Server 2005 Workgroup Edition
      SQL Server 2005 Evaluation Edition
      SQL Server 2005 Express Edition with Advanced Services Service Pack 2 (SP2)

      Hangi sürümü kurduysanız onu yeniden install ettiğinizde SSRS aracını da kuruluma ekleyerek kullanabilirsiniz.

    3. Fahri ŞENTEKİN Says:

      Merhaba,
      Reporting Services te View report a bastığımızda integration servicesten çekip reporting services te raporlayabilir miyiz?

    4. Ahmet Kaymaz Says:

      Fahri,

      teknik olarak bu ÅŸekilde bir çalışma yapmak mümkündür. Fakat çalışma anında SSIS’de bir package çalıştırıp onun sonucunu raporda göstermek bana mantıklı gelmiyor. Onun yerine uygun periyotlarda SSIS çalışsın sonuçları bir local table’e atsın. SSRS de oradan raporlama yapsın.

    Leave a Reply


    − 2 = 4

    WP Theme & Icons by N.Design Studio
    Entries RSS Comments RSS GiriÅŸ