happy423 / DatabaseStudy

数据库原理与应用-东南大学-徐立臻教授

Geek Repo:Geek Repo

Github PK Tool:Github PK Tool

1.引言

DatabaseStudy

数据库原理与应用-东南大学-徐立臻教授
这东西把笔记一点一点敲成电子版真的很费时间,就当加深理解吧

时光飞逝

这个文件是2017年10月份建立的,也就是那个时候我就想学数据库,怪不得我同学问我数据库不是早就看完了吗,中间几经波折,这次终于重启成功,终于在2018年10月学完了,但是大部分的笔记没有被我整理成可以公开的状态,所以只能等我有时间再更新吧

2.课程简介

DatabaseStudy

这是一个学习数据库的文件夹,自己在在学数据库的笔记会整理放在这上面。视频资源是东南大学徐立臻教授的公开课《数据库原理与应用》

徐立臻教授简介

东南大学计算机科学与工程学院教授。研究兴趣及开发项目为移动数据管理、数据流及复杂事件处理、异构数据源集成、数据仓库、基于云的信息系统构建技术等。一些内容为本人记录(如有错误欢迎指正),师从王能斌(1929-,江苏盐城,移居美国)。在1980年代左右,就能够接触电脑,并且参与到数据库(NIDB,南京工学院【东南大学】数据库)的开发中去,这是多么让人羡慕的经历。

网页地址

http://www.icourses.cn/coursestatic/course_2597.html
http://cselab.seu.edu.cn/course/dbprinciple/
https://www.bilibili.com/video/av14710005/
B站那个有可能被删。在东南大学的官网上应该有这个视频,我懒得去找了,后期或许会放过来,今天先这样吧。东南官网的可能打不开。

推荐教材

  1. 王能斌《数据库系统教程》 电子工业出版社,分为上下册
    这本书据徐立臻老师说是王能斌老师一辈子在数据库研究领域的总结,写的非常好,徐老师上课的PPT中很多内容会按照他的模式或者借鉴相关的内容。目前还没看,分为上下两册,上册为基础,下册为拓展,再版过一次, 最新的为2008年的版本。好像新版在最后增加了一章12章,数据库优化。
    杭电图书馆有这本书http://10.23.10.60:8080/opac/item.php?marc_no=0000306421
    亚马逊https://www.amazon.cn/%E5%9B%BE%E4%B9%A6/dp/B00LCCEVD2/ref=sr_1_1?ie=UTF8&qid=1506949010&sr=8-1&keywords=%E7%8E%8B%E8%83%BD%E6%96%8C
  2. 数据库系统全书/(美)加西亚-莫里纳(Hector Garcia-Molina),沃尔曼(Jeffrey D.Ullman),威德姆(Jennifer Widom)著 岳丽华 等译
    《Database Management Systems》第三版 McGraw-Hill Science/Engineering/Math出版社。据徐老师说写这本书的人事Stanford教授,而Stanford的学生也用的是这本教材,由于他上的是英文版,所以很多内容借鉴自这本书。2002年出版
    杭电图书馆也有http://10.23.10.60:8080/opac/item.php?marc_no=0000144234
    豆瓣的地址https://book.douban.com/subject/2252163/
  3. 数据库系统导论/(英)C. J. Date著 孟小峰, 王珊, 姜芳艽 ... [等] 译
    《An Introduction to Database Systems》1994年出版Addison-Wesley Pub (Sd)这本书是徐老师他们那个年代学的,所以比较久远。
    杭电图书馆依然有http://10.23.10.60:8080/opac/item.php?marc_no=0000266052
    豆瓣https://book.douban.com/subject/26271805/

课程网站

http://cselab.seu.edu.cn/course/dbprinciple/
上面会有教学大纲、实验大纲、作业范例、网上课件、网上作业等。

最后注明

这个是个人学习用的,只是个人的总结并不是很好的教学教程。建议自己去看徐老师的视频吧,72讲,每讲20-30分钟,约1800分钟30个小时,不吃不喝1.25天就看完了(手动滑稽)

3.内容简介

内容简介

主要讲了整个课程该讲啥,数据库的发展历史与分类。然后DBMS的优点、然后讲了具体的SQL语句什么意思和逻辑关系、为何以及如何查询优化、如何设计一个数据库、分布式数据库、数据库目前最新的研究等

