出版時間:2009 出版社:人民郵電出版社 作者:Christian Antognini 頁數(shù):451 字數(shù):790000 譯者:童家旺,胡怡文,馮大輝
Tag標簽:無
前言
與過去的10年相比,現(xiàn)在在書店買到的Oracle性能方面的圖書,其內(nèi)容和質(zhì)量上有了極大提升。我認為這對大家充分挖掘Oracle的性能無疑是最好的事情?! ∥覀円郧澳苜I到的關于Oracle性能的圖書都千篇一律。那些書暗示Oracle系統(tǒng)必然承載過多的I/O(實際上不一定)或是內(nèi)存不足(這和他們描述的I/O士多其實是一回事,但卻不是事實)。那些書向你展示可能運行的數(shù)不清的SQL腳本,告訴你要優(yōu)化SQL,并且揚言這樣就能搞定一切?! ≌媸遣豢盎厥椎穆L夜??! Chris的這本書是給我們帶來光明的一本書。光明與黑暗的界線,在于能否體現(xiàn)出一個簡單的概念,這個概念是你從10歲開始數(shù)學老師就讓你反復練習的——展現(xiàn)你的思路(showyourwork)?! ∥业囊馑疾皇侵干吓_說故事,就像有些人說他們在數(shù)百個客戶的站點提升了若干倍性能,并自詡為專家那樣。我是說,展現(xiàn)你的思路,這意味著記錄一個起點度量,構建可控的實驗,然后記錄下一個度量,并坦誠地公布結果,讓讀者能夠完全理解,如果他們愿意甚至可以重現(xiàn)你的測試。 這是個了不起的事情。當作者開始這樣做的時候,Oracle讀者已比從前更加明智。從2000年開始,Oracle社區(qū)的人數(shù)已經(jīng)有很大增長,他們能提出具有深度的性能問題并需要有價值的答案。過去人們相信過的那些錯誤觀念很快就被一一摒棄了?! ≡诒緯校珻hris遵循切實可行的模式,講述了有用的信息。但是,他并不止于此。他展示給讀者他是如何探索得知的,也就是說,他告訴你如何找到自己需要的東西。他在本書中展現(xiàn)了他的思路?! ∵@帶來了兩個益處。首先,展示他的思路有助于讀者加深理解他闡述的內(nèi)容,這使得他的經(jīng)驗對你來說容易記憶并應用。其次,通過理解他的例子,你不僅能夠掌握Chris闡述的內(nèi)容,還能夠舉一反三,回答Chris沒有講到的其他好問題,比如在這本書付梓之后下一個版本的Oracle將會有什么特性這樣的問題。
內(nèi)容概要
全書以優(yōu)化Oracle應用程序為目的,先介紹Oracle性能優(yōu)化的基本原理、關鍵概念,從業(yè)務角度和系統(tǒng)角度分析性能。接著深入細致地講述如何找出性能問題及所用工具。重點關注查詢優(yōu)化器及其使用的統(tǒng)計信息,查詢優(yōu)化器的配置,獲取執(zhí)行計劃的方法,SQL優(yōu)化技術,解析的工作原理及問題,如何高效地訪問單表和多個相關聯(lián)的表。并且延伸到高級優(yōu)化技術,及如何優(yōu)化物理設計。 本書適合Oracle數(shù)據(jù)庫應用程序開發(fā)人員、性能分析人員與數(shù)據(jù)庫管理員。
作者簡介
ChristianAntognini瑞士蘇黎世Trivadls公司首席顧問和講師,從1995年就開始致力于探究Oracle數(shù)據(jù)庫引擎的工作機制。他最熱衷的是邏輯與物理數(shù)據(jù)庫的設計、數(shù)據(jù)庫與Java應用程序的集成、查詢優(yōu)化器,以及與性能管理和優(yōu)化相關的所有方面。他還是Trivadis性能團隊和OakTable網(wǎng)
書籍目錄
第一部分 基礎 第1章 性能問題 1.1 需要為性能做規(guī)劃嗎 1.2 什么是性能問題 1.3 如何解決性能問題 1.4 小結 第2章 關鍵概念 2.1 選擇性和基數(shù) 2.2 游標的生命周期 2.3 解析的過程 2.4 讀寫數(shù)據(jù)塊 2.5 小結 第二部分 找出問題 第3章 找出性能問題 3.1 分而治之 3.2 分析路線圖 3.3 性能測量與剖析分析 3.4 性能測量 3.5 剖析應用程序代碼 3.6 跟蹤數(shù)據(jù)庫調(diào)用 3.7 剖析PL/SQL代碼 3.8 小結 第三部分 查詢優(yōu)化器 第4章 系統(tǒng)和對象統(tǒng)計信息 4.1 工具包dbms_stats簡介 4.2 系統(tǒng)統(tǒng)計 4.3 對象統(tǒng)計信息 4.4 通用服務 4.5 小結 第5章 配置查詢優(yōu)化器 5.1 配置還是不配置 5.2 配置路線圖 5.3 設置正確的參數(shù) 5.4 小結 第6章 執(zhí)行計劃 6.1 獲取執(zhí)行計劃 6.2 解釋執(zhí)行計劃 6.3 識別低效的執(zhí)行計劃 6.4 小結 第7章 SQL優(yōu)化技術 7.1 改變訪問結構 7.2 修改SQL語句 7.3 提示 7.4 改變執(zhí)行環(huán)境 7.5 SQL概要 7.6 存儲提綱 7.7 SQL計劃基線 7.8 小結 第四部分 優(yōu)化器 第8章 解析 8.1 識別解析問題 8.2 解決解析問題 8.3 應對解析問題 8.4 使用應用編程接口 8.5 小結 第9章 優(yōu)化數(shù)據(jù)訪問 9.1 找出不理想的訪問路徑 9.2 具有弱選擇性的SQL語句 9.3 具有強選擇性的SQL語句 9.4 小結 第10章 表連接優(yōu)化 10.1 定義 10.2 嵌套循環(huán)連接 10.3 合并連接 10.4 哈希連接 10.5 外連接 10.6 選擇連接方法 10.7 分區(qū)智能連接 10.8 轉換 10.9 小結 第11章 高級優(yōu)化技術 11.1 物化視圖 11.2 結果緩存 11.3 并行處理 11.4 直接路徑插入 11.5 行預取 11.6 數(shù)組接口 11.7 小結 第12章 優(yōu)化物理設計 12.1 最佳字段順序 12.2 最優(yōu)數(shù)據(jù)類型 12.3 行遷移與行鏈接 12.4 數(shù)據(jù)塊爭用 12.5 數(shù)據(jù)壓縮 第五部分 附錄 附錄A 可下載文件
章節(jié)摘錄
在關于解析的常規(guī)信息之后,可以看到執(zhí)行計劃。事實上,如果指定了explain參數(shù)的話可能會看到兩部分,第一部分被不夠準確地稱為行源操作(Row Source Operation),是游標關閉且開啟跟蹤情況下寫到跟蹤文件中的執(zhí)行計劃。這意味著如果應用程序不關閉游標而重用它們的話,不會有新的針對重用游標的執(zhí)行計劃寫入到跟蹤文件中。第二部分,叫做執(zhí)行計劃(ExecutionPlan),是由指定了explaln參數(shù)的TKPROF生成的。既然這是隨后生成的,所以和第一部分不一定完全匹配。萬一你看到不一致,前者是正確的?! 〉?章講述如何閱讀執(zhí)行計劃。這里我只針對TKPROF的特性說明一下,兩個執(zhí)行計劃都通過Rows列提供執(zhí)行計劃中每個操作返回的行數(shù)(不是處理的——要注意)。在本例中,表sales有918843行而根據(jù)跟蹤文件僅返回540318行,這表示W(wǎng)HERE條件過濾了大約41%的行。此后的GROUP BY進一步減少結果到16348行。
媒體關注與評論
本書對我來說是一本技術與理念并重的參考書,不僅包含了大量完備的可重用的實例,而且包含了一些富有說服力的新觀點。我可以用他的觀點去說服更多的人做正確的事。 ——Cary Millsap,Oracle公司系統(tǒng)性能集團前副總裁,數(shù)據(jù)庫性能技術大師 關于Oracle性能有太多的“理論”是錯的,早就應該從你的大腦中清除出了,Christian Antognini就是幫你做這個事情的人?! 狫onathan Lewis,英國Oracle用戶組織總監(jiān),Oracle數(shù)據(jù)庫技術大師
編輯推薦
Oracle數(shù)據(jù)庫優(yōu)化的里程碑式著作,涵蓋Oracle各版本,源自實戰(zhàn)的真知灼見?! ∏岸藰I(yè)務應用炙手可熱之日,便是優(yōu)化后端數(shù)據(jù)庫性能之時。當此之際,身懷數(shù)據(jù)庫優(yōu)化的絕技,可以讓你平步職場,傲視群英。 《Oracle性能診斷藝術》是Oracle數(shù)據(jù)庫優(yōu)化專家Christian Antognini的一部繼往開來的里程碑式著作。書中的最佳實踐和諸多建議全部來源于作者在實戰(zhàn)一線的豐富積累。不僅簡單實用,而且發(fā)人深省,堪稱一座“寶庫”,適合各層次讀者研讀和發(fā)掘?! ∨c其他同類圖書不同,《Oracle性能診斷藝術》不僅涵蓋了市面上常見的各種Oracle版本,還指明了各個版本獨有的性能優(yōu)化特性。全書以嶄新的視角開篇立論,圍繞查明問題真相和搜尋有效方略,透徹講解了查詢優(yōu)化器的配置,表訪問、連接和物理表布局的優(yōu)化,以及加速SQL執(zhí)行計劃等重要主題,被讀者譽為“最透徹,但又最通俗的性能優(yōu)化好書”。值得擁有!
圖書封面
圖書標簽Tags
無
評論、評分、閱讀與下載