引言
對于一個從事 DBA 作業十幾年的“老鳥”來說,你要問我管理資料庫最頭疼的事是啥?我會告訴你,無休止的優化會是很多 DBA 的噩夢,相信這也是很多同行的感受! 為什么會這樣?是 DBA 的能力不行 ,做不好優化嗎?
本文是關于資料庫優化的專業文章,從文中可以看出資料庫優化不只是 DBA 的事,而是需要所有相關人員在設計、開發測驗、運維以及硬體選型等環節相互配合,這樣才能最大可能地提升資料庫的性能,
本文與很多資料庫專著的不同之處就是作者能從一線開發工程師的角度去解讀和探討資料庫優化的思路,同時給出了大量的代碼示例和參考SQL,使得讀者完全可以根據書中示例一一實踐,有助于加深對資料庫優化的理解,
在閱讀本文的程序中,你也會欣喜地發現,作者在展開篇幅的同時,深入淺出地介紹了很多資料庫的知識點 這些基礎知識對于開發人員理解資料庫的作業原理,以及 DBA 掌握和運維資料庫,都會有巨大幫助!相信本文會幫到很多人,

本文將從目錄、主要內容和讀者物件給大家進行介紹,大家循序漸進的看就可以,你會發現內容越來越深,可以讓你學習到更多的知識,希望本文能夠幫助到大家的學習!
目錄

主要內容
本文分為四大部分,
第一部分為引入篇(第0~1章),
這部分首先結合我多年的作業經驗,總結了SQL陳述句優化時可能會面臨的一些困難,然后講述了一些常見的關于SQL優化的誤區,以便讀者正確看待SQL陳述句優化,
第1章講述了我曾經處理的幾個案例,通過這些活生生的案例,可以讓讀者更直觀地感受到SQL陳述句優化的重.要性,同時在每企案例后面,我還針對窒例出現的問題進行了總結,

第二部分為原理篇(第2-9章)
第2章講述了SQL陳述句優化的核心組件——優化器,以及優化的最基礎概念——成本,這部分非常重要,建議初學者仔細閱讀,

第3~6章介紹了和優化相關的幾個重要概念:執行計劃、統計資訊、SQL決議、游標、系結變數,這部分較為基礎,建議初學者根據情況選擇閱讀,


第7~8章介紹了SQL陳述句的物體物件及它們在物理上是如何存盤資料的,這部分對于資料庫結構設計有較大幫助,此外,在對SQL陳述句進行優化時,也需要考慮相關物件,因為優化措施可能會影響該物件的其他陳述句,需要統籌考慮,

第9章介紹了Oracle專有的一些SQL陳述句,使用這些陳述句有時可以達到意想不到的效果,如果你不考慮資料庫平臺遷移的問題,可以充分利用這些陳述句,

原理篇是我們是邁入實踐篇的基礎,它幾乎覆寫了SQL優化相關的所有原理知識,通過對這些內容的學習,讀者可以為后面的SQL優化打下良好的基礎,如果你已經擁有相關知識基礎,可以直接進入實踐篇,
第三部分為SQL篇(第10~16章),
第10章介紹了一個重要的優化手段——查詢轉換,這章內容相對來說比較難,市面上相關資料較少,可作為重點來看,

第11章介紹了資料物件的訪問方式,這章內容非常基礎,也可作為重點來看,

第12~~16章介紹了多種操作及常見的優化手段,包括表關聯、半/反連接、子查詢、排序、并行等,對于這部分內容,讀者可根據實際需求有重點地閱讀,

第四部分為實踐篇(第17~22章),
第17章針對不同的資料庫,如Oracle及 MySQL等,詳細介紹如何從其結構設計、SQL開發等方面制定一系列的規范,目的是讓一線的架構、研發、運維人員有章可循,

第18章主要分析建立完善的資料庫架構評估模型的方法,通過建立性能基線和業務壓力模型來模擬壓力測驗,以及根據測驗結果來確定優化方案,根據性能問題的相關特征,如整體或區域、偶爾慢還是持續慢等,從陳述句級、物件級、資料庫級、資料庫架構級、應用架構級、業務架構級等維度逐層分析,找到問題的瓶頸點,

第19章主要介紹勾勒資料庫畫像的方法,資料庫畫像,即依托于現有的資料庫物件、陳述句、訪問特征、性能表現等進行資料的采集和分析,幫助我們形成對資料庫的基本認知,并據此來制定運維管理策略、技術方案、遷移方案以及作業量等,

第20~22章深度剖析打造資料庫審核平臺的方法,借助平臺設定的審核規則,我們可以快速發現資料庫中潛在的風險,對于研發人員而言,可以借助平臺來定位問題,并且達到輔助設計和開發作業的目的,對于DBA而言,可以借助平臺快速掌握多個系統的整體情況,批量篩選低效SQL,以及快速診斷一般性問題,

這份【資料庫高效優化:架構、規范與SQL技巧】共有438頁,需要完整版的小伙伴,可以以下方式來獲取!

本文特色和讀者物件
1.本文具有以下幾個特點:
- 文中內容由專案而生,以一線開發工程師的視角展開
- 注重實戰 幾乎所有的章節都配有代碼,讀者可在實際作業環境中直接撰寫代碼并運行大部分代碼附有詳細的說明,便于讀者理解,
- 涵蓋了 SQL 陳述句的諸多方面,特別是第二部分,可作為作業手冊供大家優化時查閱使用,
2.讀者物件
本文主要講解了與Oracle資料庫的SQL陳述句優化相關的內容,除了個別Oracle自有的優化特性外,文中介紹的核心優化思想也適用于其他關系型資料庫,文中沒有講解Oracle體系結構和SQL語言本身,這里假設大部分人已熟悉Oracle和 SQL語言,
具體來說,本文適讀的重點物件包括但不局限于下列人員:
- Oracle資料庫開發人員,
- 資料庫架構師、資料庫管理員,
- 其他關系型資料庫的從業者,
- 對SQL陳述句優化感興趣的人員,
- 大專院校計算機相關專業的學生,
希望本文能夠幫助到大家的學習,讓大家成長的更快,不斷提升自己的價值!
也希望本文能夠得到大家的喜歡,多多轉發關注不迷路,后面持續更新好文!
轉載請註明出處,本文鏈接:https://www.uj5u.com/qianduan/216307.html
標籤:其他
