SQL語(yǔ)言藝術(shù)

出版時(shí)間:2008-1  出版社:電子工業(yè)出版社  作者:[美] StéphaneFaroult,P  頁(yè)數(shù):349  譯者:溫 昱,靳向陽(yáng)  
Tag標(biāo)簽:無(wú)  

內(nèi)容概要

  本書分為12章,每一章包含許多原則或準(zhǔn)則,并通過(guò)舉例的方式對(duì)原則進(jìn)行解釋說(shuō)明。這些例子大多來(lái)自于實(shí)際案例,對(duì)九種SQL經(jīng)典查詢場(chǎng)景以及其性能影響討論,非常便于實(shí)踐,為你的實(shí)際工作提出了具體建議。本書適合SQL數(shù)據(jù)庫(kù)開發(fā)者、軟件架構(gòu)師,也適合DBA,尤其是數(shù)據(jù)庫(kù)應(yīng)用維護(hù)人員閱讀。

作者簡(jiǎn)介

  Stéphane Faroult從1983年開始接觸關(guān)系數(shù)據(jù)庫(kù)。Oracle法國(guó)成立早期他即加入(此前是短暫的IBM經(jīng)歷和渥太華大學(xué)任教生涯),并在不久之后對(duì)性能和調(diào)優(yōu)產(chǎn)生了興趣。1988年他離開了Oracle,此后一年間,他進(jìn)行調(diào)整,并研究過(guò)運(yùn)籌學(xué)。之后,他重操舊業(yè),一直從事數(shù)據(jù)庫(kù)咨詢工作,并于1998年創(chuàng)辦了RoughSea公司(http://www. roughsea.com)?! téphane Faroult出版了Fortran Structuré et Méthodes Numériques一書(法語(yǔ),Dunod出版社,1986, 與Didier Simon合作),并在Oracle Scene和Select(分別為英國(guó)和北美Oracle用戶組雜志)以及Oracle雜志在線版上發(fā)表了許多文章。他還是美國(guó)、英國(guó)、挪威等眾多用戶組大會(huì)的演講者?! eter Robson畢業(yè)于達(dá)拉謨大學(xué)地質(zhì)專業(yè)(1968年),然后在愛丁堡大學(xué)任教,并于1975年獲得地質(zhì)學(xué)研究型碩士學(xué)位。在希臘度過(guò)了一段地質(zhì)學(xué)家生涯之后,他開始在紐卡斯?fàn)柎髮W(xué)專攻地質(zhì)和醫(yī)學(xué)數(shù)據(jù)庫(kù)?! ∷褂脭?shù)據(jù)庫(kù)始于1977年,1981年開始使用關(guān)系數(shù)據(jù)庫(kù),1985年開始使用Oracle,這期間擔(dān)任過(guò)開發(fā)工程師、數(shù)據(jù)架構(gòu)師、數(shù)據(jù)庫(kù)管理員等角色。1980年,Peter參加了英國(guó)地質(zhì)普查,負(fù)責(zé)指導(dǎo)使用關(guān)系數(shù)據(jù)庫(kù)管理系統(tǒng)。他擅長(zhǎng)SQL系統(tǒng),以及從組織級(jí)到部門級(jí)的數(shù)據(jù)建模。Peter多次出席英國(guó)、歐洲、北美的Oracle數(shù)據(jù)庫(kù)大會(huì),在許多數(shù)據(jù)庫(kù)專業(yè)雜志上發(fā)表過(guò)文章。聯(lián)系他。

書籍目錄

前言1 制定計(jì)劃:為性能而設(shè)計(jì)數(shù)據(jù)的關(guān)系視圖規(guī)范化的重要性有值、無(wú)值、空值限用Boolean型字段理解子類型(Subtype)約束應(yīng)明確聲明過(guò)于靈活的危險(xiǎn)性歷史數(shù)據(jù)的難題設(shè)計(jì)與性能處理流程數(shù)據(jù)集中化(Centralizing)系統(tǒng)復(fù)雜性小結(jié)2 發(fā)動(dòng)戰(zhàn)爭(zhēng):高效訪問(wèn)數(shù)據(jù)庫(kù)查詢的識(shí)別保持?jǐn)?shù)據(jù)庫(kù)連接穩(wěn)定戰(zhàn)略優(yōu)先于戰(zhàn)術(shù)先定義問(wèn)題,再解決問(wèn)題保持?jǐn)?shù)據(jù)庫(kù)Schema穩(wěn)定直接操作實(shí)際數(shù)據(jù)用SQL處理集合動(dòng)作豐富的SQL語(yǔ)句充分利用每次數(shù)據(jù)庫(kù)訪問(wèn)接近DBMS核心只做必須做的SQL語(yǔ)句反映業(yè)務(wù)邏輯把邏輯放到查詢中一次完成多個(gè)更新慎用自定義函數(shù)簡(jiǎn)潔的SQLSQL的進(jìn)攻式編程精明地使用異常(Exceptions)3 戰(zhàn)術(shù)部署:建立索引找到“切入點(diǎn)”索引與目錄讓索引發(fā)揮作用函數(shù)和類型轉(zhuǎn)換對(duì)索引的影響索引與外鍵同一字段,多個(gè)索引系統(tǒng)生成鍵索引訪問(wèn)的不同特點(diǎn)4 機(jī)動(dòng)靈活:思考SQL語(yǔ)句SQL的本質(zhì)掌握SQL藝術(shù)的五大要素過(guò)濾5 了如指掌:理解物理實(shí)現(xiàn)物理結(jié)構(gòu)的類型沖突的目標(biāo)把索引當(dāng)成數(shù)據(jù)倉(cāng)庫(kù)記錄強(qiáng)制排序數(shù)據(jù)自動(dòng)分組(Grouping)分區(qū)是雙刃劍分區(qū)與數(shù)據(jù)分布數(shù)據(jù)分區(qū)的最佳方法預(yù)連接表神圣的簡(jiǎn)單性6 錦囊妙計(jì):認(rèn)識(shí)經(jīng)典SQL模式小結(jié)果集,直接條件小結(jié)果集,間接條件多個(gè)寬泛條件的交集多個(gè)間接寬泛條件的交集大結(jié)果集基于一個(gè)表的自連接通過(guò)聚合獲得結(jié)果集基于日期的簡(jiǎn)單搜索或范圍搜索結(jié)果集和別的數(shù)據(jù)存在與否有關(guān)7 變換戰(zhàn)術(shù):處理層次結(jié)構(gòu)小結(jié)果集,直接條件小結(jié)果集,間接條件多個(gè)寬泛條件的交集多個(gè)間接寬泛條件的交集大結(jié)果集基于一個(gè)表的自連接通過(guò)聚合獲得結(jié)果集基于日期的簡(jiǎn)單搜索或范圍搜索結(jié)果集和別的數(shù)據(jù)存在與否有關(guān)8 孰優(yōu)孰劣:認(rèn)識(shí)困難,處理困難看似高效的查詢條件抽象層分布式系統(tǒng)動(dòng)態(tài)定義的搜索條件9 多條戰(zhàn)線:處理并發(fā)數(shù)據(jù)庫(kù)引擎作為服務(wù)提供者并發(fā)修改數(shù)據(jù)10 集中兵力:應(yīng)付大數(shù)據(jù)量增長(zhǎng)的數(shù)據(jù)量數(shù)據(jù)倉(cāng)庫(kù)11 精于計(jì)謀:挽救響應(yīng)時(shí)間數(shù)據(jù)的行列轉(zhuǎn)換基于變量列表的查詢基于范圍的聚合一般規(guī)則,最后使用查詢與列表中多個(gè)項(xiàng)目相符的記錄最佳匹配查詢優(yōu)化器指令12 明察秋毫:監(jiān)控性能數(shù)據(jù)庫(kù)速度緩慢服務(wù)器負(fù)載因素何謂“性能優(yōu)良”從業(yè)務(wù)任務(wù)角度思考執(zhí)行計(jì)劃合理運(yùn)用執(zhí)行計(jì)劃總結(jié):影響性能的重要因素Photo Credits索引

