出版时间:2008-1 出版社:电子工业出版社 作者:[美] StéphaneFaroult,P 页数:349 译者:温 昱,靳向阳
Tag标签:无
内容概要
本书分为12章,每一章包含许多原则或准则,并通过举例的方式对原则进行解释说明。这些例子大多来自于实际案例,对九种SQL经典查询场景以及其性能影响讨论,非常便于实践,为你的实际工作提出了具体建议。本书适合SQL数据库开发者、软件架构师,也适合DBA,尤其是数据库应用维护人员阅读。
作者简介
Stéphane Faroult从1983年开始接触关系数据库。Oracle法国成立早期他即加入(此前是短暂的IBM经历和渥太华大学任教生涯),并在不久之后对性能和调优产生了兴趣。1988年他离开了Oracle,此后一年间,他进行调整,并研究过运筹学。之后,他重操旧业,一直从事数据库咨询工作,并于1998年创办了RoughSea公司(http://www. roughsea.com)。 Stéphane Faroult出版了Fortran Structuré et Méthodes Numériques一书(法语,Dunod出版社,1986, 与Didier Simon合作),并在Oracle Scene和Select(分别为英国和北美Oracle用户组杂志)以及Oracle杂志在线版上发表了许多文章。他还是美国、英国、挪威等众多用户组大会的演讲者。 Peter Robson毕业于达拉谟大学地质专业(1968年),然后在爱丁堡大学任教,并于1975年获得地质学研究型硕士学位。在希腊度过了一段地质学家生涯之后,他开始在纽卡斯尔大学专攻地质和医学数据库。 他使用数据库始于1977年,1981年开始使用关系数据库,1985年开始使用Oracle,这期间担任过开发工程师、数据架构师、数据库管理员等角色。1980年,Peter参加了英国地质普查,负责指导使用关系数据库管理系统。他擅长SQL系统,以及从组织级到部门级的数据建模。Peter多次出席英国、欧洲、北美的Oracle数据库大会,在许多数据库专业杂志上发表过文章。联系他。
书籍目录
前言1 制定计划:为性能而设计数据的关系视图规范化的重要性有值、无值、空值限用Boolean型字段理解子类型(Subtype)约束应明确声明过于灵活的危险性历史数据的难题设计与性能处理流程数据集中化(Centralizing)系统复杂性小结2 发动战争:高效访问数据库查询的识别保持数据库连接稳定战略优先于战术先定义问题,再解决问题保持数据库Schema稳定直接操作实际数据用SQL处理集合动作丰富的SQL语句充分利用每次数据库访问接近DBMS核心只做必须做的SQL语句反映业务逻辑把逻辑放到查询中一次完成多个更新慎用自定义函数简洁的SQLSQL的进攻式编程精明地使用异常(Exceptions)3 战术部署:建立索引找到“切入点”索引与目录让索引发挥作用函数和类型转换对索引的影响索引与外键同一字段,多个索引系统生成键索引访问的不同特点4 机动灵活:思考SQL语句SQL的本质掌握SQL艺术的五大要素过滤5 了如指掌:理解物理实现物理结构的类型冲突的目标把索引当成数据仓库记录强制排序数据自动分组(Grouping)分区是双刃剑分区与数据分布数据分区的最佳方法预连接表神圣的简单性6 锦囊妙计:认识经典SQL模式小结果集,直接条件小结果集,间接条件多个宽泛条件的交集多个间接宽泛条件的交集大结果集基于一个表的自连接通过聚合获得结果集基于日期的简单搜索或范围搜索结果集和别的数据存在与否有关7 变换战术:处理层次结构小结果集,直接条件小结果集,间接条件多个宽泛条件的交集多个间接宽泛条件的交集大结果集基于一个表的自连接通过聚合获得结果集基于日期的简单搜索或范围搜索结果集和别的数据存在与否有关8 孰优孰劣:认识困难,处理困难看似高效的查询条件抽象层分布式系统动态定义的搜索条件9 多条战线:处理并发数据库引擎作为服务提供者并发修改数据10 集中兵力:应付大数据量增长的数据量数据仓库11 精于计谋:挽救响应时间数据的行列转换基于变量列表的查询基于范围的聚合一般规则,最后使用查询与列表中多个项目相符的记录最佳匹配查询优化器指令12 明察秋毫:监控性能数据库速度缓慢服务器负载因素何谓“性能优良”从业务任务角度思考执行计划合理运用执行计划总结:影响性能的重要因素Photo Credits索引
媒体关注与评论
体悟战争箴言,精通SQL兵法: 在所有战争中,显示军事才华的第一步是战略规划。 ——Joseph de Maistre 战争中有一些基本的原则,无视这些原则非常危险,而遵循这些原则就可能胜利。 ——General Antoine-Henri de Jomini 无论谁想运筹帷幄,都要遵循罗马的战略战术:首先是速决战。 ——Niccolo Machiavelli 没有人可以保证战争的胜利,只能等待它的回报。 ——温斯顿·丘吉尔
编辑推荐
资深SQL专家Stephane Faroult倾力打造,软件架构设计》作者温昱最新译作,巧妙借鉴《孙子兵法》的智慧结晶。传授25年的SQL性能与调校经验,深入探讨9种常见查询方案及其性能。 “一部SQL力作。对于在其他书中止步于理论的难点,本书提供了实际的经验技巧,效果卓然。” ——Sean Hull,资深咨询顾问,Heavyweight百联网集团 “一本真正‘聪明’的SQL书,注重实践而非课堂上的理论,解决数据库专业人员遇到的问题。” ——Anlhony Molinaro,首席数据库工程师,Wi reless Generation公司 你是否把数据库应用看作一场战役?你是否把数据看作一排排需要筛选并打退的敌军纵队?SQL专家Stephane Faroult就是这么做的。 《SQL语言艺术》的作者St6phane Faroult借用《孙子兵法》的智慧处理SQL性能方面的问题。开发数据库应用好比一场战役,设计即战略,而每次数据库访问就是与敌军在战术上的对决。 Stephane对SQL性能问题的论述,视角独特,一丝不苟。如何才能更好地使用SQL?本书结合一线实践的案例,强调了: 应从最开始就综合设计数据库和应用的性能。“只强调某个最重要方面的设计是错误的”。 应避免只考虑单个SQL语句。“关注总的目标,SQL语句再好也挽救不了糟糕的处理流程”。 必须明白为哪些字段建立索引、为何建立索引。“索引过多是设计不确定的表现”。 Stephane还对你的实际工作提出了具体建议。九种SQL经典查询方案,以及对其性能影响的讨论,非常便于实践。书中有一章专门讨论树状结构,可帮助你解决层次结构数据的问题。另外,当你必须基于别人的数据库设计进行工作时,“精于计谋:挽救响应时间”这一章会助你成功。
图书封面
图书标签Tags
无
评论、评分、阅读与下载