三個影響SQL Server性能的關鍵_Mssql數據庫教程
推薦:談SQL Server 數據挖掘應用于商業智能中智能應用的平臺 在過去的二十年中,經濟快速發展,組織機構普遍都收集了大量的商業數據。然而,擁有大量的數據并不意味著擁有了豐富的商業信息。因此,商業智能需要進展到下一步數據挖掘。 數據挖掘能幫助您在瀏覽巨量數據的同時從中發現潛在有效的模式,并
1 邏輯數據庫和表的設計
數據庫的邏輯設計、包括表與表之間的關系是優化關系型數據庫性能的核心。一個好的邏輯數據庫設計可以為優化數據庫和應用程序打下良好的基礎。
標準化的數據庫邏輯設計包括用多的、有相互關系的窄表來代替很多列的長數據表。下面是一些使用標準化表的一些好處。
A:由于表窄,因此可以使排序和建立索引更為迅速。
B:由于多表,所以多鏃的索引成為可能。
C:更窄更緊湊的索引。
D:每個表中可以有少一些的索引,因此可以提高insert update delete等的速度,因為這些操作在索引多的情況下會對系統性能產生很大的影響。
E:更少的空值和更少的多余值,增加了數據庫的緊湊性由于標準化,所以會增加了在獲取數據時引用表的數目和其間的連接關系的復雜性。太多的表和復雜的連接關系會降低服務器的性能,因此在這兩者之間需要綜合考慮。
定義具有相關關系的主鍵和外來鍵時應該注意的事項主要是:用于連接多表的主鍵和參考的鍵要有相同的數據類型。
2 索引的設計
A:盡量避免表掃描
檢查你的查詢語句的where子句,因為這是優化器重要關注的地方。包含在where里面的每一列(column)都是可能的侯選索引,為能達到最優的性能,考慮在下面給出的例子:對于在where子句中給出了column1這個列。
下面的兩個條件可以提高索引的優化查詢性能!
第一:在表中的column1列上有一個單索引;
第二:在表中有多索引,但是column1是第一個索引的列。
避免定義多索引而column1是第二個或后面的索引,這樣的索引不能優化服務器性能。
例如:下面的例子用了pubs數據庫。
SELECT au_id, au_lname, au_fname FROM authors
WHERE au_lname = ’White’
按下面幾個列上建立的索引將會是對優化器有用的索引
au_lname
au_lname, au_fname
而在下面幾個列上建立的索引將不會對優化器起到好的作用
au_address
au_fname, au_lname
分享:怎樣改善SQL Server數據庫的內存管理最近,為了能在數據庫服務器中運行其他應用程序,在保持數據庫操作系統版本不變的前提下對數據庫服務器進行了軟、硬件上的升級。在軟件上,將操作系統從Windows 2000升級到Windows Server 2003;在硬件上,將服務器中的內存由原來的512MB增加到1GB(1024MB)。
- sql 語句練習與答案
- 深入C++ string.find()函數的用法總結
- SQL Server中刪除重復數據的幾個方法
- sql刪除重復數據的詳細方法
- SQL SERVER 2000安裝教程圖文詳解
- 使用sql server management studio 2008 無法查看數據庫,提示 無法為該請求檢索數據 錯誤916解決方法
- SQLServer日志清空語句(sql2000,sql2005,sql2008)
- Sql Server 2008完全卸載方法(其他版本類似)
- sql server 2008 不允許保存更改,您所做的更改要求刪除并重新創建以下表
- SQL Server 2008 清空刪除日志文件(瞬間日志變幾M)
- Win7系統安裝MySQL5.5.21圖解教程
- 將DataTable作為存儲過程參數的用法實例詳解
- 相關鏈接:
- 教程說明:
Mssql數據庫教程-三個影響SQL Server性能的關鍵。