媒體關(guān)注與評(píng)論

  體悟戰(zhàn)爭(zhēng)箴言,精通SQL兵法:  在所有戰(zhàn)爭(zhēng)中,顯示軍事才華的第一步是戰(zhàn)略規(guī)劃。  ——Joseph de Maistre  戰(zhàn)爭(zhēng)中有一些基本的原則,無(wú)視這些原則非常危險(xiǎn),而遵循這些原則就可能勝利?!  狦eneral Antoine-Henri de Jomini  無(wú)論誰(shuí)想運(yùn)籌帷幄,都要遵循羅馬的戰(zhàn)略戰(zhàn)術(shù):首先是速?zèng)Q戰(zhàn)?!   狽iccolo Machiavelli  沒有人可以保證戰(zhàn)爭(zhēng)的勝利,只能等待它的回報(bào)。  ——溫斯頓·丘吉爾

編輯推薦

  資深SQL專家Stephane Faroult傾力打造,軟件架構(gòu)設(shè)計(jì)》作者溫昱最新譯作,巧妙借鑒《孫子兵法》的智慧結(jié)晶。傳授25年的SQL性能與調(diào)校經(jīng)驗(yàn),深入探討9種常見查詢方案及其性能。  “一部SQL力作。對(duì)于在其他書中止步于理論的難點(diǎn),本書提供了實(shí)際的經(jīng)驗(yàn)技巧,效果卓然?!薄  猄ean Hull,資深咨詢顧問(wèn),Heavyweight百聯(lián)網(wǎng)集團(tuán)  “一本真正‘聰明’的SQL書,注重實(shí)踐而非課堂上的理論,解決數(shù)據(jù)庫(kù)專業(yè)人員遇到的問(wèn)題?!薄  狝nlhony Molinaro,首席數(shù)據(jù)庫(kù)工程師,Wi reless Generation公司  你是否把數(shù)據(jù)庫(kù)應(yīng)用看作一場(chǎng)戰(zhàn)役?你是否把數(shù)據(jù)看作一排排需要篩選并打退的敵軍縱隊(duì)?SQL專家Stephane Faroult就是這么做的?!  禨QL語(yǔ)言藝術(shù)》的作者St6phane Faroult借用《孫子兵法》的智慧處理SQL性能方面的問(wèn)題。開發(fā)數(shù)據(jù)庫(kù)應(yīng)用好比一場(chǎng)戰(zhàn)役,設(shè)計(jì)即戰(zhàn)略,而每次數(shù)據(jù)庫(kù)訪問(wèn)就是與敵軍在戰(zhàn)術(shù)上的對(duì)決。  Stephane對(duì)SQL性能問(wèn)題的論述,視角獨(dú)特,一絲不茍。如何才能更好地使用SQL?本書結(jié)合一線實(shí)踐的案例,強(qiáng)調(diào)了:  應(yīng)從最開始就綜合設(shè)計(jì)數(shù)據(jù)庫(kù)和應(yīng)用的性能?!爸粡?qiáng)調(diào)某個(gè)最重要方面的設(shè)計(jì)是錯(cuò)誤的”。  應(yīng)避免只考慮單個(gè)SQL語(yǔ)句?!瓣P(guān)注總的目標(biāo),SQL語(yǔ)句再好也挽救不了糟糕的處理流程”。  必須明白為哪些字段建立索引、為何建立索引?!八饕^(guò)多是設(shè)計(jì)不確定的表現(xiàn)”。  Stephane還對(duì)你的實(shí)際工作提出了具體建議。九種SQL經(jīng)典查詢方案,以及對(duì)其性能影響的討論,非常便于實(shí)踐。書中有一章專門討論樹狀結(jié)構(gòu),可幫助你解決層次結(jié)構(gòu)數(shù)據(jù)的問(wèn)題。另外,當(dāng)你必須基于別人的數(shù)據(jù)庫(kù)設(shè)計(jì)進(jìn)行工作時(shí),“精于計(jì)謀:挽救響應(yīng)時(shí)間”這一章會(huì)助你成功。

圖書封面

圖書標(biāo)簽Tags

無(wú)

評(píng)論、評(píng)分、閱讀與下載


    SQL語(yǔ)言藝術(shù) PDF格式下載


用戶評(píng)論 (總計(jì)0條)

 
 

 

250萬(wàn)本中文圖書簡(jiǎn)介、評(píng)論、評(píng)分,PDF格式免費(fèi)下載。 第一圖書網(wǎng) 手機(jī)版

京ICP備13047387號(hào)-7