sql server中的hash應用優化
sql server很多地方用到hash,計劃快取查詢,hash連線,hash聚合等。
hash查詢mssql很多設計中都應用了,不過我們能在開發設計中,也可以利用這個特性。
將如果有需求對大文字進行完全匹配,比如查詢產品型號(較長字串),那麼可以建立一個產品型號的hash欄位,然後在hash欄位上進行查詢,不過最重要的是如果匹配成功,還不要忘記在where上再加一個條件,就是原始產品型號欄位的一致,因為存在極為渺小的可能不同文字能整成一個hash。
hash連線方面,mssql一般都是對於超大資料集而言,對於hash連線的優化,需要區分連線的大小表,以確定構建表和探索表,由於構建表先行,而且hash連線都是超大表的連線,所以需要特別節省記憶體,在hash節省記憶體方面的優化,主要是對於查詢樹的形狀進行規劃,左深度,右深度,濃密度,有時候需要強制定位hash順序,指定構建表,有時候需要跟蹤是不是會被交換到虛擬檔案上,這就需要跟蹤救助演算法。還有如果連線欄位需要檢視統計資訊是否正常,如果不正常導致系統採用hash,就先更新統計,再看看系統是否還整成hash運算子。
hash聚合如果也和連線差不多,主要在於如果聚合欄位分組較少,那麼對hash聚合非常有利,記憶體很省,如果又有排序, 那最好採用流聚合。不過一般情況下除非統計資訊出錯,否則優化器都能正確選擇流聚合和hash聚合。
來自 “ ITPUB部落格 ” ,連結:http://blog.itpub.net/16436858/viewspace-617120/,如需轉載,請註明出處,否則將追究法律責任。
相關文章
- SQL SERVER中SQL優化SQLServer優化
- 優化SQL Server中的備份優化SQLServer
- SQL SERVER優化SQLServer優化
- SQL Server優化之SQL語句優化SQLServer優化
- 優化 SQL Server 中的備份和還原效能優化SQLServer
- SQL Server Express和SQL Server Compact的應用SQLServerExpress
- SQL Server優化50法SQLServer優化
- SQL SERVER效能優化(轉)SQLServer優化
- SQL Server SQL效能優化之引數化SQLServer優化
- 優化SQL中的or優化SQL
- SQL Server中的未文件化的dbcc命令(適用於SQL Server 2000)SQLServer
- SQL Server 查詢優化功能SQLServer優化
- SQL SERVER效能優化綜述SQLServer優化
- 50種方法優化SQL Server優化SQLServer
- 【SQL Server 優化效能的幾個方面】SQLServer優化
- 使用優化實用工具來優化SQL Server效能優化SQLServer
- SQL Server 2005中Service Broker應用的組成SQLServer
- MS SQL Server查詢優化方法SQLServer優化
- MS SQL Server查詢優化方法SQLServer優化
- 深入淺出的SQL server 查詢優化SQLServer優化
- SQL Server 2000 中查詢優化器使用的統計SQLServer優化
- SQL Server SQL語句進行優化的基本原則SQLServer優化
- SQL優化--用各種hints優化一條SQLSQL優化
- SQL Server FOR XML PATH 語句的應用SQLServerXML
- SQL Server 2005 中的分割槽表和索引應用SQLServer索引
- Oracle與SQL Server在企業應用中的比較(轉)OracleSQLServer
- 【效能優化】CBO,RBO在ORACLE中的應用優化Oracle
- SQL Server SQL語句進行優化的基本原則 (轉)SQLServer優化
- 應用索引技術優化SQL 語句(Part 3)索引優化SQL
- 應用索引技術優化SQL 語句(Part 2)索引優化SQL
- 應用索引技術優化SQL 語句(Part 1)索引優化SQL
- SQL Server COALESCE()函式的創新應用SQLServer函式
- iOS應用程式中UITableView的效能優化(最全面)iOSUIView優化
- 優化SQL Server 2008的查詢效能優化SQLServer
- 編寫和優化SQL Server的儲存過程優化SQLServer儲存過程
- 五十種巧妙優化SQL Server資料庫的方法優化SQLServer資料庫
- sql server 中的一些實用的sql語句SQLServer
- 優化Angular應用的效能優化Angular