1. <tt id="5hhch"><source id="5hhch"></source></tt>
    1. <xmp id="5hhch"></xmp>

  2. <xmp id="5hhch"><rt id="5hhch"></rt></xmp>

    <rp id="5hhch"></rp>
        <dfn id="5hhch"></dfn>

      1. 大型ORACLE數據庫優化設計方案

        時間:2024-07-12 12:24:55 計算機畢業論文 我要投稿
        • 相關推薦

        大型ORACLE數據庫優化設計方案

        摘 要 本文主要從大型數據庫ORACLE環境四個不同級別的調整分析入手,分析ORACLE的系統結構和工作機理,從九個不同方面較全面地總結了ORACLE數據庫的優化調整方案。

        關鍵詞 ORACLE數據庫 環境調整 優化設計 方案

        對于ORACLE數據庫的數據存取,主要有四個不同的調整級別,第一級調整是操作系統級包括硬件平臺,第二級調整是ORACLE RDBMS級的調整,第三級是數據庫設計級的調整,最后一個調整級是SQL級。通常依此四級調整級別對數據庫進行調整、優化,數據庫的整體性能會得到很大的改善。下面從九個不同方面介紹ORACLE數據庫優化設計方案。
        一.數據庫優化自由結構OFA(Optimal flexible Architecture)
        數據庫的邏輯配置對數據庫性能有很大的影響,為此,ORACLE公司對表空間設計提出了一種優化結構OFA。使用這種結構進行設計會大大簡化物理設計中的數據管理。優化自由結構OFA,簡單地講就是在數據庫中可以高效自由地分布邏輯數據對象,因此首先要對數據庫中的邏輯對象根據他們的使用方式和物理結構對數據庫的影響來進行分類,這種分類包括將系統數據和用戶數據分開、一般數據和索引數據分開、低活動表和高活動表分開等等。
        數據庫邏輯設計的結果應當符合下面的準則:(1)把以同樣方式使用的段類型存儲在一起;(2)按照標準使用來設計系統;(3)存在用于例外的分離區域;(4)最小化表空間沖突;(5)將數據字典分離。
        二、充分利用系統全局區域SGA(SYSTEM GLOBAL AREA)
        SGA是oracle數據庫的心臟。用戶的進程對這個內存區發送事務,并且以這里作為高速緩存讀取命中的數據,以實現加速的目的。正確的SGA大小對數據庫的性能至關重要。SGA包括以下幾個部分:
        1、數據塊緩沖區(data block buffer cache)是SGA中的一塊高速緩存,占整個數據庫大小的1%-2%,用來存儲從數據庫重讀取的數據塊(表、索引、簇等),因此采用least recently used (LRU,最近最少使用)的方法進行空間管理。
        2、字典緩沖區。該緩沖區內的信息包括用戶賬號數據、數據文件名、段名、盤區位置、表說明和權限,它也采用LRU方式管理。
        3、重做日志緩沖區。該緩沖區保存為數據庫恢復過程中用于前滾操作。
        4、SQL共享池。保存執行計劃和運行數據庫的SQL語句的語法分析樹。也采用LRU算法管理。如果設置過小,語句將被連續不斷地再裝入到庫緩存,影響系統性能。
        另外,SGA還包括大池、JAVA池、多緩沖池。但是主要是由上面4種緩沖區構成。對這些內存緩沖區的合理設置,可以大大加快數據查詢速度,一個足夠大的內存區可以把絕大多數數據存儲在內存中,只有那些不怎么頻繁使用的數據,才從磁盤讀取,這樣就可以大大提高內存區的命中率。
        三、規范與反規范設計數據庫
        1、規范化
        范式是符合某一級別的關系模式的集合,根據約束條件的不同,一般有1NF、2NF、3NF三種范式。規范化理論是圍繞這些范式而建立的。規范化的基本思想是逐步消除數據依賴中不合適的部分,使模式中的各關系模式達到某種程度的“分離”,即采用“一事一地”的模式設計原則,因此,所謂規范化實質上就是概念的單一化。數據庫中數據規范化的優點是減少了數據冗余,節約了存儲空間,相應邏輯和物理的I/O次數減少,同時加快了增、刪、改的速度。但是一個完全規范化的設計并不總能生成最優的性能,因為對數據庫查詢通常需要更多的連接操作,從而影響到查詢的速度。故有時為了提高某些查詢或應用的性能而有意破壞規范規則,即反規范化。
        2、反規范化
        ⑴反規范的必要性
        是否規范化的程度越高越好呢?答案是否定的,應根據實際需要來決定,因為“分離”越深,產生的關系越多,結構越復雜。關系越多,連接操作越頻繁,而連接操作是最費時間的,在數據庫設計中特別對以查詢為主的數據庫設計來說,頻繁的連接會嚴重影響查詢速度。所以,在數據庫的設計過程中有時故意保留非規范化約束,或者規范化以后又反規范,這樣做通常是為了改進數據庫的查詢性能,加快數據庫系統的響應速度。
        ⑵反規范技術
        在進行反規范設計之前,要充分考慮數據的存取需求,常用表的大小、特殊的計算、數據的物理存儲等。常用的反規范技術有合理增加冗余列、派生列,或重新組表幾種。反規范化的好處是降低連接操作的需求、降低外碼和索引數目,減少表的個數,從而提高查詢速度,這對于性能要求相對較高的數據庫系統來說,能有效地改善系統的性能,但相應的問題是可能影響數據的完整性,加快查詢速度的同時降低修改速度。
        3、數據庫設計中的優化策略
        數據應當按兩種類別進行組織:頻繁訪問的數據和頻繁修改的數據。對于頻繁訪問但是不頻繁修改的數據,內部設計應當物理不規范化。對于頻繁修改但并不頻繁訪問的數據,內部設計應當物理規范化。比較復雜的方法是將規范化的表作為邏輯數據庫設計的基礎,然后再根據整個應用系統的需要,物理地非規范化數據。規范與反規范都是建立在實際的操作基礎之上的約束,脫離了實際兩者都沒有意義。只有把兩者合理地結合在一起,才能相互補充,發揮各自的優點。
        四、合理設計和管理表
        1、利用表分區
        分區將數據在物理上分隔開,不同分區的數據可以制定保存在處于不同磁盤上的數據文件里。這樣,當對這個表進行查詢時,只需要在表分區中進行掃描,而不必進行FTS(Full Table Scan,全表掃描),明顯縮短了查詢時間,另外處于不同磁盤的分區也將對這個表的數據傳輸分散在不同的磁盤I/O,一個精心設置的分區可以將數據傳輸對磁盤I/O競爭均勻地分散開。
        2、避免出現行連接和行遷移
        在建立表時,由于參數pctfree和pctused不正確的設置,數據塊中的數據會出現行鏈接和行遷移,也就是同一行的數據不保存在同一的數據塊中。如果在進行數據查詢時遇到了這些數據,那么為了讀出這些數據,磁頭必須重新定位,這樣勢必會大大降低數據庫執行的速度。因此,在創建表時,就應該充分估計到將來可能出現的數據變化,正確地設置這兩個參數,盡量減少數據庫中出現行鏈接和行遷移。
        3、控制碎片
        碎片(fragmentation)是對一組非鄰接的數據庫對象的描述。碎片意味著在執行數據庫的功能時要耗費額外的資源(磁盤I/O,磁盤驅動的循環延遲,動態擴展,鏈接的塊等),并浪費大量磁盤空間。當兩個或多個數據對象在相同的表空間中,會發生區間交叉。在動態增長中,對象的區間之間不再相互鄰接。為

        大型ORACLE數據庫優化設計方案

        【大型ORACLE數據庫優化設計方案】相關文章:

        Oracle數據庫的優化03-18

        基于Oracle數據庫的邏輯數據同步技術在實踐中的應用研究03-10

        高校院系網站存在的問題及優化設計方案07-12

        主流空間數據庫引擎技術分析和優化方法研究03-12

        Oracle觸發器在MIS 開發中的應用03-18

        ORACLE RAC集群在電力營銷系統中的應用03-18

        應用Oracle數據庫監控維護技術,維護數據庫安全03-03

        論資本結構優化目標與資本結構優化03-01

        Oracle Portal及其門戶網站開發概述03-18

        国产高潮无套免费视频_久久九九兔免费精品6_99精品热6080YY久久_国产91久久久久久无码

        1. <tt id="5hhch"><source id="5hhch"></source></tt>
          1. <xmp id="5hhch"></xmp>

        2. <xmp id="5hhch"><rt id="5hhch"></rt></xmp>

          <rp id="5hhch"></rp>
              <dfn id="5hhch"></dfn>