首页 > 图书中心 >图书详情

数据库系统基础(第7版)

世界众多高校广泛采用的讲述数据库系统的经典教材

作者:[美]雷米兹·埃尔玛斯特(Ramez Elmasri),沙姆坎特·纳瓦特赫(Shamkant B. Navathe)著, 陈宗斌 等译
丛书名:清华计算机图书译丛
定价:198
印次:1-1
ISBN:9787302544609
出版日期:2020.08.01
印刷日期:2020.07.22

本书是被世界众多高校广泛采用的讲述数据库系统的经典教材。本书全面阐述了数据库系统在设计、使用、实现和应 用中所需的基本概念,既有对理论与设计的清晰阐述,同时又涵盖了大量模型和实际系统,紧跟现代数据库技术的最 新发展,注重对数据库系统基本原理的介绍,着重强调数据库系统中的数学模型、设计问题、关系代数和关系演算。 本书提供了大量实验和习题,为学生进行数据库的基础设计和实现提供了实践机会。

more >

献给Amalia以及Ramy、Riyad、Katrina和Thomas。 ——Ramez Elmasri 献给我的妻子Aruna,感谢她的爱、支持和理解。 献给Rohan、Maya和Ayush,感谢他们带给我们巨大的快乐。 ——Shamkant B. Navathe 译 者 序   数据库技术是计算机科学技术中发展最快的领域之一,也是应用最广泛的一门学科。数据库作为计算机及相关专业的核心课程,在国内外已经出版了大量相关的教科书。而Elmasri和Navathe编写的本书,能够连续多次再版,为世界上众多高校广泛采用,成为数据库系统原理的经典教材。究其原因,一方面是内容丰富,清晰地阐述了数据库系统的基本理论和设计问题,涵盖了数据库系统的设计、实现和管理等方面的诸多专题;另一方面则在于其结构合理、更新及时,反映了数据库系统和应用开发的发展和动向。   在本书的第7版中,重新组织了章节顺序。不过,在组织本书内容时,仍然可以使老师在讲解本书内容时选择遵循新的章节顺序,或者选择一种不同的章节顺序。这一版还新增了两章用于介绍数据库系统和大数据处理方面的最新进展:其中一章(第24章)介绍了一类更新的数据库系统,称为NOSQL数据库;另一章(第25章)介绍了用于处理大数据的技术,包括MapReduce和Hadoop。   本书内容组织灵活、独立,读者可根据个人需要进行取舍。特别是,可以依赖于老师的个人偏好,灵活地安排章节教学顺序。此外,本书各部分的内容相对独立,便于自学。   本书非常适合作为高等院校计算机及相关专业的本科生或研究生的数据库系统课程的教材。对于数据库设计师和架构师,本书也是一种非常有价值的参考书。   本书由陈宗斌、陈征主译。由于时间紧迫,加之译者水平有限,欠妥之处在所难免,恳请广大读者批评指正。 前 言   本书介绍了设计、使用和实现数据库系统以及数据库应用程序时所需的基本概念。书中重点介绍了数据库建模与设计的基础知识、数据库管理系统提供的语言和模型,以及一些数据库系统实现技术。本书可供大学三、四年级的学生或研究生作为数据库系统的教科书和参考书使用,并可以安排一到两个学期的课时。本书的目标是对当今数据库系统和应用的最重要方面以及相关技术进行深入、最新的阐述。我们假定读者熟悉基本的程序设计以及数据结构的概念,并对计算机组织结构的基本知识有一定的了解。 本版本的新增内容   本书第7版中添加了以下一些关键特性: * 重新组织了章节顺序(基于对使用本教材的老师所做的调查访问);不过,在组织本书内容时,仍然使各位老师在讲解本书内容时,可以选择遵循新的章节顺序,或者选择一种不同的章节顺序(例如,遵循本书第6版中的章节顺序)。 * 在本书第7版中新增了两章用于介绍数据库系统和大数据处理方面的最新进展;新增的一章(第24章)介绍了一类更新的数据库系统,称为NOSQL数据库(NOSQL database);新增的另一章(第25章)介绍了用于处理大数据(big data)的技术,包括MapReduce和Hadoop。 * 对有关查询处理和优化的章节进行了扩充,并将其重新组织成两章;第18章重点介绍用于查询处理的策略和算法,而第19章则重点介绍查询优化技术。 * 除了以前版本中的COMPANY数据库示例之外,在第7版的前几章(第3~8章)中还添加了另一个UNIVERSITY数据库示例。 * 在不同程度上更新了许多单独的章,包括了更新的技术和方法;这里将不会讨论这些增强方面,而将在“前言”后面讨论第7版的组织结构时描述它们。   本书的主要特色如下: * 本书内容组织灵活、独立,读者可根据个人需要进行取舍。特别是,可以依赖于老师的个人偏好,灵活地安排章节教学顺序。 * 本书的配套Web站点(http://www.pearsonhighered.com/cs-resources)提供了可以加载到各类关系数据库中的数据,以方便学生实现更多的实验题。 * 依赖图(在本前言后面显示)显示了哪些章节依赖于前面的其他章节;这可为想要定制章节教学顺序的老师提供指导。 * 补充材料集合,为老师和学生提供了一组丰富的补充材料,如PowerPoint幻灯片、正文中的图片以及教师的习题解答。    第7版的组织结构和内容   第7版对内容组织进行了一些改变,并且改进了个别章节。本书现在被划分为如下12个部分: * 第1部分(第1章和第2章)描述了基本的介绍性概念,它们是很好地理解数据库模型、系统和语言所必需的。第1章和第2章介绍了数据库、典型用户以及DBMS概念、术语和架构,并且讨论了随着时间的推移数据库技术的进步以及数据模型的简史。对这两章进行了更新,以便介绍一些更新的技术,例如NOSQL系统。 * 第2部分(第3章和第4章)介绍了实体-关系建模和数据库设计;不过,需要指出的是,如果老师更喜欢在第3章和第4章之前讲授关于关系模型的章节(第5~8章),那么他们可以这样做。在第3章中,将介绍ER(Entity-Relationship,实体-关系)模型和ER图的概念,并用于阐述概念性的数据库设计。第4章显示了如何扩展ER模型,以纳入额外的建模概念,例如子类、特化、泛化、并类型(类别)和继承,从而导致增强的ER(EER)数据模型和EER图。在第7章和第8章中还将介绍URL类图的表示法,它们可以作为ER/EER图的替代模型和图形表示法。 * 第3部分(第5~9章)将详细介绍关系数据库和SQL,并且在有关SQL的章节中包括了一些额外的新内容,用于介绍第6版没有涉及的几种SQL构造。第5章描述了基本的关系模型、它的完整性约束和更新操作。第6章描述了用于关系数据库的SQL标准的一些基本部分,包括数据定义、数据修改操作和简单的SQL查询。第7章介绍了更复杂的SQL查询,以及触发器、断言、视图和模式修改等SQL概念。第8章描述了关系代数的形式运算并且介绍了关系演算。在第8章介绍关系代数和演算之前,就介绍了关于SQL的材料(第6章和第7章),这就允许老师可以根据需要,在课程中提早开始SQL项目的教学(如果老师想要采用这种顺序,那么在第6章和第7章之前讲述第8章将是可能的)。第3部分的最后一章即第9章介绍了在ER和EER与关系映射之间进行转换,它们涉及一些算法,可以使用它们从概念性的ER/EER模式设计来设计关系数据库模式。 * 第4部分(第10章和第11章)包含关于数据库编程技术的章节。这些章节被指定为阅读材料,并且辅以关于在编程项目的课程中使用的特定语言的材料(在Web上可以轻松获得这篇文档的大部分内容)。第10章介绍传统的SQL编程主题,例如嵌入式SQL、动态SQL、ODBC、SQLJ、JDBC和SQL/CLI。第11章介绍Web数据库编程(在我们的示例中使用的是PHP脚本语言),并且包括了一些新材料,其中讨论了用于Web数据库编程的Java技术。 * 第5部分(第12章和第13章)包括关于对象关系和面向对象数据库(第12章)以及XML(第13章)的更新材料。这两章阐述了SQL标准如何将对象概念和XML概念纳入该标准的更新版本中。第12章首先介绍了一些用于对象数据库的概念,然后展示了如何将它们纳入SQL标准中,以便向关系数据库系统中添加对象能力。接下来,还介绍了ODMG对象模型标准、它的对象定义以及查询语言。第13章介绍了XML(eXtensible Markup Language,可扩展标记语言)模型和语言,并讨论了如何将XML与数据库系统相关联。该章还阐述了XML概念和语言,并将XML模型与传统的数据库模型做比较。此外,书中还将展示在XML与关系表示之间将如何转换数据,以及用于从关系表中提取XML文档的SQL命令。 * 第6部分(第14章和第15章)包含关于规范化和关系设计理论的章节(第7版把规范化算法的所有形式方面都移到了第15章)。第14章定义了函数依赖,以及基于函数依赖的规范形式。第14章还开发了一种逐步的直观规范化方法,并且包括了多值依赖和连接依赖的定义。第15章介绍了规范化理论,以及通过规范化为关系数据库设计所开发的形式化体系、理论和算法,包括关系分解算法和关系合成 算法。 * 第7部分(第16章和第17章)介绍了磁盘上的文件组织(第16章)和数据库文件的索引(第17章)。第16章描述了在磁盘上组织记录文件的主要方法,包括有序(排序)、无序(堆)和散列文件;其中介绍了用于磁盘文件的静态和动态散列技术。还对第16章进行了更新,包括关于DBMS的缓冲区管理策略的内容、新型存储设备的概述,以及文件和现代存储架构的标准。第17章描述了文件的索引技术,包括B树和B+树数据结构以及网格文件,并且利用新的示例以及关于索引的更深入的讨论对其进行了更新,包括在物理设计期间如何选择合适的索引以及索引创建。 * 第8部分(第18章和第19章)介绍了查询处理算法(第18章)和优化技术(第19章)。这两章进行了更新,它们是从以前版本中涵盖这两个主题的单独一章重新组织而成的,并且包括商业DBMS中使用的一些更新的技术。第18章介绍了用于在磁盘文件上搜索记录、连接来自两个文件(表)中的记录以及用于其他相关操作的算法。第18章包含一些新内容,其中讨论了半连接(semi-join)和反连接(anti-join)操作,并且利用几个示例说明如何在查询处理中使用它们;还讨论了用于选择性估计(selectivity estimation)的技术。第19章介绍了用于查询优化的技术,它们使用了成本估计和启发式规则;该章包括一些新内容,涉及嵌套式子查询优化、柱状图的使用、物理优化,以及连接排序方法和数据仓库中的典型查询的优化。 * 第9部分(第20~22章)介绍了事务处理概念、并发控制,以及从失败中进行数据库恢复。这几章进行了更新,包括在一些商业和开源DBMS中使用的一些更新的技术。第20章介绍了事务处理系统所需的技术,并且定义了调度的可恢复性和可串行化的概念;其中新增了一节关于DBMS的缓冲区替换策略的内容,并且新增了关于快照隔离概念的讨论。第21章概述了各种并发控制协议,并且重点讨论了两阶段锁定。此外,还讨论了时间戳排序和乐观并发控制技术,以及多粒度锁定。第21章包括一些新内容,其中介绍了基于快照隔离概念的并发控制方法。最后,第23章重点介绍了数据库恢复协议,并且概述了数据库恢复中使用的概念和技术。 * 第10部分(第23~25章)包括一章介绍分布式数据库(第23章),并且利用新增加的另外两章介绍用于大数据的NOSQL存储系统(第24章)以及基于Hadoop和MapReduce的大数据技术(第25章)。第23章介绍分布式数据库概念,包括可用性和可伸缩性、数据的复制和分片、在复制的数据当中维护数据一致性,以及许多其他的概念和技术。在第24章中,将NOSQL系统分成4个一般的类别(其中每个类别中都具有一个示例系统,它将用于我们的示例)以及一些数据模型和操作,并且讨论和比较了每种NOSQL系统的复制/分布/可伸缩性策略。在第25章中,介绍了用于大数据的分布式处理的MapReduce编程模型,然后介绍了Hadoop系统和HDFS(Hadoop Distributed File System,Hadoop分布式文件系统)、Pig和Hive高级接口,以及YARN架构。 * 第11部分(第26~29章)包括以下内容:第26章介绍了多种高级数据模型,包括活动数据库/触发器(26.1节)、时态数据库(26.2节)、空间数据库(26.3节)、多媒体数据库(26.4节)和演绎数据库(26.5节)。第27章讨论了信息检索(information retrieval,IR)和Web搜索,包括诸如IR和基于关键词的搜索、比较DR与IR、检索模型、搜索评估以及评级算法之类的主题。第28章介绍了数据挖掘,其中概述了各种数据挖掘方法,例如关联规则挖掘、群集、分类和序列模式发现。第29章概述了数据仓库,包括诸如数据仓库模型和操作之类的主题,还概述了构建数据仓库的过程。 * 第12部分(第30章)用一章的篇幅阐述数据库安全,其中讨论了用于自主访问控制的SQL命令(GRANT、REVOKE),以及强制性安全级别和模型,用于在关系数据库中包括强制性访问控制,还讨论了诸如SQL注入攻击之类的威胁,以及与数据安全和隐私相关的其他技术和方法。   附录A给出了多种替代的图形表示法,它们用于显示概念性的ER或EER模式。如果老师更喜欢使用这些表示法,也可以用它们替代本书中使用的表示法。附录B给出了一些关于磁盘的重要物理参数。附录C概述了QBE图形查询语言。附录D和附录E(可从本书的配套Web站点http://www.pearsonhighered.com/elmasri下载)介绍了基于分层和网络数据库模型的遗留数据库系统。作为许多商业数据库应用和事务处理系统的基础,这些数据库已经使用了30余年。 本书使用指南   讲授一门数据库课程可以有多种不同的方法。作为数据库系统的介绍性课程,第1~7部分中的章节可以按照它们在本书中的顺序进行讲授,也可以根据老师个人喜好的顺序进行讲解。教师可以根据课程的重点,对这些内容进行删减,或者从本书的其余部分选择一些章节添加进来。在本书某些章的开头一小节结尾处,我们列出了当不需要详细讨论一些主题时可以删略的章节。如果作为一门介绍性的数据库课程,我们建议讲授第1~15章的内容,并可根据学生的背景和掌握程度选择其他章的一些内容。如果重点关注的是系统实现技术,则应该使用第7~9部分中的一些章节替换前面一些章节。   第3章和第4章介绍了使用ER和EER模型进行概念建模,这些内容将有助于从概念上加深对数据库的理解。不过,也可以部分讲解它们,或者在课程的后期加入这些内容。如果课程的重点是DBMS实现,甚至可以将这些内容略去不讲。第16章和第17章介绍了文件的组织和索引,这些内容可以放在课程的前期或后期讲授。如果课程的重点是数据库模型和语言,甚至可以将这些内容略去不讲。对于那些已经学习过文件组织课程的学生来说,可以将这些章节的部分内容作为阅读材料,或者将这些章节中的一些练习题作为相关概念的复习。   如果课程的重点是数据库设计,那么老师应该尽早开始讲授第3章和第4章,接着介绍关系数据库。一个完整的数据库设计和实现项目的生命周期将包括概念设计(第3章和第4章)、关系数据库(第5~7章)、数据模型映射(第9章)、规范化(第14章),以及通过SQL的应用程序实现(第10章)。如果重点关注的是Web数据库编程和应用,那么也应该包括第11章的内容。此外,还需要一些有关特定编程语言以及所使用的RDBMS的其他文献。本书在编写时就考虑了其主题可以按不同的顺序讲授。下图展示了各章之间的主要依赖关系,在前两章的介绍性内容之后,可以从多个不同的主题开始讲授。尽管这个图看起来可能有些复杂,但是值得注意的是,如果按照如图所示的顺序讲授各章内容,那么将不会丢失章节间的依赖关系。如果老师想以自己选择的顺序来讲授课程,那么可将此图作为参考。      如果将本书作为一个学期课程的教材,可以将选读的章节留作课外阅读材料;如果将本书作为上、下两学期的教材,第一学期的课程可以是“数据库设计和数据库系统导论”,面向大二、大三或大四的学生,涵盖第1~15章的大部分内容。第二学期的课程是“数据库模型与实现技术”,面向大四学生或一年级研究生,可涵盖第16~30章的大部分内容。老师还可以根据个人喜好,以其他方式来安排两个学期的课程学习顺序。    补 充 材 料   授权教师可以从Pearson的教师资源中心(http://www.pearsonhighered.com/irc)获得本书的支持材料。要访问该Web站点,可以联系当地的Pearson代理。 * PowerPoint讲义和图片。 * 解决方案手册。 致 谢   非常荣幸能够向这么多人致谢,感谢他们对本书的帮助与贡献。首先要感谢本书的编辑Matt Goldstein对本书的指导、鼓励和支持。感谢Rose Kernan对本书的生产管理、Patricia Daly对本书进行的全面细致的编辑、Martha McMaster勤勉地对书中各页所做的审校以及生产团队的管理编辑Scott Disanno,感谢他们所做的卓越工作。我们还要感谢Pearson的Kelsey Loanes对这个项目给予的持续不断的帮助,以及感谢以下审稿人:Michael Doherty、Deborah Dunn、Imad Rahal、Karen Davis、Gilliean Lee、Leo Mark、Monisha Pulimood、Hassan Reza、Susan Vrbsky、Li Da Xu、Weining Zhang和Vincent Oria。   Ramez Elmasri要感谢Kulsawasd Jitkajornwanich、Vivek Sharma和Surya Swaminathan帮助准备第24章中的一些材料。Sham Navathe要感谢下面这些人在关键性的审稿和修订工作中所给予的帮助:Dan Forsythe和Satish Damle参与了存储系统的讨论;Rafi Ahmed详细地重新组织了关于查询处理和优化的内容;Harish Butani、Balaji Palanisamy和Prajakta Kalmegh帮助提供了Hadoop和MapReduce技术材料;Vic Ghorpadey和Nenad Jukic修订了“数据仓库”的内容;最后,Frank Rietta在数据库安全的更新技术方面、Kunal Malhotra在多个讨论中,以及Saurav Sahay在信息检索系统的发展方面,分别做出了他们的贡献。   我们还要再次感谢曾经审阅以及为本书的前几版做出贡献的人们。 * 第1版:Alan Apt(编辑)、Don Batory、Scott Downing、Dennis Heimbinger、Julia Hodges、Yannis Ioannidis、Jim Larson、Per-Ake Larson、Dennis McLeod、Rahul Patel、Nicholas Roussopoulos、David Stemple、Michael Stonebraker、Frank Tompa和Kyu-Young Whang。 * 第2版:Dan Joraanstad(编辑)、Rafi Ahmed、Antonio Albano、David Beech、Jose Blakeley、Panos Chrysanthis、Suzanne Dietrich、Vic Ghorpadey、Goetz Graefe、Eric Hanson、Junguk L. Kim、Roger King、Vram Kouramajian、Vijay Kumar、John Lowther、Sanjay Manchanda、Toshimi Minoura、Inderpal Mumick、Ed Omiecinski、Girish Pathak、Raghu Ramakrishnan、Ed Robertson、Eugene Sheng、David Stotts、Marianne Winslett和Stan Zdonick。 * 第3版:Maite Suarez-Rivas和Katherine Harutunian(编辑);Suzanne Dietrich、Ed Omiecinski、Rafi Ahmed、Francois Bancilhon、Jose Blakeley、Rick Cattell、Ann Chervenak、David W. Embley、Henry A. Etlinger、Leonidas Fegaras、Dan Forsyth、Farshad Fotouhi、Michael Franklin、Sreejith Gopinath、Goetz Craefe、Richard Hull、Sushil Jajodia、Ramesh K. Karne、Harish Kotbagi、Vijay Kumar、Tarcisio Lima、Ramon A. Mata-Toledo、Jack McCaw、Dennis McLeod、Rokia Missaoui、Magdi Morsi、M. Narayanaswamy、Carlos Ordonez、Joan Peckham、Betty Salzberg、Ming-Chien Shan、Junping Sun、Rajshekhar Sunderraman、Aravindan Veerasamy和Emilia E. Villareal。 * 第4版:Maite Suarez-Rivas、Katherine Harutunian、Daniel Rausch和Juliet Silveri(编辑);Phil Bernhard、Zhengxin Chen、Jan Chomicki、Hakan Ferhatosmanoglu、Len Fisk、William Hankley、Ali R. Hurson、Vijay Kumar、Peretz Shoval、Jason T. L. Wang(审稿人);Ed Omiecinski(协助完成了第27章);得克萨斯大学阿灵顿分校的贡献者有Jack Fu、Hyoil Han、Babak Hojabri、Charley Li、Ande Swathi和Steven Wu;佐治亚理工学院的贡献者有Weimin Feng、Dan Forsythe、Angshuman Guin、Abrar Ul-Haque、Bin Liu、Ying Liu、Wanxia Xie和Waigen Yee。 * 第5版:Matt Goldstein和Katherine Harutunian(编辑);Michelle Brown、Gillian Hall、Patty Mahtani、Maite Suarez-Rivas、Bethany Tidd和Joyce Cosentino Wells(来自Addison-Wesley);Hani Abu-Salem、Jamal R. Alsabbagh、Ramzi Bualuan、Soon Chung、Sumali Conlon、Hasan Davulcu、James Geller、Le Gruenwald、Latifur Khan、Herman Lam、Byung S. Lee、Donald Sanderson、Jamil Saquer、Costas Tsatsoulis和Jack C. Wileden(审稿人);Raj Sunderraman(提供了实验项目);Salman Azar(提供了一些新的练习题);Gaurav Bhatia、Fariborz Farahmand、Ying Liu、Ed Omiecinski、Nalini Polavarapu、Liora Sahar、Saurav Sahay、Wanxia Xie(来自佐治亚理工学院)。 * 第6版:Matt Goldstein(编辑);Gillian Hall(生产管理);Rebecca Greenberg(文字编辑);Jeff Holcomb、Marilyn Lloyd、Margaret Waples和Chelsea Bell(来自Pearson);Rafi Ahmed、Venu Dasigi、Neha Deodhar、Fariborz Farahmand、Hariprasad Kumar、Leo Mark、Ed Omiecinski、Balaji Palanisamy、Nalini Polavarapu、Parimala R. Pranesh、Bharath Rengarajan、Liora Sahar、Saurav Sahay、Narsi Srinivasan和Wanxia Xie。   最后,我们真切地感谢我们的家人所给予的支持、鼓励和耐心。

more >
扫描二维码
下载APP了解更多

同系列产品more >

算法设计(第3版)

(美)斯蒂文·斯金纳(S
定 价:128元

查看详情
分布式数据库系统原理(第4版)

(德)塔姆尔·厄兹叙(M
定 价:99元

查看详情
密码学与网络安全(第4版)

(印)阿图尔·卡哈特(A
定 价:79元

查看详情
数字图像的计算几何、拓扑和物理及...

(加)詹姆斯·彼得斯(J
定 价:89元

查看详情
计算机网络(第6版)

(美)安德鲁·S.特南鲍
定 价:138元

查看详情
图书分类全部图书
more >
  • Ramez Elmasri(雷米兹·埃尔玛斯特)
               Shamkant B. Navathe(沙姆坎特·纳瓦特赫)  著
  • 本书是被世界众多高校广泛采用的讲述数据库系统的经典教材,不仅非常适合作为高等院校计算机及相关专业的本科生或研究生的数据库系统课程的教材,对于数据库设计师和架构师也极具参考价值。

精彩书评more >

标题

评论

版权所有(C)2023 清华大学出版社有限公司 京ICP备10035462号 京公网安备11010802042911号

联系我们 | 网站地图 | 法律声明 | 友情链接 | 盗版举报 | 人才招聘