溫馨提示×

溫馨提示×

您好,登錄后才能下訂單哦!

密碼登錄×
登錄注冊×
其他方式登錄
點擊 登錄注冊 即表示同意《億速云用戶服務條款》

Oracle Database 12c DBA文官手冊(第8版)——第5章 開發(fā)和實現(xiàn)應用程序

發(fā)布時間:2020-07-23 19:02:36 來源:網(wǎng)絡 閱讀:151 作者:biltmore 欄目:關系型數(shù)據(jù)庫

1 調(diào)整設計:最佳實踐

        1.1做盡可能 少的工作

            應該簡化應用程序每個步驟所涉及的過程。強調(diào)應用程序的功能和滿足業(yè)務性能需求的能力。

            1、應用程序設計中努力消除邏輯讀

                  如果多個用戶需要讀取相同的數(shù)據(jù),應將其存儲在表中或程序包變量中。

                  修改應用程序設計,以消除不必要的命令執(zhí)行。

                  緩沖區(qū)極高命中率可標識為執(zhí)行過多的邏輯讀。

                  在11g和12c中最好使用基于等待的調(diào)整。

            2、 應用程序設計中努力避免對數(shù)據(jù)庫的往返訪問

                   在數(shù)據(jù)庫服務器、應用服務器和終端計算機之間的來回通信是應該調(diào)整的目標。

                   在本地變量中存儲經(jīng)常需要的值避免重復查詢數(shù)據(jù)庫。

            3、對于報告系統(tǒng),按照用戶的查詢方式存儲數(shù)據(jù)

                  創(chuàng)建維護物化視圖或報告表避免為用戶作數(shù)據(jù)格式的轉換。

            4、避免重復的連接到數(shù)據(jù)庫

                  保持數(shù)據(jù)庫連接為打開狀態(tài)并重復使用

            5、正確使用索引

                  在OLTP應用程序中不應該使用位圖索引

                  如果某列具有非常少的不同值勿建索引

        1.2 做盡可能 簡單的工作

              1、在原子級執(zhí)行

                    對于執(zhí)行批處理操作應創(chuàng)建臨時表存儲每個步驟的數(shù)據(jù)

                    將操作分解為較小的組成部分能解決性能問題

               2、消除不必要的排序

                    SORT ORDER BY是集合操作完成前不會返回數(shù)據(jù)

                    UNION也執(zhí)行排序建議以UNION ALL代替之

              3、消除使用撤消操作的需求

                     應用程序設計應避免頻繁查詢其它人可能會同時改變的數(shù)據(jù)

        1.3 告訴數(shù)據(jù)庫需要知道的內(nèi)容

                1、保持更新統(tǒng)計

                    默認情況下ASG在(維護窗口)每晚10點至6點及周末全天收集統(tǒng)計信息

                    批量加載的表大小增加了10%以上時可手動收集

                    12c允許在模式表或表的分區(qū)中并行收集統(tǒng)計信息

                    手動收集前的會話級或系統(tǒng)及參數(shù)的使用以優(yōu)化性能

                2、在需要的地方使用提示

                      基于成本優(yōu)化器(CBO)選擇最有效的查詢執(zhí)行路徑

        1.4 最大化環(huán)境中的吞吐量

                1、使用適當?shù)臄?shù)據(jù)庫塊大小8KB

                2、設計吞吐量而非磁盤容量

                3、避免使用臨時段

                      盡可能 在內(nèi)存中執(zhí)行所有排序

         1.5 分開處理數(shù)據(jù)

                1、使用分區(qū)

                2、使用物化視圖

                3、使用并行化

         1.6 正確測試

                1、使用大量數(shù)據(jù)測試

                      拆分葉塊和維護索引時可能引發(fā)爭用

                2、使用許多并發(fā)用戶測試

                      確認并發(fā)用戶是否引起死鎖、數(shù)據(jù)一致性和性能問題

                3、測試索引對加載次數(shù)的影響

                      添加一個索引會帶來DML操作的開銷

                4、所有的測試可重復

                      必須能重建使用的數(shù)據(jù)集、執(zhí)行動作、預期結果和記錄的結果

                      未遵循測試的標準常見原因是時間和成本

        1.7 標準的可交付成果

                1、實體關系圖

                    表明組成應用程序的實體之間的標識關系

                2、物理數(shù)據(jù)庫圖

                    從實體中生成的物理表及其屬性生成的列

                3、空間需求初始值

                4、查詢和事務處理的調(diào)整目標

                    必須定義和批準應用程序中使用最多的每個操作的響應時間

                    建立合理目標和伸展目標

                    根據(jù)不同目標建立查詢和事務性能的控制邊界

                5、安全需求

                    指定應用程序使用的賬戶結構及相關授權

                6、數(shù)據(jù)需求

                     定義數(shù)據(jù)輸入和檢索方法

                    描述應用程序的備份和恢復需求并與企業(yè)數(shù)據(jù)庫備份計劃比較

                7、查詢執(zhí)行計劃

                    數(shù)據(jù)庫執(zhí)行查詢所需要完成的步驟

                8、驗收測試過程


                

            

向AI問一下細節(jié)

免責聲明:本站發(fā)布的內(nèi)容(圖片、視頻和文字)以原創(chuàng)、轉載和分享為主,文章觀點不代表本網(wǎng)站立場,如果涉及侵權請聯(lián)系站長郵箱:is@yisu.com進行舉報,并提供相關證據(jù),一經(jīng)查實,將立刻刪除涉嫌侵權內(nèi)容。

AI