版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领
文档简介
1、数据库基础知识,主讲人: 朱扬勇 熊赟,信息化是生产数据的过程,数据在计算机系统中不断积累形成数据资源,数据资源的开发利用将创造巨大财富,数据资源,数据库里存放的是数据,“数据”的含义很广,不仅指1011、1023这样的数字,还指“dataology”、“数据科学”、“11/11/11”等符号、字符、日期形式的数据。确切地说,这里的数据是指能够输入到计算机中的任何东西,如:“数字”、“字符”、“声音”、“图像”、“照片”、等等。 甚至处理数据的计算机程序本身也作为计算机的“数据”。,数据资源,1.1 数据库概念 1.2 数据库发展 1.3 数据库分类 1.4 数据库系统类型 1.5 数据建模与
2、应用系统开发 1.6 运行数据库的计算机系统,第1章 数据库基础知识,手 工处理 文件系统 数据库系统,1.1 数据库概念,1.1.1 从文件系统到数据库系统,数据文件,存储技术,索引技术,查询、插入、修改。,查询优化技术,。,数据库管理系统,应用程序,如何快速准确地查找任意部分数据?,1.1.1 从文件系统到数据库系统,1.1 数据库概念,DDL,DML,数据独立与应用程序,1.1.1 从文件系统到数据库系统,1.1 数据库概念,数据库可被多个程序所共享,数据冗余度小,数据的一致性就比较容易维护,完整性、安全性和并发控制,提供对数据进行存储、管理、处理和维护功能的计算机软件系统。它由计算机软
3、件、数据库和有关人员组成。,1.1.2 数据库系统,1.1 数据库概念,宿主语言对DML语句的引用是通过DBMS提供的过程调用实现的。 将DML作为宿主语言的一部分,提供一个预处理器来处理DML语句,并将它们转换为DBMS提供的过程调用。,数据库应用程序 -宿主语言C+DML(SQL),1.1.2 数据库系统,1.1 数据库概念,DBMS,访问所存数据的软件,处理查询的软件,对数据库的查询,用户或程序,数据库系统,1.1 数据库概念,数据模型是数据库系统中用于表示现实世界数据及数据之间联系的形式框架,由数据结构、数据操作和数据约束三要素组成,1.1.3 数据模型,1.1 数据库概念,1.1.4
4、 数据库系统的体系结构,1.1 数据库概念,外模式,用户程序,模式,内模式,逻辑独立性(映射),物理独立性(映射),1.1.4 数据库系统的体系结构,1.1 数据库概念, 内模式(又称存储模式):是文件、索引和其它一些存储结构的汇集。它定义了所有内部记录类型、索引、数据在存储介质上的安排等。 从这一级看到的数据库称为物理级的数据库。,1.1.4 数据库系统的体系结构,1.1 数据库概念, 模式(又称逻辑模式): 是对现实世界全局逻辑的抽象。它描述了全部数据的逻辑结构,包括数据之间的联系、数据的约束、安全性要求等。从这一级看到的数据库称为逻辑级的数据库。, 外模式(又称子模式): 是模式的导出的
5、局部数据逻辑,是单个用户所要处理的数据集合。应用程序只能接触到外模式。模式与外模式之间的映射由VIEW语句实现。,数据库管理员 数据库设计师 系统分析师 应用程序员 最终用户,1.1.5 与数据库相关的人员,1.1 数据库概念,数据库管理员 职责是管理数据库、DBMS和其他相关的软件等资源,具体有授权对数据库的访问、监控数据库的使用、配置所需的软件和硬件资源等。,1.1.5 与数据库相关的人员,1.1 数据库概念,数据库设计师 责是设计数据库,具体为分析未来系统的数据需求,建立应用体的概念数据模型(ER模型),找出数据库完整性约束,设计系统安全性计划(包括数据库备份策略),设计逻辑数据库(包括
6、所有的表、索引、视图、触发器和存储过程)和管理数据字典等等。在系统交付使用时,数据库设计师应负责为用户培养一个数据库管理员。,1.1.5 与数据库相关的人员,1.1 数据库概念,系统分析师 负责未来系统的功能分析和数据分析,其主要工作为:制订需求收集计划和方案、分析用户需求、写出需求分析报告(即系统说明书)。,1.1.5 与数据库相关的人员,1.1 数据库概念,应用程序员 负责应用系统的开发(主要是编程)工作。具体有编写触发器、存储过程、数据录入界面和其他程序。,1.1.5 与数据库相关的人员,1.1 数据库概念,最终用户 负责接手整个系统,并运行这个系统。一个系统只有使用得心应手,才能发挥它
7、的作用。如果开发了一个系统,交给最终用户后,然后指责用户使用不当是没有意义的。,1.1.5 与数据库相关的人员,1.1 数据库概念,1969年美国的IBM公司开发了第一个层次DBMS系统IMS 1969年美国的数据系统语言委员会(CODASYL)下属的数据库任务组提出了著名的DBTG报告 七十年代初,E.F.Codd提出了关系数据模型 1986年美国国家标准协会(ANSI)通过了关系数据库查询语言SQL的文本标准,1.2 数据库的发展,1984年,G.Copeland提出查询语言与宿主语言之间存在严重的阻抗不匹配(Impedance Mismatch)问题 不同的编程风范(Programmin
8、g Paradigm) 不同的数据类型(Data Type) 1989年发表的两篇著名的文章“面向对象的数据库系统宣言”和“第三代数据库系统宣言”,1.2 数据库的发展,1990年代,由于没能设计出一个统一的数据模型来表示新型数据及其相互联系,所以出现了百家争鸣的局面,产生了演绎数据库(逻辑数据库,知识库)、面向对象数据库、工程数据库、时态数据库、地理数据库、模糊数据库、多媒体数据库、等新型数据库,1.2 数据库的发展,第一代:层次和网状数据库 第二代:关系数据库 第三代:后关系数据库,1.2 数据库的发展,上世纪七十年代初E.F.Codd提出 C.J.Date J.D.Ullman,1.2
9、数据库的发展,关系数据库,1.2 数据库的发展,关系数据库, 表格中所有的行都具有相同的形式(称为关系模式) 关系模式中的属性个数是固定的,每个属性都要命名,并且在同一个关系模式中,任何两个属性名都不相同 每个属性都是不可分解的 任何两个元组都不相同 属性的先后次序和元组的先后次序是无关紧要的,1.2 数据库的发展,关系数据库-五个条件,“数据库操纵语言宿主语言”,G.Copeland就提出了“数据库操纵语言”与“宿主语言”的“阻抗不匹配(Impedance Mismatch)”问题: 阻抗不匹配问题主要是指二者支持不同的编程风范(Programming Paradigm)和数据类型(Data
10、 Type)。,1.2 数据库的发展,后关系数据库,编程风范的不匹配将导致用户必须学会使用两种完成不同的语言,并领会二者之间的连接规则,这对用户是一个负担;,1.2 数据库的发展,后关系数据库-阻抗不匹配,数据类型的不匹配将导致用户必需处理不同数据类型间的转换,并且这种转换的工作将由系统的接口程序来实现,这对于数据密集型应用来说是一个沉重的负担,1989年,M.Atkinson等人发表了著名的论文“面向对象数据库系统宣言” ,随后在1990年,M.Stonebraker等人回应了论文“第三代数据库系统宣言”,这就引发了新的数据库论战。下一代数据库系统的一个主要目标就是要解决查询语言与宿主语言的
11、阻抗不匹配问题,这类系统的主要特征是面向对象、演绎推理。,1.2 数据库的发展,后关系数据库,1.2 数据库的发展,现状-地理信息系统,地理信息系统是一种特定的空间信息系统。它采用现代化的方法采集、存储、分析、管理和显示、模拟与地理空间分布有关的数据和图形,为管理和决策提供服务。它是现代地球科学、信息学、环境科学、测绘遥感学、计算机科学、管理科学、应用数学和各种应用学科有机结合的集成产物。,1.2 数据库的发展,现状-数字图书馆,数字图书馆是将包括多媒体在内的各种信息的数据化、存储管理、查询和发布集成在一起,使这些信息得以在网络上传播,从而最大限度地利用这些信息,利用多媒体数据库技术、超媒体技
12、术,针对数字化书馆中各种媒体的特性,在图像检索、视频点播和文献资料提出等方面提出了一套有效可行的管理检索方案。 数字图书馆是一个电子化信息的仓储,能够存储大量各种形式的信息,用户可以通过网络方便地访问它,以获得这些信息,并且其信息存储和用户访问不受地域限制。,扩展标记语言XML(eXtensible Markup Language)是一门新兴的面向Internet应用的标记语言,它是由互联网联合组织W3C(World Wide Web Consortium)于1998年2月制定的一种通用语言规范。,1.2 数据库的发展,现状- XML,1.2 数据库的发展,现状-数据中心,数据中心就是以海量数
13、据存储(MASS STORAGE)为基础,网络(INTERNET/INTRANET)为依托,海量数据自动标引系统为手段而建立的集成海量数据存储技术、分布式数据词典构造、热/温快表交换技术为一体的现代知识处理系统。在数据中心的构造中包括数据处理、数据管理、数据查询、存储预警全套解决方案,1.2 数据库的发展,现状-数据仓库,“数据仓库之父”William H.Inmon 定义:“数据仓库是在企业管理和决策中面向主题的、集成的、与时间相关的、不可修改的数据集合”。,1.2 数据库的发展,现状-信息网格,信息网格是要利用现有的网络基础设施、协议规范、Web和数据库技术,为用户提供一体化的智能信息平台
14、,消除信息孤岛,使得用户能方便地发布、处理和获取信息。在这个平台上,信息的处理是分布式、协作和智能化的,用户可以通过单一入口访问所有信息。信息网格追求的最终目标是能够做到服务点播(Service On Demand)和一步到位的服务 (One Click Is Enough)。,从所支持的数据模型来划分数据库可分为 层次数据库 网状数据库 关系数据库 面向对象数据库 演绎数据库 WEB数据库、XML数据库,1.3 数据库的分类,从系统的体系结构来划分数据库可分为 集中式数据库系统 分布式数据库系统 客户/服务器数据库系统 并行数据库 联邦数据库 数据网格,1.3 数据库的分类,从处理的数据类型
15、来划分数据库可分为 传统事务处理数据库 统计数据库 工程数据库 时态数据库 模糊数据库 多媒体数据库等,1.3 数据库的分类,面向对象数据库和面向对象语言源于同一概念,但面向对象数据库又增加了一些传统的数据库所有的特征。如持久性、并发控制、可恢复性、一致性和查询数据库的能力。也就是说一个面向对象的数据库系统必须满足两个标准:它首先应该是一个数据库管理系统,并且是一个面向对象的系统,即在一个可能的范围内,它与当前的一批面向对象的程序设计语言一致。其面向对象的特征包括复杂对象、对象标识、封装性、类型或类、继承性、可扩充性及计算完备性。,1.3 数据库的分类,演绎数据库 是指具有演绎推理能力的数据库
16、。一般地,它用一个数据库管理系统和一个规则管理系统来实现。将推理用的事实数据存放在数据库中,称为外延数据库;用逻辑规则定义要导出的事实,称为内涵数据库。主要研究内容为:如何有效地计算逻辑规则推理。,1.3 数据库的分类,集中式数据库系统 其特征为数据集中、计算集中。这种系统由一台规模较大的计算机作为主机,其余的均为终端使用。整个数据库完全存放在主机中,并且数据库管理系统和应用程序也运行于主机上。通常说的单用户多用户数据库系统就属于这一类系统,如:FOXBASE, MFOXBASE。,1.3 数据库的分类,分布式数据库系统 其特征为数据分布、计算分布。分布式数据库是一个逻辑上统一、地域上分布的数
17、据库的集合。是计算机网络环境下各节点局部数据库的逻辑集合,并受分布式数据库管理系统(DDBMS)的控制和管理。一般地,DDBMS都基于全局的层次控制结构。网络每个节点上的局部数据库由局部数据库管理系统管理,并能独立运行。,1.3 数据库的分类,客户/服务器数据库系统 其特征为数据相对集中、计算静态分布。客户/服务器数据库是在客户/服务器计算机网络上运行的数据库系统,有一个数据库服务器管理数据库,应用程序运行在客户机上,当需要对数据库进行操作时,就向数据库服务器发一个请求,数据库服务器收到请求后执行相应的数据库操作,并将结果返回给客户机上的应用程序。,1.3 数据库的分类,传统事务处理数据库 主
18、要指已经在运行当中的层次数据库、网状数据库和关系数据库三种。其处理的数据类型主要是日常中的事务数据,如工资、人事档案等。 统计数据库 管理统计数据的数据库系统。这类数据库包含有大量的数据记录,但其目的是向用户提供各种统计汇总信息,而不是提供单个记录的信息。,1.3 数据库的分类,工程数据库(CAD数据库) 存放工程数据的数据库。工程数据包括产品设计数据、产品模型数据、材料数据、绘图数据、成组技术编码数据、测试数据、质量优化数据等等。目前的实际做法是将传统的数据模型加以扩充以适应工程数据的需要,归纳起来有以下几种:扩充的关系模型、扩充的网状模型、语义模型、混合模型等。,1.3 数据库的分类,时态
19、数据库 指能够处理时间信息的数据库。时间是现实世界的组成部分,数据是在一定的时间范围内获得解释的。传统数据库缺乏记录和处理时间信息的能力,如:无法处理“七年前李玲的工资是多少”。时态数据库所处理的时间有三种:事务时间、有效时间和用户自定义时间。,1.3 数据库的分类,时态数据库 事务时间是指信息被放入数据库时的时间。处理事务时间的方法是存储所有数据库的状态,即每处理一个事务就存储一个数据库状态,修改只能对最后一个状态进行,但可以查询任意一个状态。有效时间是有效地模型化企业的时间,处理方法是对数据库中的每个关系只记录单个历史状态。另外,时态数据库还允许用户自定义时间,它可以由用户定义时间属性来实
20、现,不需要专门技术的支持。,1.3 数据库的分类,模糊数据库 指能够处理模糊数据的数据库。随着模糊数学理论体系的建立,人们可以用数量来描述模糊事件并能进行模糊运算。这样就可以把不完全性、不确定性、模糊性引入数据库系统中,从而形成模糊数据库。模糊数据库研究主要有两方面,首先是如何在数据库中存放模糊数据;其次是定义各种运算建立模糊数据上的代数。模糊数的表示主要有模糊区间数、模糊中心数、模糊集合数和隶属函数等。,1.3 数据库的分类,多媒体数据库 能管理多媒体(Multimedia)数据(包括数值(Number)、字符串(String)、文本(Text)、图形(Graphics)、图像(Image)
21、、声音(Sound)、视像(Video)以及其它计算机所能处理的信息等等)的数据库系统。,1.3 数据库的分类,1.4 数据库系统类型,各种管理系统,电子数据处理(Electrical Data Processing , EDP) EDP系统一般只完成单项事务处理任务,目的是为了提高工作效率、减轻工作负担和节省人力等。EDP系统往往是企业中的各部门自行建立的,缺乏统一规划,数据一致性没有保障,数据共享能力差。除非资金方面的原因,我们不建议企业零敲碎打地建立EDP系统,而至少应统一规划,建立MIS系统。,1.4 数据库系统类型,管理信息系统(Management Information Syst
22、em MIS) MIS系统以提高信息处理效率和管理水平为目的,按事务功能对EDP作业进行综合、统一规划、全面协调,形成人事MIS、销售MIS或整个企业的MIS。MIS是目前较为流行的,但若要进一步发挥计算机信息系统的作用(除了帮助我们管理信息外还进行辅助决策),就需要结合管理、决策、控制、预测等技术,开发DSS系统。,1.4 数据库系统类型,决策支持系统(Decision Support System , DSS) DSS系统是以管理科学、运筹学、控制论和预测论等为基础,以计算机技术和信息技术为手段,为决策者提供决策所需的信息资料,辅助其进行决策活动。但由于DSS系统处于管理模式的最高层,涉及
23、许多非结构化的信息,并涉及多学科的结合,因此开发难度大、周期长、费用高。这些限制了企业DSS的开发应用,所以目前企业中流行的还是MIS系统。,1.4 数据库系统类型,1.5数据建模与数据库系统开发,讲翻译懂的,0,1语言,自然语言,翻译,翻译,翻译,计算机软件,学会使用,拉动,自然语言建模?,人与计算机的交流,建模的困难,现实世界,转换技术 建模,1.5数据建模与数据库系统开发,计算机世界,建模的困难,1.5数据建模与数据库系统开发,完备性 计算机还不能处理自然语言 没有一个模型能够完全表达现实世界,正确性 任何计算机软件都有错 不能确定一个模型是否正确表达了一个给定的现实世界,因为没有一个形
24、式化方法为现实世界建模,建模的困难,1.5数据建模与数据库系统开发,事实上,任何方法都不适合构建大型的应用。这是因为一个人很难处理大型复杂的模型或图表。而计算机软件方法还没有从理论上解决建模问题,建模的成功主要还是决定于人的能力而不是方法。就是说在软件工程还没有真正成为工程之前,任何方法的作用都是十分有限,因为一个人处理问题的规模和复杂度非常有限,只有当真正实现软件工程,才可以用多人合作的方式来处理大规模的复杂的问题,就像建设工程那样。,讲翻译懂的,应用系统,现实数据世界,转换技术 建模,现实数据如何表达: 数据建模,1.5数据建模与数据库系统开发,讲翻译懂的,数据库系统开发内容,1.5数据建
25、模与数据库系统开发,开发人员的经验和知识常常比一个方法更重要。,数据库设计: 就是为数据库系统设计一个数据库。数据库设计方法是数据库领域的技术内容,其核心就是数据建模,数据建模就是为一个应用系统开发建立现实数据世界的数据模型,例如对一个教务系统所用到的数据(教师数据、学生数据、课程数据和教室数据等)建立数据模型 。,讲翻译懂的,数据库系统开发内容,1.5数据建模与数据库系统开发,开发人员的经验和知识常常比一个方法更重要。,应用程序开发: 就是开发一个满足应用需求的软件。应用程序开发是软件工程领域的研究内容,其核心是功能建模,功能建模就是为一个应用体建立一个计算机软件模型,例如开发一个教务系统以
26、实现教务人员日常工作的功能。,讲翻译懂的,数据库系统开发内容,1.5数据建模与数据库系统开发,开发人员的经验和知识常常比一个方法更重要。,数据库访问开发: 包括存储过程和触发器、数据库访问SQL设计和对象持久化映射。触发器开发完全是数据库部分的工作,是实现关系表完整性约束的;存储过程是一批带有控制的SQL语句,也和数据库密切相关,用于优化数据库访问;而对象持久化映射是对象程序操纵数据库的基础。,数据建模与软件工程,1.5数据建模与数据库系统开发,一个应用程序小组 VS 一个数据库小组,讲翻译懂的,方法的局限,处理数据的系统(建立一个数据库,然后开发一个软件). 开发满足一个应用需求的软件(根据
27、功能建立一个数据库). 没有专门的数据应用系统开发方法. 数据需求没有充分考虑.,1.5数据建模与数据库系统开发,开发人员的经验和知识常常比一个方法更重要。,讲翻译懂的,方法的局限,1.5数据建模与数据库系统开发,两个领域从学术界的研究到工业界的产品开发仍然没有结合起来。 “一个位于对象空间的应用系统”这样的表述听起来很美,但由于没有好用的OODBMS,所以对象要在关系DBMS上做持久化,持久化为关系数据库,于是开发出来的系统可能仍然是“一个数据库和一个访问数据库的软件系统”。,数据建模与软件工程,1.5数据建模与数据库系统开发,对象驱动 VS 数据驱动,一个应用程序小组 VS 一个数据库小组
28、,1.6运行数据库的计算机系统,讲翻译懂的,1.6.1 集中式计算机系统,数据集中计算集中:集中式数据库系统由一台规模较大的计算机作为主机,其余的均作为终端使用,整个数据库完全存放在主机中,并且数据库管理系统和数据库应用程序也运行于主机上,应用程序和DBMS通过操作系统管理的共享内存区或应用任务区来进行通信。,订票系统 商业银行大集中系统,1.6运行数据库的计算机系统,讲翻译懂的,1.6.2 文件服务器系统,DBMS和数据库应用程序以及所有实际的数据处理都在客户机上执行,文件服务器只存放数据文件(这种情况,文件服务器就好像一个大磁盘),当客户机上的数据库应用要访问数据时,它通过重定向方式存取文
29、件服务器中的数据文件,文件服务器通过网络把数据文件传送到用户的客户机上,然后运行在客户机上的DBMS再对数据进行处理。,早期运行在NetWare MFOXBASE上的系统,1.6运行数据库的计算机系统,讲翻译懂的,1.6.3 分布式系统,数据分布计算分布:分布式数据库系统是一个逻辑上统一、地域上分布的数据库的集合,运行于分布式计算机网络环境下。每个网络结点上的局部数据库由局部数据库管理系统管理,并能独立运行。一个完整的分布式数据库系统能够把数据放到频繁使用它也是利用率最高的地方,以减少网络的拥挤,获得最快的响应时间,对本地使用的数据在本地控制。分布式数据库系统能够对任何地点的数据进行查询和修改,就像数据是存储在同一地点的单个数据库中一样。,数据集中计算分配:客户/服务器数据库是在客户/服务器计算机网络上运行的数据库系统,有一个数据库服务器管理数据库,应用程序运行在客户机上,当需要对数据库进行操作时,就向数据库服务器发
温馨提示
- 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
- 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
- 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
- 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
- 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
- 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
- 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。
最新文档
- 2026云南红河州石屏嘉胜能源有限责任公司招聘5人备考题库含答案详解【典型题】
- 2026青海海北州海晏县三角城镇卫生院招聘B超医生1人备考题库附答案详解(突破训练)
- 多旋翼无人机系统的认知
- 2026上半年北京事业单位统考市经济和信息化局招聘6人备考题库附答案详解(夺分金卷)
- 2026春季中国工商银行软件开发中心校园招聘150人备考题库及参考答案详解(预热题)
- 西南证券股份有限公司2026届春季校园招聘备考题库及完整答案详解【全优】
- 医院麻醉与镇痛分级授权管理制度
- 2026海南卫星海洋应用研究院有限公司招聘7人备考题库及答案详解【网校专用】
- 2026重庆市永川区仙龙镇人民政府招聘非全日制公益性岗位人员3人备考题库附答案详解(培优b卷)
- 2026四川大学华西医院生物医学大数据研究院郭安源教授课题组博士后招聘备考题库含完整答案详解(各地真题)
- 供应链风险管理检查清单
- 《轻钢龙骨石膏复合墙技术标准》
- 实施指南(2025)《DL-T 846.10-2016高电压测试设备通 用技术条件 第10部分:暂态地电压局部放电检测仪》
- DB15∕T 3413-2024 住宅小区和商业用房供配电设施规范
- GB/T 30117.6-2025灯和灯系统的光生物安全第6部分:紫外线灯产品
- 社科联课题申报书范文
- 2025咨询《工程项目组织与管理》冲关宝典
- 第五届国家级新区经开区高新区班组长管理技能大赛备赛试题库-上(单选题)
- 绿色算力发展研究报告(2025年)
- 2025年春节后家具制造行业复工复产安全技术措施
- 毕业设计(论文)-剪叉式液压升降台设计
评论
0/150
提交评论