[討論] 預存程序的效率是否較佳?

看板Database作者 (❺❺❻❻)時間10年前 (2015/04/20 12:18), 10年前編輯推噓2(2010)
留言12則, 5人參與, 最新討論串1/4 (看更多)
request次數頻繁的查詢 是否做成預存程序 傳入參數(日期) 效率會比較佳呢 (預存程序 vs 程式直接下sql) tuning效率的資訊不知道要去哪裡研究? -- ※ 發信站: 批踢踢實業坊(ptt.cc), 來自: 36.226.151.169 ※ 文章網址: https://www.ptt.cc/bbs/Database/M.1429503483.A.983.html

04/20 12:41, , 1F
是的,但通常效率不好不是因為這原因
04/20 12:41, 1F

04/20 17:20, , 2F
會比較快,維護方便,改Sp比改程式省力
04/20 17:20, 2F

04/20 22:53, , 3F
不一定 如果你的DB很忙 那還是讓它單純吞吐資料好
04/20 22:53, 3F

04/20 23:27, , 4F
簡單的說 就是把DB當AP SERVER操 看你的情況適不適合
04/20 23:27, 4F
前後看過二個 資料量大的網站 都沒有使用sp等等資料庫的程序 (mysql資料量約莫 50GB,數十萬至數百萬筆的查詢,都是從程式取db資料,但也查很快) 所以想問一下實務上,什麼情況需要sp? (或是我上述的二個站,如果改用sp,查詢會更有效率嗎) 把DB當AP SERVER操 要如何判斷,DB吃的運算是cpu還是記憶體? ※ 編輯: ImNot5566 (36.226.158.53), 04/21/2015 11:00:28

04/21 22:12, , 5F
我記得SP因為是存在資料庫中 所以可以直接呼叫
04/21 22:12, 5F

04/21 22:13, , 6F
不需要再傳指令過去所以效能會比較好一點
04/21 22:13, 6F

04/21 22:40, , 7F
實務上..通常是需要用到的時候才用..例如跟別的廠商
04/21 22:40, 7F

04/21 22:40, , 8F
合作,但他們有規定的時候,或者是特別重視效能的
04/21 22:40, 8F

04/21 22:41, , 9F
狀況底下,又或者是公司分工明確,程式規程式、DB規DB
04/21 22:41, 9F

04/21 22:41, , 10F
的時候,程式端不能自己寫查詢就會是DB那邊寫
04/21 22:41, 10F

04/21 22:41, , 11F
如果你沒有遇到需要用到SP的狀況,你可以不要用
04/21 22:41, 11F

04/21 22:42, , 12F
寫成SP不是跑比較快,是可以省下編譯查詢字串的時間
04/21 22:42, 12F
文章代碼(AID): #1LD7txc3 (Database)
文章代碼(AID): #1LD7txc3 (Database)