总体概况

1. 数据库基本概念、原理与应用
数据模型(datamodels)、SQL语言、用户接口(user interface)。这三个是最重要的三个部分。
2. 数据库管理系统实现原理
Key principle of DBMS 一章讲完,主要数据库管理系统的原理与基本方法,了解内部是为了更好的应用,知道了内部的工作原理有利于我们更好的应用。主要包括:
    总体架构mainly architecture 整体的结构
    查询优化:query optimization SQL语句怎么优化策略得到结果,使得访问磁盘数最少,就是用最快的速度找到数据。
    并发控制:concurrency control 并发请求数据时不发生冲突
    恢复:recovery 数据怎么恢复,对于突然断电,死机等等特殊情况下数据的恢复
3. 数据库安全与完整性约束
security and integrity constraints数据库提供一整套完整的机制帮助我开发数据库.
4. 分布式数据库基本概念
distributed database systems更好理解数据库的原理与方法,对照传统的集中式数据库,介绍分布式数据库里面的一些技术与概念,让大家对照,更好的理解其中的概念与方法。
5. 数据库最新研究与应用领域
数据仓库(data warehouse)、数据挖据(data mining)、XML数据管理(XML data management)

注:数据库管理系统DBMS,会有一章来讲,他的优点就是查询优化与并发控制

课程简介

这个课一共会被分为8章讲完。接下来介绍每章讲的啥。

  1. 引言部分
    主要讲了数据库的定义,概念,历史,分类,主要研究内容与方向(让大家对数据库有一个全貌的认识),数据模型(data models),数据模式(data schema 撕盖嘛(这是徐老师的读法,别有一番风味)),基本概念与一些数据的术语。
  2. 数据模型(data models)
    这是最重要的一章,数据模型处于数据库的核心地位,任何数据库都应该支持至少一种数据模型。
    又分为层次模型,网状模型(在数据库的发展历史中起了很重要的作用,虽然现在已经不怎么使用,但还是要讲一下,了解数据库的发展历史),接下来就是主角,关系数据库, 以及后续的发展,如ER数据库,面向对象数据,OLAP(联机分析处理)等等
  3. 用户接口和SQL语言
    这一章也是非常重要的部分,大部分的考试和作业来自于这一章,主要讲关系型数据库,和数据库的各种用法,和SQL语言(包括: DDL 数据库描述语言,创建表、视图、权限控制、视图定义等等; DCL 数据库控制语言,主要是权限的管理与用户的创建等,完整性约束等; DML 数据库管理语言,主要负责插/删/改 等操作 QL 查询语句(select语句) ),嵌入式SQL,动态SQL等
  4. 数据库管理系统DBMS
    主要讲了DBMS的基本架构,查询优化(代数优化主要是让一元操作考上,多远操作往下沉,操作优化针对物理层面建索引,减少磁盘访问次数)、并发控制(有点类似操作系统的线程管理,各种锁、信号之类)、恢复(几种恢复方法,各有优缺点、各有各的用途)。使大家对DBMS内部实现方法有一个基本的了解,为了更好的使用数据库。
  5. 数据库系统安全与完整性约束
    包括数据库授权问题,安全控制,完整性约束问题,引用完整性、断言、触发器等。
  6. 数据库的设计
    东南大学有别的课程讲这个的(研究生课程讲的多一点),本课程会简单提一下,为了使大家在学完1-5章之后,知道如何规范的设计(三范式要求,主要是针对属性的一些约束)、开发和使用数据库(实际的应用中如何结合三范式合理以及实际的需求合理的设计表),ER图的用法等
  7. 分布式数据库系统
    为了拓展大家视野,在一个分布式环境下怎么管理和组织数据库,分布式(物理分布,但逻辑是统一的)和联邦式(物理上分布,逻辑上也分布)基本概念, 分布式环境下该怎么做查询优化、并发控制、恢复等
  8. 新技术新应用
    OLAP(联机分析处理),数据挖掘,XML数据管理等,针对未来的数据量不断的提升,尤其是现在人工智能需要大量的数据,这些数据怎么组织,非结构化的数据如何组织等等,这方面阿里做的比较好,可能得益于双十一大规模的并发访问。

About

数据库原理与应用-东南大学-徐立臻教授