SQL語言藝術
出處:sdydz 發(fā)布于:2011-12-23 16:47:04
前言
過去,"信息技術(IT)"的名字還不如今天這般耀眼,被稱為"電子數據處理".其實,盡管當今新潮技術層出不窮,數據處理依然處于我們系統(tǒng)的地位,而且需管理的數據量的增長速度似乎比處理器的增長速度還快。今天,重要的集團數據都被保存在數據庫中,通過SQL語言來訪問。SQL語言雖有缺點,但非常流行,它從1980年代早期開始被廣泛接受,隨后就所向無敵了。
如今,年輕開發(fā)者在接受面試時,沒有誰不宣稱自己能熟練應用SQL的。SQL作為數據庫訪問語言,已成為任何基礎IT課程的必備部分。開發(fā)者宣傳自己熟練掌握SQL,其實前提是"熟練掌握"的定義是"能夠獲得功能上正確的結果".然而,全世界的企業(yè)如今都面臨數據量的爆炸式增長,所以僅做到"功能正確"是不夠的,還必須足夠快,所以數據庫性能成了許多公司頭疼的問題。有趣的是,盡管每個人都認可性能問題源自代碼,但普遍接受的事實則是開發(fā)者的首要關注點應該是功能正確。人們認為:為了便于維護,代碼中的數據庫訪問部分應該盡量簡單;"拙劣的SQL"應該交給資深的DBA去擺弄,他們還會調整幾個"有魔力"的數據庫參數,于是速度就快了--如果數據庫還不夠快,似乎就該升級硬件了。
往往就是這樣,那些所謂的"常識"和"可靠方法"終卻是極端有害的。先寫低效的代碼、后由調優(yōu),這種做法實際上是自找麻煩。本書認為,首先要關注性能的就是開發(fā)者,而且SQL問題絕不僅僅只包含正確編寫幾個查詢這么簡單。開發(fā)者角度看到的性能問題和DBA從調優(yōu)角度看到的大相徑庭。對DBA而言,他盡量從現(xiàn)有的硬件(如處理器和存儲子系統(tǒng))和特定版本的DBMS獲得性能,他可能有些SQL技能并能調優(yōu)一個性能極差的SQL語句。但對開發(fā)者而言,他編寫的代碼可能要運行5到10年,這些代碼將經歷一代代的硬件,以及DBMS各種重要版本升級(例如支持互聯(lián)網訪問、支持網格,不一而足)。所以,代碼必須從一開始就快速、健全。
很多開發(fā)者僅僅是"知道"SQL而已,他們沒有深刻理解SQL及關系理論,實在令人遺憾。
本書內容
我發(fā)現(xiàn)SQL和戰(zhàn)爭如此相像,以至于我?guī)缀跹赜昧恕秾O子兵法》的大綱,并保持了大部分題目名稱(注2)。本書分為12章,每一章包含許多原則或準則,并通過舉例的方式對原則進行解釋說明,這些例子大多來自于實際。
第1章,制定計劃:為性能而設計
討論如何設計高性能數據庫
第2章,發(fā)動戰(zhàn)爭:高效訪問數據庫
解釋如何進行程序設計才能高效訪問數據庫
第3章,戰(zhàn)術部署:建立索引
揭示為何建立索引,如何建立索引
第4章,機動靈活:思考SQL語句
解釋如何設計SQL語句
第5章,了如指掌:理解物理實現(xiàn)
揭示物理實現(xiàn)如何影響性能
第6章,錦囊妙計:認識經典SQL模式
包括經典的SQL模式、以及如何處理
第7章,變換戰(zhàn)術:處理層次結構
說明如何處理層次數據
第8章,孰優(yōu)孰劣:認識困難,處理困難
指出如何認識和處理比較棘手的情況
第9章,多條戰(zhàn)線:處理并發(fā)
講解如何處理并發(fā)
第10章,集中兵力:應付大數據量
講解如何應付大數據量
第11章,精于計謀:挽救響應時間
分享一些技巧,以挽救設計糟糕的數據庫的性能
第12章,明察秋毫:監(jiān)控性能
收尾,解釋如何定義和監(jiān)控性能
維庫PDF:SQL語言藝術.rar
下一篇:液晶彩電高壓板的功能與識別
版權與免責聲明
凡本網注明“出處:維庫電子市場網”的所有作品,版權均屬于維庫電子市場網,轉載請必須注明維庫電子市場網,http://www.hbjingang.com,違反者本網將追究相關法律責任。
本網轉載并注明自其它出處的作品,目的在于傳遞更多信息,并不代表本網贊同其觀點或證實其內容的真實性,不承擔此類作品侵權行為的直接責任及連帶責任。其他媒體、網站或個人從本網轉載時,必須保留本網注明的作品出處,并自負版權等法律責任。
如涉及作品內容、版權等問題,請在作品發(fā)表之日起一周內與本網聯(lián)系,否則視為放棄相關權利。
- MOSFET反向恢復特性對系統(tǒng)的影響2026/4/10 11:07:36
- 連接器耐腐蝕性能測試方法2026/4/10 10:56:32
- MOSFET在高頻開關中的EMI問題2026/4/9 10:13:50
- 連接器結構設計常見問題分析2026/4/9 10:02:52
- 連接器選型中容易忽略的關鍵參數2026/4/8 10:32:54









