激情久久久_欧美视频区_成人av免费_不卡视频一二三区_欧美精品在欧美一区二区少妇_欧美一区二区三区的

服務(wù)器之家:專注于服務(wù)器技術(shù)及軟件下載分享
分類導(dǎo)航

Mysql|Sql Server|Oracle|Redis|MongoDB|PostgreSQL|Sqlite|DB2|mariadb|Access|數(shù)據(jù)庫(kù)技術(shù)|

服務(wù)器之家 - 數(shù)據(jù)庫(kù) - Sql Server - 一次SQL調(diào)優(yōu)數(shù)據(jù)庫(kù)性能問(wèn)題后的過(guò)程(300W)

一次SQL調(diào)優(yōu)數(shù)據(jù)庫(kù)性能問(wèn)題后的過(guò)程(300W)

2019-11-21 14:46SQL教程網(wǎng) Sql Server

對(duì)單表超過(guò)300w+數(shù)據(jù)的Web應(yīng)用程序進(jìn)行測(cè)試后發(fā)現(xiàn)了一些功能、性能問(wèn)題,采取了以下辦法來(lái)進(jìn)行調(diào)整

將絕大部分的SQL查詢改為存儲(chǔ)過(guò)程,這樣的操作毫無(wú)疑問(wèn)可以提高部分性能。

凡是使用“select * from xxx”的操作一律具體到所需字段。

使用join連接2個(gè)以上大量數(shù)據(jù)的表,且基礎(chǔ)數(shù)據(jù)表變化不大的查詢一律使用視圖,并為此視圖建立索引。理由來(lái)自SQL Server聯(lián)機(jī)幫助手冊(cè): “對(duì)于標(biāo)準(zhǔn)視圖而言,為每個(gè)引用視圖的查詢動(dòng)態(tài)生成結(jié)果集的開(kāi)銷很大,特別是對(duì)于那些涉及對(duì)大量行進(jìn)行復(fù)雜處理(如聚合大量數(shù)據(jù)或聯(lián)接許多行)的視圖。如果在查詢中頻繁地引用這類視圖,可通過(guò)對(duì)視圖創(chuàng)建唯一聚集索引來(lái)提高性能。對(duì)視圖創(chuàng)建唯一聚集索引后,結(jié)果集將存儲(chǔ)在數(shù)據(jù)庫(kù)中,就像帶有聚集索引的表一樣。

對(duì)視圖創(chuàng)建索引的另一個(gè)好處是:優(yōu)化器可以在未直接在 FROM 子句中指定某一視圖的查詢中使用該視圖的索引。這樣一來(lái),可從索引視圖檢索數(shù)據(jù)而無(wú)需重新編碼,由此帶來(lái)的高效率也使現(xiàn)有查詢獲益。”

凡是使用 "select count(*) from xxx" 或是"select count(id) from xxx”(此處id為主鍵)的查詢,一律改為”select count(1) from xxx”,理論上采用*來(lái)做聚合值,SQL Server會(huì)自動(dòng)尋覓最合適的字段以進(jìn)行聚合,但這樣仍然會(huì)占用系統(tǒng)開(kāi)銷,即使主鍵也沒(méi)有1來(lái)得快。

對(duì)于多條件的組合查詢,我們一般會(huì)寫(xiě)成”where ((@condition is null) or (condition=@condition))”形式的存儲(chǔ)過(guò)程條件來(lái)進(jìn)行查詢,但這樣的操作會(huì)因?yàn)?rdquo;is null ”導(dǎo)致性能問(wèn)題,反復(fù)實(shí)地檢測(cè)后采用了”where 1 = 1 ”,然后根據(jù)條件“IF @condition IS NOT NULL SET @sqlText=@sqlText+' AND Condition=''' + @Condition +'''',最后 “exec sp_executesql @sqlText” 的方式,這樣確實(shí)可帶來(lái)明顯的性能提升,分析應(yīng)是”is null ”或”is not null”導(dǎo)致了索引失效,進(jìn)行了全表掃描。

對(duì)使用row_number()函數(shù)的表建立合適的索引,必須要有最合適的索引才能避免重建索引時(shí)的全表row_number()運(yùn)算帶來(lái)的性能問(wèn)題,而且索引的方向也很重要,比如時(shí)間類的索引用降序往往比升序性能高。

這個(gè)不是性能問(wèn)題,但也很重要,在存儲(chǔ)過(guò)程中應(yīng)使用scope_identity()函數(shù)來(lái)獲得最新的標(biāo)量,而不是@@Identity這個(gè)全局變量,因?yàn)锧@Identity會(huì)受到觸發(fā)器的影響而失去正確值。

延伸 · 閱讀

精彩推薦
主站蜘蛛池模板: 欧洲性xxxxx 亚洲第一精品在线 | 成人资源在线观看 | 国产色91 | 国产一区视频免费观看 | 欧美一级毛片美99毛片 | 久草在线新视觉 | 黄色网络免费看 | 国产成人精品一区二区视频免费 | 狠狠操夜夜爱 | www国产成人免费观看视频,深夜成人网 | 亚洲国产综合在线观看 | 四季久久免费一区二区三区四区 | 久久最新免费视频 | 情侣啪啪网站 | 成人三级黄色片 | 99国产精品国产免费观看 | 奇米影视奇米色777欧美 | 黄色大片网站在线观看 | 国产在线一级片 | 一级在线免费观看视频 | 黄视频在线网站 | 亚洲免费视频大全 | 黄视频免费观看 | 91精品国产91久久久久久蜜臀 | 亚洲一区二区三区日本久久九 | 免费一级电影 | 欧美va亚洲 | 香蕉久久久久久 | 青草久久网 | 成人国产精品免费 | 国内精品国产三级国产a久久 | 国产一级免费在线视频 | 久久免费视频在线 | 免费在线观看中文字幕 | 精品国产乱码一区二区三区四区 | 国产一区二区三区撒尿在线 | 久久探花| 久久久久久久久久久国产精品 | 国产不卡av在线 | 27xxoo无遮挡动态视频 | 91快色视频 |