SQL语言艺术:提高数据库性能的关键

需积分: 11 1 下载量 50 浏览量 更新于2024-07-23 收藏 683KB PDF 举报
SQL语言艺术 本书《SQL语言艺术》不是一本 cookbook,而是帮助开发者和他们的经理提出犀利的问题,提高他们的SQL编写能力和数据库性能优化能力。本书分为12章,每一章包含许多原则或准则,并通过举例的方式对原则进行解释说明。 知识点1: SQL语言的重要性 SQL语言是数据库访问语言,已成为任何基础IT课程的必备部分。开发者宣传自己熟练掌握SQL,其实前提是“熟练掌握”的定义是“能够获得功能上正确的结果”。然而,全世界的企业如今都面临数据量的爆炸式增长,所以仅做到“功能正确”是不够的,还必须足够快。 知识点2: 数据库性能优化 数据库性能成了许多公司头疼的问题。开发者认为为了便于维护,代码中的数据库访问部分应该尽量简单;“拙劣的SQL”应该交给资深的DBA去摆弄,他们还会调整几个“有魔力”的数据库参数,于是速度就快了——如果数据库还不够快,似乎就该升级硬件了。但这种做法实际上是自找麻烦。本书认为,首先要关注性能的就是开发者。 知识点3: SQL编写原则 本书通过举例的方式对原则进行解释说明,讨论九种SQL经典查询场景及其性能影响,非常便于实践,为开发者的实际工作提出了具体建议。本书适合SQL数据库开发者、软件架构师,也适合DBA,尤其是数据库应用维护人员阅读。 知识点4: 数据库访问语言的发展 SQL语言虽有缺点,但非常流行,它从1980年代早期开始被广泛接受,随后就所向无敌了。如今,年轻开发者在接受面试时,没有谁不宣称自己能熟练应用SQL的。 知识点5: 性能问题的来源 人们认为:为了便于维护,代码中的数据库访问部分应该尽量简单;“拙劣的SQL”应该交给资深的DBA去摆弄,他们还会调整几个“有魔力”的数据库参数,于是速度就快了——如果数据库还不够快,似乎就该升级硬件了。但这种做法实际上是自找麻烦。 知识点6: 性能优化的责任 开发者角度看到的性能问题和DBA从调优角度看到的大相径庭。对DBA而言,他尽量从现有的硬件(如处理器和存储子系统)和特定版本的DBMS获得最高性能,他可能有些SQL技能并能调优一个性能极差的SQL语句。但对开发者而言,他编写的代码可能要运行在不同的数据库管理系统上,需要考虑到不同的数据库管理系统的特点和限制。 知识点7: 数据处理的重要性 过去,“信息技术(IT)”的名字还不如今天这般耀眼,被称为“电子数据处理”。其实,尽管当今新潮技术层出不穷,数据处理依然处于我们系统的核心地位,而且需管理的数据量的增长速度似乎比处理器的增长速度还快。