新書推薦:
《
地下(村上春树沙林毒气事件的长篇纪实)
》
售價:NT$
332.0
《
偿还:债务与财富的阴暗面
》
售價:NT$
347.0
《
清华大学藏战国竹简校释(壹):《命训》诸篇
》
售價:NT$
408.0
《
封建社会农民战争问题导论(光启文库)
》
售價:NT$
296.0
《
虚弱的反攻:开禧北伐
》
售價:NT$
429.0
《
泰山:一种中国信仰专论(法国汉学经典译丛)
》
售價:NT$
380.0
《
花外集斠箋
》
售價:NT$
704.0
《
有兽焉.8
》
售價:NT$
305.0
|
編輯推薦: |
本教材按顺序可以分为五大部分。*部分是基本概念和基础知识。第二部分主要分三、四、五三章讲SQL语言及其应用。第三部分是第六章和第七章讲数据库设计。第四部分是大数据新技术。第五部分给出一个完整的实际案例。
|
內容簡介: |
本教材按顺序可以分为五大部分。*部分是基本概念和基础知识。第二部分主要分三、四、五三章讲SQL语言及其应用。第三部分是第六章和第七章讲数据库设计。第四部分是大数据新技术。第五部分给出一个完整的实际案例。
|
關於作者: |
2003年6月于华中科技大学计算机学院获工学博士学位;2005年6月于清华大学计算机系博士后流动站出站,获博士后证书;2005年7月入北京师范大学信息学院工作;2006年7月晋升副教授;2007年8月任系主任;2010年入选教育部新世纪优秀人才支持计划;2012年7月晋升教授。
目前担任清华大学校友会IT分会副秘书长,中国计算机学会数据库专业委员会委员、中国计算机学会服务计算专业委员会委员、中国计算机学会YOCSEF委员、国家自然科学基金评审专家、北京市自然科学基金评审专家、北京市海淀区科学技术委员会科技项目评审专家、北京师范大学继续教育与教师培训学院网络教学指导委员会委员、中国计算机学会高级会员。
当前主要科研项目包括:教育部新世纪优秀人才支持计划(NCET-10-0239,数据广播中的移动实时事务恢复处理)、国家自然科学基金(61370064,基于替换的实时Web服务事务处理)、国家自然科学基金(61073034,无线移动实时数据广播中的高性能并发控制)、国家自然科学基金(60940032,实时数据广播中的并发控制)、国家科技支撑计划重大项目子课题(XXX应急平台数据库系统)、国家科技支撑计划重点项目
|
目錄:
|
第 一 部 分
第1章绪论3
1.1什么是数据库系统3
1.1.1数据库与大数据3
1.1.2数据库管理系统4
1.1.3数据库系统5
1.2为什么需要数据库系统5
1.2.1DBS前的困境6
1.2.2DBS的吸引力6
1.3数据抽象8
1.3.1四层抽象8
1.3.2数据抽象的表达8
1.3.3三层模式和两级映射10
1.4DBMS11
1.4.1数据定义语言13
1.4.2数据操作语言13
1.4.3数据保护语言13
1.4.4查询处理13
1.4.5存储管理14
1.4.6保护管理14
1.4.7物理数据结构14
1.4.8立足点15
1.5DBS15
1.5.1硬件15
1.5.2软件16
1.5.3用户17
1.5.4工作过程17
1.5.5在网络上18
1.6大数据与数据管理技术发展趋势20
习题20数据库应用、设计与实现(第2版)目录第2章关系模型22
2.1关系结构与约束22
2.1.1关系与表22
2.1.2关系键25
2.1.3约束25
2.2关系操作26
2.2.1基本关系代数运算26
2.2.2附加关系代数运算33
2.2.3扩展关系代数运算36
2.2.4数据库修改39
习题40
第 二 部 分
第3章MySQL数据定义与操作45
3.1SQL与MySQL45
3.1.1SQL发展史45
3.1.2MySQL46
3.1.3数据库语言组成46
3.1.4数据库语言的特点46
3.1.5考试系统数据库47
3.2数据定义49
3.2.1MySQL的基本数据类型49
3.2.2表的创建、修改和删除50
3.3投影与广义投影52
3.4选择54
3.5集合操作58
3.6联接查询59
3.6.1笛卡儿积59
3.6.2内联接60
3.6.3外联接61
3.7更名64
3.8聚集查询64
3.8.1基本聚集64
3.8.2分组65
3.8.3排名67
3.8.4分窗69
3.9基本查询语句的一般形式69
3.10嵌套查询70
3.10.1子查询作为表71
3.10.2子查询作为集合71
3.10.3子查询作为标量74
3.10.4关系除76
3.11递归查询77
3.12数据修改78
3.12.1数据插入78
3.12.2数据删除79
3.12.3数据更新80
习题81
第4章MySQL应用83
4.1应用体系结构83
4.1.1CS结构83
4.1.2BS结构84
4.2Python访问MySQL86
4.3JDBC编程87
4.3.1JDBC基础87
4.3.2JDBC程序88
4.3.3预备语句89
4.3.4元数据90
4.3.5Java应用连接访问数据库实例91
4.3.6Java小应用连接访问数据库实例91
4.3.7JSP连接访问数据库实例93
4.3.8Servlet连接访问数据库实例95
4.4ODBC编程101
4.5存储函数和过程102
4.5.1变量的定义和赋值103
4.5.2控制结构103
4.5.3存储函数定义和执行104
4.5.4存储过程定义和执行105
习题106
第5章MySQL数据保护108
5.1数据保护108
5.2视图109
5.2.1视图的创建和撤销109
5.2.2对视图的操作111
5.3访问控制112
5.3.1用户与角色管理113
5.3.2授予权限114
5.3.3收回权限116
5.4完整性约束116
5.4.1约束含义116
5.4.2声明及检验117
5.5触发器122
5.5.1定义触发器122
5.5.2激活触发器124
5.5.3删除触发器124
5.6事务125
5.7加密126
习题128
第 三 部 分
第6章数据库设计: 实体联系方法131
6.1数据库设计方法和生命周期131
6.2基本ER模型133
6.2.1ER模型基本元素133
6.2.2基本ER图设计134
6.3基本ER图转换为关系模式141
6.4扩展ER图及到关系模式的转换143
6.4.1弱实体143
6.4.2父子实体144
6.5大数据ER图及其到关系模式的转换149
习题151
第7章数据库设计: 属性联系方法153
7.1数据依赖153
7.1.1函数依赖的定义153
7.1.2函数依赖的逻辑蕴涵154
7.1.3函数依赖的推理规则155
7.1.4属性集的闭包156
7.1.5函数依赖集的最小依赖集158
7.1.6多值依赖158
7.2模式分解159
7.2.1无损联接分解159
7.2.2分解无损联接检验161
7.2.3保持函数依赖的分解165
7.3范式168
7.3.1第1范式169
7.3.2第2范式169
7.3.3第3范式170
7.3.4BC范式171
7.3.5第4范式172
7.4规范化173
7.5大数据与反规范化175
习题177
第 四 部 分
第8章存储和存取181
8.1存储器件181
8.2磁盘181
8.3DBMS文件管理183
8.4数据库文件组织183
8.4.1行存储183
8.4.2列存储186
8.5文件中元组组织187
8.6索引190
8.6.1稠密索引和稀疏索引191
8.6.2多级索引192
8.6.3B 树索引193
8.6.4哈希方法195
8.7数据字典的存储197
习题197
第9章查询处理与优化198
9.1查询处理过程及查询优化问题198
9.2关系代数表达式的等价变换与优化200
9.2.1关系代数表达式等价变换规则200
9.2.2关系代数等价变换的启发式规则203
9.3实现关系运算的算法与优化203
9.3.1选择运算的算法与优化203
9.3.2联接运算的算法与优化204
9.4表达式的求值方法与优化207
9.4.1实体化207
9.4.2流水线207
9.5基于代价的定量优化208
习题208
第10章事务处理210
10.1事务的概念210
10.1.1如果没有事务210
10.1.2事务及其特性211
10.2并发执行和调度214
10.2.1并发执行214
10.2.2可串行化216
10.3并发控制218
10.3.1锁218
10.3.2两阶段封锁219
10.3.3死锁220
10.3.4并发控制221
10.4故障恢复222
10.4.1恢复准备222
10.4.2恢复处理224
10.5小结227
习题227
第 五 部 分
第11章大数据技术231
11.1大数据特征231
11.2大数据关键技术231
11.3分布式文件系统232
11.3.1计算机集群232
11.3.2分布式文件系统232
11.4NoSQL数据模型233
11.4.1键值存储234
11.4.2列族存储235
11.4.3文档存储235
11.4.4图存储236
11.5大数据计算236
11.5.1批处理237
11.5.2流式计算239
11.6大数据应用240
11.6.1基于内容推荐240
11.6.2协同过滤推荐241
11.7小结242
习题243
附录A实验指导244
实验1Access数据库244
实验2MySQL基础和安装244
实验3数据库的基本操作245
实验4数据表的基本操作246
实验5数据备份与还原248
实验6简单数据查询250
实验7高级数据查询252
实验8Java连接数据库255
实验9存储过程和函数257
实验10索引和视图257
实验11MySQL权限管理258
实验12触发器259
实验13性能优化260
实验14事务与并发控制260
实验15PowerDesigner261
实验16综合应用262
实验评分标准262
实验报告要求263
实验报告模板263
实验软件下载264
附录B案例: 网络考试系统265
B.1需求分析266
B.2系统总体设计268
B.2.1系统框架268
B.2.2系统设计原则268
B.2.3系统功能要求269
B.2.4开发架构选择270
B.2.5关键技术270
B.2.6页面流程图273
B.3数据库设计275
B.3.1概念结构设计275
B.3.2逻辑结构设计275
B.3.3数据库表的设计275
B.4系统实现281
B.4.1实现模式281
B.4.2模块展示282
B.5小结284
参考文献286
|
內容試閱:
|
当前已经进入大数据时代,关系数据库一统天下的局面已不可能重现。随着近几年数据管理领域的迅猛发展,传统数据库课程面临一系列挑战,并亟待改革。一方面,在空气中无处不渗透着大数据气息的今天,数据库课程不能没有大数据管理,这是技术发展的呼唤,也是提高学生学习兴趣、提高教学质量、加强人才技术素质的迫切要求。另一方面,传统数据库关键技术和方法仍然是数据库课程必不可少的核心内容,这些技术和方法如今依然广泛应用于各行各业信息资源管理系统,对改进部门管理、提高企业效益、提升人民生活水平均具有实实在在的意义,而且也是大数据管理的基础,大数据管理则是数据库技术的进一步延伸和发展。融合传统数据库关键技术以及大数据最新进展,是传统数据库课程改革的必然趋势。斯坦福、普渡等国际一流大学中数据库课程改革成果破茧而出,融合大数据与数据库的数据密集系统课程成为旗帜。MOOC数据库密集系统原数据库系统原理课程建设过程中,始终把纳入数据管理技术的最新发展,深度梳理课程知识点体系放在首位,特别是融入大数据管理。当时已经感觉到课程名字再叫数据库似有不足,但一时尚无满意的名称,便按照惯例称数据库系统原理。而今,斯坦福大学原《CS245: 数据库系统原理》更名为《CS245: 数据密集系统原理》Principles of DataIntensive Systems;普渡大学等其他几所大学则更名为《数据密集系统》DataIntensive Systems;英国剑桥大学则称为《数据密集型应用系统》。比较这几所大学新的课程目录,与北京师范大学的课程大纲,改革思路别无二致。为及时适应技术发展和国际上数据库课程改革的大趋势,并使课程内容与名称更匹配,MOOC数据库系统原理已经更名为数据密集系统。
本书可以分为5大部分。第一部分是基本概念和基础知识,包括第1章绪论和第2章关系模型,涉及数据库系统、大数据、数据模型等,为后面内容打下基础。第二部分主要包括第3~5章,介绍声明性语言SQL及其在应用环境中与面向过程对象高级语言的协同,重点包括数据保护。第三部分是第6章和第7章,介绍数据库设计并融入大数据思维。第6章主要是ER设计以及转换为关系的方法,所以也涉及关系设计或者说目标也是关系设计,但方法主要是从实体及联系的角度。第7章主要是从数据依赖角度讲关系设计,而数据依赖实质上是属性及其联系。这两章的目标是一致的,都是讲关系设计,只是方法不同;进而,大数据技术中的大时间跨度数据积累分析及其以读为主操作处理都改变了旧有数据库设计思想。第四部分是第8~10章,主要介绍大数据管理的数据密集系统共性实现技术。第五部分即第11章是大数据新技术简介。
数据密集系统原数据库系统原理脱胎于传统大学本科数据库课程,是革新传统数据库课程、深度梳理课程内容的产物。该领域在最近几年的迅猛发展,对传统数据库课程提出一系列严峻挑战,本课程直面最新技术发展,主要特色如下。
1 纳入数据管理技术的最新发展,深度梳理课程知识点体系,研磨了与信息安全、操作系统、数据结构、组成原理等相关课程的关系,实现无缝平滑衔接。
2 特别是梳理了数据保护知识点体系,提出了数据管理的目标: 安全、简单、高效地共享数据,并以此为线索贯穿全书内容,把知识碎片变得系统化,使得全书知识点有机融为一体。
3 以MySQL为平台,以自然灾害应急系统网络考试系统为案例,实施案例驱动的教学模式,技术先进,概念清晰。
4 在课程内容安排上,先讲语言,让学生通过上机使用,有直观了解,进而再讲设计,最后讲实现,由浅入深,由外及里,便于理解。
5 通过案例分析,解析传统数据库和大数据中数据管理技术的基本思想和特点,融合理论与实践,贯通技术思想与职业理念。
6 站在大数据管理的角度,讲述数据库设计和实现的新思想,在数据库设计和实现的讲述中融入大数据思维;针对各种数据密集系统的共性,讲述数据管理技术发展趋势,并对大数据管理进行简介。
7 以尽可能简单的例子凸显技术思想的本质。
本教材可按36~54学时使用。为了教师教学的方便,本书配有电子教案、课后题客观题和主观题及答案,以及程序代码,所有程序在Java EE和MySQL 8上实际运行通过。针对实践教学,书末附有实验指导书,配有实验教学PPT、实验指导及实验报告评分标准、实验报告和代码样本。
在本书编写过程中,尽可能引入新技术,力求反映技术发展趋势,但由于作者水平有限,书中有许多不足之处,还望同行和专家批评指正。
编者2021年1月
|
|