就菜鳥所知,自從Oracle使用Cost-Based Optimization之後,statistics data對於讓Cost-Base Optimizer(CBO)產生較有效率的execution plan就相當重要。在處理SQL時,遇到沒有分析任何statistics data的時候,CBO會使用預設的資料來產生execution plan。這樣就完全仰賴『運氣』,比如說SQL Statement用到的objects的狀況和預設的差不多...。Dynamic Sampling的出現可以協助optimizer在hard parse的時候scan database的segments取得對optimzation有幫助的資訊,然而在某些狀況下即使我們有分析statistics data,但是或許是因為資料的缺乏,optimizer會產生不是那麼有效率的execution plan,在這種情形下dynamic sampling也可以提供有用的資料給optimizer產生有效率的execution plan。
PDF Document here
上半年
- Troubleshooting Oracle Performance (orcl)
- Oracle 11g PL/SQL Programming (orcl)
- Applied Mathematics for Database Professionals (basic)
- Lucene in Action 2Ed (java)
- Real World Functional Programming (ms)
- IronPython in Action (ms)
下半年
- Secret of Oracle Database (orcl)
- Programming Ruby 1.9 (os)
- Building Domain Specific Languages in Boo (ms)
- Applied Mathematics for Database Professionals (basic)
沒有留言:
張貼留言