網友評分: 5分
sql server 2008r2企業版是微軟官方推出的一款非常強大的數據庫管理軟件,該軟件支持32位以及64位版本系統,支持Win7、Win8、Win10等操作系統,該版本是2008企業版最新版本的數據庫軟件,可以有效地提升企業內部數據庫管理的效率,新版本在性能和功能方面都有所優化。
1、新的FORCESCAN查詢提示
任何DBA在進行查詢優化的時候,都知道scan和seek之間的區別。Scan是指讀取表中每一行數據然后返回查詢;而seek使用表的葉數據來找到能夠回答相同查詢的行。當查詢結果僅涉及到表數據的10-15%時,通常使用seek方式會比較好,當涉及到大量數據時則使用scan,它會讀取整個表然后送到內存中然后返回結果,無需分析索引。
①新的FORCESCAN提示功能就和字面上的意思一樣,可以確保查詢優化器在給定的操作中不使用seek,而強制使用scan。需要提醒的是,FORCESCAN需要謹慎使用,否則會造成查詢性能降低的后果。
②SELECT user_type FROM user_table WITH (FORCESCAN)
上面的語句假定user_type列相對來說并不是獨一無二的,也就是所謂的“低基數”列,這時候使用FORCESCAN就和使用索引沒有太大差別。
③隨著SQL Server查詢優化器變得越來越強大,我在自己的程序中已經很少會用到這種提示功能,但是FORCESCAN還是有它的用武之處。強制表掃描是對系統進行拷問測試的一種方法,FORCESCAN在這方面將會發揮積極的作用。
2、FORCESEEK查詢提示的新功能
?、貴ORCESEEK和FORCESCAN二者是截然相反的,它會強制數據庫使用seek。在之前的版本中也存在這一功能,但是在SQL Server 2008 R2 SP1中,DBA可以使用FORCESEEK來指定需要seek的索引或者列:
②SELECT user_name FROM user_table
?、踂ITH (FORCESEEK(user_table_index(user_name))
④如果你能夠想到的,在user_table上有一個索引叫做user_table_index,它將user_name作為其中的一列。這會強制查詢優化器使用這個索引和列來進行seek。你還可以seek多個列,但是這需要按照它們在索引中的位置順序來指明出來。
?、菀粋€可能的應用場景:你創建了一個系統,其中生成索引后你想要手動進行詳細的說明,或者是用存儲過程以及內嵌SQL語句來自動生成。
3、新的系統對象
?、倜慨擲QL Server有版本更新的時候,都會出現一些新的系統對象,用戶每次都將它們挖掘出來然后記錄到文檔當中。下面就是SQL Server 2008 R2 SP1中一些新的系統對象。
?、趕ys.dm_os_volume_stats:當進行查詢的時候,這個動態管理函數將返回存儲數據庫文件的磁盤信息。比如磁盤上還有多少可用空間,這個卷是否支持壓縮。
③sys.dm_os_windows_info:返回SQL Server運行的操作系統信息(哪個版本的Windows),其中包括了修訂級別以及操作系統語言等。
④sys.dm_server_registry:返回現安裝的SQL Server相關注冊信息。
?、輘ys.dm_server_services:返回SQL Server正在運行的服務狀態,包括上次啟動時間、服務是否運行在集群實例上等。
4、支持仿真(512e)硬盤
存儲市場中目前正涌現出新的硬盤驅動器,其中之一就是使用所謂的“512e”格式的硬盤,仿真硬盤運用磁盤的4K扇區,但是在界面上模擬一個512字節的扇區硬盤。在TechTarget之前關于仿真硬盤對Windows Server影響的報道中,作者已經將該硬盤稱為先進格式硬盤,而且它對于提升SQL Server這樣應用性能方面有很大的優勢。因此,微軟在SP1中添加了對仿真硬盤的支持,它可以讓Windows Server 2008 R2運行更好。
5、數據層應用組件架構(DAC Fx)
數據庫架構管理是讓每個DBA頭痛的事情,但是SQL Server在這方面提供了不錯的幫助。數據層應用組件(DAC)就是這樣的一個工具:它讓數據層對象(基本上就是數據庫中所有的東西)寫入和部署變得輕松起來。SP1包括了一個新的DAC Fx和DAC升級向導,這兩個工具可以幫助SQL Server現有數據庫架構進行升級,而且還支持微軟新的云數據庫平臺SQL Azure。
6、SharePoint PowerPivot磁盤空間控制
?、傥④汸owerPivot數據往往會緩存在SharePoint中,但是DBA還是無法對緩存機制有一個比較直接的控制。SQL Server 2008 R2 SP1可以讓DBA控制不活躍數據庫在內存中緩存的時間,并對PowerPivot文件進行磁盤清理。如果你的系統中只有少量的PowerPivot數據,而且更改很少,你希望它能夠長時間緩存在內存中,那么新的磁盤空間控制功能將會非常有幫助。
?、谕ㄟ^sys.sp_db_increased_partitions存儲過程將一個表分成15000個分區。
③sys.sp_db_increased_partitions存儲過程可以使DBA能夠針對一個特定的表設定increased_partitions。在之前的SQL Server版本中,DBA最多能夠分成1000個分區,而新的SP1中最多則可以達到15000個分區。這是非常大的一個改進。
標簽: sql server 數據庫