天天躁日日躁狠狠躁AV麻豆-天天躁人人躁人人躁狂躁-天天澡夜夜澡人人澡-天天影视香色欲综合网-国产成人女人在线视频观看-国产成人女人视频在线观看

關(guān)系型數(shù)據(jù)庫(kù)性能優(yōu)化總結(jié)

  對(duì)于web應(yīng)用開發(fā),多數(shù)性能瓶頸均出現(xiàn)在數(shù)據(jù)庫(kù)上,除了采用分布式架構(gòu)或云處理(大公司基本上都是),更重要的是平時(shí)程序設(shè)計(jì)時(shí)要遵照一些規(guī)則,從根本上提高系統(tǒng)的性能,以下總結(jié)了一些常用的規(guī)則方法,僅供參考,歡迎跟帖補(bǔ)充。。。

  1、 把數(shù)據(jù)、日志、索引放到不同的I/O設(shè)備上,增加讀取速度。數(shù)據(jù)量(尺寸)越大,提高I/O越重要。

  2、 縱向、橫向分割表,減少表的尺寸,如:可以把大數(shù)據(jù)量的字段拆分表。

  3、 根據(jù)查詢條件,建立索引,優(yōu)化索引、優(yōu)化訪問方式,限制結(jié)果集的數(shù)據(jù)量。注意填充因子要適當(dāng)(最好是使用默認(rèn)值0)。索引應(yīng)該盡量小,盡量使用字節(jié)數(shù)小的列建索引,不要對(duì)有限的幾個(gè)值的列建單一索引。

  4、 OR的字句可以分解成多個(gè)查詢,并且通過UNION鏈接多個(gè)查詢。它們的速度只與是否使用索引有關(guān),如果查詢需要用到聯(lián)合索引,用UNION all執(zhí)行的效率更高。

  5、 在查詢SELECT語(yǔ)句中用WHERE子句限制返回的行數(shù),避免表掃描。如果返回不必要的數(shù)據(jù),則浪費(fèi)了服務(wù)器I/O資源,加重了網(wǎng)絡(luò)的負(fù)擔(dān),降低了性能。如果表很大,在表掃描期間將表鎖住,禁止其他的聯(lián)結(jié)訪問表,后果很嚴(yán)重。

  6、 注意使用DISTINCT,在沒有必要時(shí)不要用,它同UNION一樣會(huì)使查詢變慢。

  7、 IN后面值的列表中,將出現(xiàn)最頻繁的值放在最前面,出現(xiàn)最少的放在最后面,減少判斷的次數(shù)。

  8、 一般在GROUP BYHAVING子句之前就能剔除多余的行,所以盡量不要用它們來做剔除行的工作,也就是說盡可能在WHERE中過濾數(shù)據(jù)。

  9、 盡量將數(shù)據(jù)的處理工作放在服務(wù)器上,減少網(wǎng)絡(luò)的開銷,如使用存儲(chǔ)過程。存儲(chǔ)過程是編譯、優(yōu)化過,并且被組織到一個(gè)執(zhí)行規(guī)劃里,且存儲(chǔ)在數(shù)據(jù)庫(kù)中的SQL語(yǔ)句(存儲(chǔ)過程是數(shù)據(jù)庫(kù)服務(wù)器端的一段程序),是控制流語(yǔ)言的集合,速度當(dāng)然快。

  10、不要在一句話里再三地使用相同的函數(shù),浪費(fèi)資源,將結(jié)果放在變量里再調(diào)用更快。

  11、針對(duì)大量只讀查詢操作進(jìn)行優(yōu)化的方法:

1)數(shù)據(jù)量小的數(shù)據(jù),可以考慮不存儲(chǔ)在數(shù)據(jù)庫(kù)中,而是通過程序常量的方式解決。

2)需要存儲(chǔ)在數(shù)據(jù)庫(kù)中的數(shù)據(jù),可以考慮采用物化視圖(索引視圖)。當(dāng)DBA在視圖上創(chuàng)建索引時(shí),這個(gè)視圖就被物化(執(zhí)行)了,并且結(jié)果集被永久地保存在唯一索引中,保存方式與一個(gè)有聚簇索引的表的保存方式相同。物化視圖減除了為引用視圖的查詢動(dòng)態(tài)建立結(jié)果集的開銷,優(yōu)化人員可以在查詢中使用視圖索引,而不需要在FROM子句中直接指定視圖。

3)數(shù)據(jù)存儲(chǔ)時(shí)可以考慮適當(dāng)?shù)臄?shù)據(jù)冗余,以減少數(shù)據(jù)庫(kù)表之間的鏈接操作,提高查詢效率。

4)針對(duì)數(shù)據(jù)的特點(diǎn),采取特定的索引類型。例如,位圖索引等。

  12、對(duì)于SQL語(yǔ)句書寫時(shí)的一些建議:

1)寫語(yǔ)句時(shí)能夠確定數(shù)據(jù)庫(kù)對(duì)象所有者的,盡可能把所有者帶上,如:

SELECT * FROM dbo.Users

2)存儲(chǔ)過程中,參數(shù)定義最好放在最前面,盡可能一次定義,如:

DECLARE @USER_ID INT

       ,@USER_NAME   VARCHAR(50)

       ,@PASSWORD VARCHAR(50)

3)為參數(shù)賦值時(shí),盡可能一次賦值,如:

SELECT @USER_ID = 1001

       ,@USER_NAME = 'xiaojun.liu'

4)盡量少用游標(biāo)

it知識(shí)庫(kù)關(guān)系型數(shù)據(jù)庫(kù)性能優(yōu)化總結(jié),轉(zhuǎn)載需保留來源!

鄭重聲明:本文版權(quán)歸原作者所有,轉(zhuǎn)載文章僅為傳播更多信息之目的,如作者信息標(biāo)記有誤,請(qǐng)第一時(shí)間聯(lián)系我們修改或刪除,多謝。

主站蜘蛛池模板: 久久久久国产精品美女毛片 | 免费被靠视频动漫 | 人妻无码AV中文系统久久免费 | 九九热精品在线 | 巨大乳hdbbw| 啪啪啪社区 | 久久99国产精品无码AV | 恋夜影院安卓免费列表uc | 成年人视频在线免费播放 | 国产精品18久久久久久白浆. | WWW色视频片内射 | 亚洲AV无码一区二区三区牛牛 | 97在线观看成人免费视频 | 国产毛多水多高潮高清 | 精品无码久久久久久久久 | XXOO麻豆国产在线九九爱 | 丰满老熟女白浆直流 | 午夜在线观看免费完整直播网页 | 亚洲一区二区女搞男 | 亚洲精品视频久久 | 99久久精品一区二区三区 | 美女张开腿露出尿口扒开来摸动漫 | 一品道门免费高清视频 | 99午夜视频 | 日本最新免费区中文 | 嗯好大好猛皇上好深用力 | 亚洲狠狠网站色噜噜 | 欧美黄色精品 | 亚洲一区免费在线观看 | 国产精品久久久久久AV免费不卡 | 高清午夜福利电影在线 | 国产精品99re6热在线播放 | 精品久久99麻豆蜜桃666 | 蜜桃成熟时2电影免费观看d | 红豆视频免费资源观看 | 校园全肉高h湿一女多男 | 免费视频xxx | 久久热在线视频精品 | 欧洲人交xxx69 | 女性爽爽影院免费观看 | 国产综合无码一区二区色蜜蜜 |