<rt id="bn8ez"></rt>
<label id="bn8ez"></label>

  • <span id="bn8ez"></span>

    <label id="bn8ez"><meter id="bn8ez"></meter></label>

    tbwshc

    Oracle查詢優化4大方面的主要途徑

    數據庫最基本的任務是存儲、管理數據,而終端用戶唯一能看到的數據庫特性就是其性能:數據庫以何速度處理某一指定查詢的結果,并且將結果返回到用戶所用的工具和應用程序。從大多數系統的應用實例來看,查詢操作在各種數據庫操作中所占據的比重最大、查閱新聞、 查看文件、 查詢統計信息等。因此,數據庫查詢操作的效率是影響一個應用系統響應時間的關鍵因素。隨著一個應用系統中數據的動態增長,數據量變大,數據庫查詢效率就會有所降低,應用系統的響應速度也隨之減慢,尤其對于海量數據的管理和查詢問題就更加突出,Oracle查詢優化就顯得尤為重要。   

    目前通用的數據庫產品有很多種,其中Oracle數據庫以其支持大數據庫、多用戶的高性能事務處理, 對業界各項工業標準的支持,完整的安全和完整性控制,支持分布式數據庫利分布處理 具有可移植性、可兼容性和可連接性等突出優點倍受用戶喜愛,應用較為廣泛,在互聯網數據庫平臺上處于領先地位、其Spatial技術能更加有效地管理地理信息,實現海量空間信息的存儲和管理。本文結合Oracle數據庫應用經驗,從命中率提高、多表查詢優化、大表查詢優化和SQL優化等四個方面闡述Oracle查詢優化的經驗和方法。

    Oracle查詢優化第一方面:Oracle數據查詢tb命中率的提高   

    “命中率(HITRATIO) 是指直接從內存中取得數據而不從磁盤中取得數據的比率,也就是查詢請求的數據塊已經在內存中次數的百分比”。影響命中率的因素有四種:字典表活動、臨時段活動、回滾段活動、表掃描, 應用DBA可以對這四種因素進行分析,找出數據庫命中率低的癥結所在。

    1)字典表活動  

    當一個SQL語句第一次到達Oracle內核時數據庫對SQL語句進行分析,包含在查詢中的數據字典對象被分解,產生SQL執行路徑。如果SQL語句指向一個不在SGA中的對象??表或視圖,Oracle執行SQL語句到數據典中查詢有關對象的信息。數據塊從數據字典表被讀取到SGA的數據緩存中。由于每個數據字典都很小,因此,我們可緩存這些表以提高對這些表的命中率。但是由于數據字典表的數據塊在SGA中占據空間,當增加全部的命中率時,它們會降低表數據塊的可用空間, 所以若查詢所需的時間字典信息已經在SGA緩存中,那么就沒有必要遞歸調用。

    2)臨時段的活動   

    當用戶執行一個需要排序的查詢時,Oracle設法對內存中排序區內的所有行進行排序,排序區的大小由數據庫的init.ora文件的數確定。如果排序區域不夠大,數據庫就會在排序操作期間開辟臨時段。臨時段會人為地降低OLTP(online transaction processing)應用命中率,也會降低查詢進行排序的性能。如果能在內存中完成全部排序操作,就可以消除向臨時段寫數據的開銷。所以應將SORT_AREA_SIZE設置得足夠大,以避免對臨時段的需要。這個參數的具體調整方法是:查詢相關數據,以確定這個參數的調整。  
    select * from v$sysstat where name='sorts(disk)'or name='sorts(memory);

    大部分排序是在內存中進行的,但還有小部分發生在臨時段, 需要調整 值,查看init.ora文件的 SORT_AREA_SIZE值,參數為:SORT_AREA_SIZE=65536;將其調整到SORT_AREA_SIZE=131072、這個值調整后,重啟ORACLE數據庫即可生效。

    3)回滾段的活動   

    回滾段活動分為回滾活動和回滾段頭活動。對回滾段頭塊的訪問會降低應用的命中率, 對OLTP系統命中率的影響最大。為確認是否因為回滾段影響了命中率,可以查看監控輸出報表中的“數據塊相容性讀一重寫記錄應用” 的統計值,這些統計值是用來確定用戶從回滾段中訪問數據的發生次數。

    4)表掃描   

    通過大掃描讀得的塊在數據塊緩存中不會保持很長時間, 因此表掃描會降低命中率。為了避免不必要的全表掃描,首先是根據需要建立索引,合理的索引設計要建立人對各種查詢的分析和預測上,筆者會在SQL優化中詳細談及;其次是將經常用到的表放在內存中,以降低磁盤讀寫次數。例如 Alter table your_table_name cathe。

    posted on 2012-06-30 23:02 chen11-1 閱讀(1523) 評論(0)  編輯  收藏 所屬分類: oracle

    主站蜘蛛池模板: 亚洲美女aⅴ久久久91| 午夜精品射精入后重之免费观看 | 456亚洲人成影院在线观| 久久久久久国产精品免费免费男同 | 99精品免费观看| 久久精品国产亚洲AV嫖农村妇女| 国产免费拔擦拔擦8X高清在线人| 国外亚洲成AV人片在线观看| 亚洲欧洲日产国产综合网| 黄色片免费在线观看| 亚洲人成影院在线| 亚洲黄色免费在线观看| 亚洲国产中文在线视频| 天天摸天天碰成人免费视频| 国产∨亚洲V天堂无码久久久 | 999国内精品永久免费观看| 亚洲国产美女福利直播秀一区二区| 亚洲国产精品免费观看| 亚洲人成自拍网站在线观看| 日本中文一区二区三区亚洲| 好男人资源在线WWW免费| 亚洲av无码一区二区三区乱子伦| 8090在线观看免费观看| 亚洲人精品亚洲人成在线| 国产免费人成视频在线观看| 日韩在线观看免费| 毛片高清视频在线看免费观看| 欧美亚洲国产SUV| 91手机看片国产永久免费| 亚洲啪AV永久无码精品放毛片 | 国产精品无码素人福利免费| 黄色毛片免费观看| 亚洲AV无码一区二区乱孑伦AS| 波多野结衣免费在线| 成人婷婷网色偷偷亚洲男人的天堂 | 亚洲婷婷五月综合狠狠爱| 色吊丝性永久免费看码| 亚洲第一视频网站| 四虎成人免费大片在线| 97在线视频免费公开视频| 国产亚洲美日韩AV中文字幕无码成人|