MySQL'i bilmem ama SQL Server'da büyük faydasını görürsünüz. Çünkü Stored Procedure'ler, ilk çalıştıklarında bir nevi derlenirler ve Execution Plan'ları oluşur. Ondan sonraki çalıştırma isteklerinde mevcut Execution Plan kullanılır. Dolayısı ile daha hızlı çalışırlar. Ancak bir hatırlatma olarak, istatistiklerin sürekli güncel tutulmasının öneminden de bahsetmek isterim.
Ayrıca stored procedure'ler network trafiğinde akan veriyi de bir nebze de olsa azaltırlar. Bu bağlamda uygulama içine SQL kodu gömmenin hiç bir faydası olmadığını aksine zararı olduğunu düşünüyorum.
Stored Proc gerçekten faydalı mı:)
Forum kuralları
Forum kurallarını okuyup, uyunuz!
Forum kurallarını okuyup, uyunuz!
Re: Stored Proc gerçekten faydalı mı:)
Merhabalar ,
Aktif MySQL kullanıcısıyım yoğun olarak SP leri kullanıyorum, hem belirttiğiniz gibi cross platform için DB işlemlerini DB ye yıkıyorsunuz, hemde Tuğrul beyin de dediği gibi tıpkı MSSQL de olduğu gibi MySQL de de ilk çağırılma da execution planları oluştuğu için diğer çağırımlarda daha hızlı çalışıyor, DB monitorleryada wireshark gibi bir araçla inceleyecek olursanız basit bir INSERT ün TCP/IP nin doğası gereği client ile MySQL server arasında bir çok kez veri iletişimi yapmak durumunda olduğunu gözlemleyebilirsiniz, dolayısıyla client uygulamadan mümkün olduğunda az Query execute etmek dolayısıyla DB taraflı tasarıma mümkün olduğunda yüklenmek çok iyi bir tercih olur bu beraberinde veri bütünlüğünün daha kolay sağlanmasına da yardımcı olur.
Aktif MySQL kullanıcısıyım yoğun olarak SP leri kullanıyorum, hem belirttiğiniz gibi cross platform için DB işlemlerini DB ye yıkıyorsunuz, hemde Tuğrul beyin de dediği gibi tıpkı MSSQL de olduğu gibi MySQL de de ilk çağırılma da execution planları oluştuğu için diğer çağırımlarda daha hızlı çalışıyor, DB monitorleryada wireshark gibi bir araçla inceleyecek olursanız basit bir INSERT ün TCP/IP nin doğası gereği client ile MySQL server arasında bir çok kez veri iletişimi yapmak durumunda olduğunu gözlemleyebilirsiniz, dolayısıyla client uygulamadan mümkün olduğunda az Query execute etmek dolayısıyla DB taraflı tasarıma mümkün olduğunda yüklenmek çok iyi bir tercih olur bu beraberinde veri bütünlüğünün daha kolay sağlanmasına da yardımcı olur.
Volkan KAMADAN
www.polisoft.com.tr
www.polisoft.com.tr