版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领
文档简介
数据库原理及应用第一章数据库基础本章导读随着信息技术的飞速发展,信息已成为当今社会各种活动的核心资源。通过对信息资源的进一步开发利用,人们可以有效地提高工作效率,使各种社会资源得到最大限度的节约和利用。对信息资源的开发利用离不开数据库技术。本章从数据与数据处理入手,介绍数据库相关的基础知识,包括数据库、数据库管理系统、数据库系统的基本概念,数据库技术的发展,数据模型,数据库系统的结构和数据库领域的新技术等内容。学习目标熟悉数据、数据处理、数据库、数据库管理系统与数据库系统的基本概念。了解数据库技术的发展过程。熟悉数据模型的基本概念,掌握概念模型的E-R图表示方法。理解数据库系统的三级模式结构与二级映像等概念。了解数据库领域的新技术。目录1.1认识数据库1.2数据模型1.3数据库系统的结构1.4数据库领域的新技术1.5实战训练——概念模型的应用数据与信息01数据是对客观事物、事件的记录与描述,也是对客观事物的逻辑归纳。数据可以是连续的,如声音、图像等;也可以是离散的,如符号、文字等。数据与其语义密不可分,语义指数据的含义。例如,“95”是一个数据,被赋予特定的语义后,它可以表示某学生某门课的成绩,这就是信息。简单来讲,信息是对数据的解释,即信息=数据+语义例如,有一条学生成绩信息:信息学院计算机一班的张三同学在数据库原理及应用考试中取得了95分的成绩,转换成计算机中的数据,可以描述为(张三,信息学院,计算机一班,数据库原理及应用,95)。数据处理与数据管理02数据处理数据管理
数据管理是数据处理的核心,其过程比较复杂,主要包括数据的分类、组织、编码、存储、维护、检索等操作。对于这些数据管理操作,人们需要一个通用、高效且使用方便的管理软件,将数据有效地管理起来。数据库技术正是瞄准这一目标,研究、发展并完善起来的。
数据处理是将数据转换成信息的过程,包括对数据进行采集、管理、加工、变换和传输等一系列活动。数据处理的目的有两个,其一是从大量的原始数据中抽取和推导出有价值的信息,作为决策的依据;其二是借助计算机科学地保存和管理大量复杂的数据,便于人们能够充分地利用这些信息资源。数据与信息01
数据库(DataBase,DB)是存储在计算机内,有组织的、可共享的相关数据的集合,这种集合按一定的数据模型组织、描述并长期存储,同时能够以安全可靠的方法对数据进行检索。数据库数据具有冗余度小、独立性高、延展性强、共享性好,以及结构化和永久性等特点。数据库数据库管理系统02
数据库管理系统(DataBaseManagementSystem,DBMS)是指建立、运用、管理和维护数据库,并对数据库进行统一控制的系统软件。SQLServerMySQLAccessOracle常见的数据库管理系统数据库系统03
数据库系统(DataBaseSystem,DBS)是指在计算机系统中引入数据库后的系统。
它主要由数据库、数据库用户、计算机硬件系统和计算机软件系统等几部分组成,如右图所示。有时人们也将数据库系统简称为数据库。数据库用户指开发、管理和使用数据库的人员,包括系统分析员、数据库设计员、应用程序员、数据库管理员和最终用户等。系统分析员负责确定应用系统的需求分析和规范说明,他们和最终用户及数据库管理员一起确定系统的硬件配置,参与数据库的概要设计;数据库设计员负责确定数据库中的数据和设计数据库的各级模式;应用程序员负责编写使用数据库的应用程序;数据库管理员负责数据库的总体信息控制;最终用户利用系统的接口或查询语言访问数据库。人工管理文件系统数据库系统随着计算机硬件和软件的发展,数据管理经历3个发展阶段。人工管理阶段01在20世纪50年代中期以前,计算机主要用于科学计算。当时的计算机硬件和软件都不完善,硬件存储设备只有卡片、纸带和磁带;软件方面只有汇编语言,没有操作系统和管理数据的软件,因此只能采用人工方式对数据进行管理。数据不保存数据不共享人工管理数据的特点数据不具独立性无专门的数据管理软件文件系统阶段02在20世纪50年代后期至60年代中期,计算机硬件和软件都有了极大的发展,计算机开始用于数据管理。这一时期,硬件方面出现了磁盘、磁鼓等直接存储设备;软件方面出现了高级语言和操作系统,操作系统中的文件系统就是专门用来管理数据的软件。文件系统阶段相较于人工管理阶段有了新的特点:数据以文件的形式长期存储,文件系统提供文件管理功能及存取方法,应用程序与数据间具有一定的独立性,文件形式多样化,数据间具有一定的共享性等。1234文件系统阶段的问题数据不一致性。由于相同的数据在不同的文件中重复存储且各自管理,在应用程序对数据进行更新操作时,容易造成不同应用程序更新的数据不一致的状况。数据共享性差、冗余度较大。一个文件基本上只对应一个应用程序(下图),文件仍然是面向应用的。数据间联系弱。文件与文件之间是独立的,文件间的联系必须通过应用程序来构造。数据独立性差。应用程序与数据紧密耦合,当数据结构发生变化时,需要修改相应的应用程序;反之,若应用程序发生变化,也需改变数据结构。数据库系统阶段03到了20世纪60年代后期,硬件方面出现了大容量、存取快速的磁盘;硬件价格下降且软件价格上升,使开发和维护系统软件的成本相对增加。文件系统的数据管理方法无法适应各种应用程序的需要,于是数据库技术应运而生,出现了统一管理数据的专门软件系统,即数据库管理系统,这标志着数据库系统阶段的开始。数据库系统在数据处理上有了明显的功能提升。数据结构化数据独立性高数据共享性高、冗余度小有统一的数据管理和控制功能特点(1)数据结构化数据库中的数据不仅仅只针对某个应用,而是面向整个组织;数据库中不仅描述了数据,还描述了数据之间的联系,能够较好地反映现实世界中事物之间的自然联系。(2)数据共享性高、冗余度小数据共享是指数据库中的一组数据集合可为多个应用程序和多个用户共同使用,节省存储空间。在数据库系统中,用户和应用程序不需要各自建立数据文件,而是从数据库中存取其中的数据子集,该数据子集是通过DBMS从数据库中经过映射形成的逻辑文件。(3)数据独立性高数据的独立性是指数据库中的数据与应用程序间相互独立,即数据的逻辑结构、存储结构和存取方式的改变不影响应用程序。
数据的独立性可分为如下两种。①数据的物理独立性。
物理独立性是指当数据库物理结构发生改变时,通过修改映射可以使数据库逻辑结构不受影响,进而使用户逻辑结构及应用程序不必改变。②数据的逻辑独立性。逻辑独立性是指数据的逻辑结构发生改变时,通过修改映射可以使用户应用程序不必改变。(4)有统一的数据管理和控制功能在数据库系统中,数据由数据库管理系统统一管理和控制,数据库可为多个用户和应用程序共享。数据库中数据的共享是并发的,多个用户可以同时存取数据库中的同一数据。
为确保数据库数据的正确性和有效性,数据库管理系统提供了数据的安全性控制、数据的完整性控制、并发控制和数据恢复4个方面的数据控制功能。数据模型的概念01数据模型是对现实世界数据特征的抽象描述。现实世界中的数据要转换为抽象的数据库数据,需要经过现实世界、信息世界、计算机世界这3个阶段。数据模型是现实世界两级抽象的结果。数据模型数据模型的组成要素02数据结构数据操作数据完整性约束数据操作是指允许对数据库中数据执行的操作的集合,同时包括相应的操作规则。数据结构是实体和实体间联系的表达和实现。数据完整性约束给出数据及其联系应具有的制约和依赖规则。数据模型的类型03概念模型也称信息模型,属于信息世界中的模型。它按照用户的观点对数据信息建模,是对现实世界的事物及其联系的第一级抽象。逻辑模型属于计算机世界中的模型,这类模型以计算机的观点对数据进行建模,是对现实世界的第二级抽象。物理模型是对数据最底层的抽象,是面向计算机系统的模型,它描述数据在磁盘或磁带上的存储方式和存取方法。数据模型按应用层次分为相关术语01客观存在并且可以相互区别的事物称为实体。实体(Entity)实体所具有的某一特性。一个实体可以由多个属性刻画。属性(Attribute)用实体名及其属性名集合来抽象描述同类实体。实体型(EntityType)同型实体的集合称为实体集。实体集(EntitySet)在实体型中能够唯一标识一个实体的属性或属性集称为实体的码。码(Key)(键、关键字)某一属性的取值范围称为该属性的域。域(Domain)现实世界中的联系同样也要抽象和反映到信息世界中来。联系(Relationship)概念模型中实体型之间的联系02实体型之间的联系按照联系中实体的个数可分为两个实体型之间的联系、两个以上实体型之间的联系和单个实体型内部的联系3种情况。一对一联系(1∶1)多对多联系(m∶n)一对多联系(1∶n)这3种情况中,按照一个实体型中的实体个数与另一个实体型中的实体个数的对应关系,均可分为以下3种类型。(1)一对一联系(1∶1)实体集A中的一个实体至多与实体集B中的一个实体(也可没有)相联系,反之情况相同,则称实体型A与实体型B有一对一联系。(2)一对多联系(1∶n)实体集A中的一个实体与实体集B中的n(n≥0)个实体相联系,且实体集B中的一个实体至多与实体集A中的一个实体相联系,则称实体型A与实体型B有一对多联系。(3)多对多联系(m∶n)实体集A中的一个实体与实体集B中的n(n≥0)个实体相联系,且实体集B中的一个实体与实体集A中的m(m≥0)个实体相联系,则称实体型A与实体型B之间有多对多联系。概念模型的E-R图表示方法03概念模型的表示方法有很多,其中最著名、最常用的是陈品山(PeterChen)于1976年提出的实体-联系方法(Entity-RelationshipApproach),简称为E-R图。E-R图提供了表示实体、属性和联系的方法。在E-R图中,用矩形表示实体,矩形内部写上实体名;用椭圆形表示属性,内部写上属性名,并用无向边与相应的实体相连。菱形表示联系,内部写上联系名,并用无向边分别与有关实体相连,同时在无向边旁标上联系的类型(1∶1,1∶n,m∶n)。E-R图也可以表示两个以上实体型之间或单个实体型内部的联系。例如,班级、学生和班干部3个实体型之间的一对多联系,学生、教师和课程3个实体型之间的多对多联系,以及教师实体内部具有管理和被管理的一对多或多对多联系(a)三个实体型一对多联系
(b)三个实体型多对多联系
(c)单个实体型内部联系层次模型
网状模型面向对象模型关系模型逻辑模型层次模型01用树形结构表示实体类型及实体间联系的数据模型称为层次模型。它将实体之间的联系抽象成一种自上而下的层次关系,用树形结构表示出来。父子节点之间的联系是一对多联系(1∶n)一个模型有且只有一个节点没有双亲节点,这个节点称为根节点。层次模型的结构特点根节点以外的其他节点有且只有一个双亲节点。层次模型的优点是数据结构简单清晰、提供了良好的完整性支持、结构间联系简单及数据查询效率高等。但是这类模型不能直接表示两个以上实体型间的复杂联系,也不能表示实体型间的多对多联系。模型受限、物理成分复杂等原因,使其不能用于表示非层次性的联系。网状模型02网状模型在层次模型的基础上去掉了两个限制,可以更直接地描述现实世界。允许两个节点之间有多种联系允许一个节点有多个双亲节点允许一个以上的节点没有双亲节点网状模型的结构特点网状模型具有比层次模型更好的性能和高效率的存储方式,但其数据结构比较复杂,数据模式和系统实现均不理想。关系模型03关系模型的数据结构是一张规范化的二维表,每个二维表都可以称为关系,实体与实体之间的联系也用关系表示。不同于前两种模型,关系模型具有严格的数学理论依据,结构简单易懂,存取路径对用户透明,具有更高的数据独立性和安全保密性面向对象模型04以面向对象的观点描述实体的逻辑组织、对象间限制与联系的模型是面向对象模型。这类模型具有抽象性、封装性、继承性和多态性等特性,是面向对象的思想与数据库技术相结合的产物,它能更完整地描述现实世界的数据结构,具有丰富的表达能力。但这类模型相对复杂,涉及知识比较多,目前普及程度不如关系模型。面向对象模型数据库系统根据不同的层次和角度可分为外部体系结构和内部体系结构。从数据库管理系统的角度看,虽然不同的数据库系统实现的方式各不相同,但它们在内部体系结构上均可表示为三级模式结构,并提供二级映像。基于相对稳定的数据模式实现了数据的独立性。数据库系统的内部体系结构从逻辑上分为外模式、模式和内模式三级抽象模式结构,并提供外模式/模式、模式/内模式二级映像。
对于用户而言,外模式、模式和内模式分别对应一般用户模式、概念模式和物理模式,它们反映了看待数据库的3个角度。数据库系统的三级模式结构和二级映像功能如右图所示。模式01模式也称为概念模式或概念视图,是数据库中全体数据的逻辑结构和特征的描述,处于三级模式结构的中间层,不涉及数据的物理存储和硬件环境,与开发工具及程序设计语言无关。一个数据库只有一个模式,模式是数据的逻辑表示,它描述了数据库中存储的具体数据及其之间存在的联系。外模式02外模式又称子模式或用户模式,它是三级结构的最外层,是数据库用户能够看到并允许使用的那部分数据的逻辑结构和特征的描述,是数据库用户的数据视图。外模式是模式的子集,一个数据库可以有多个外模式。用户可以根据系统所给的外模式,用查询语言或应用程序去操作部分数据,数据库中的其余数据对于用户来说是不可见的,所以外模式也是保证数据库安全的一种有力措施。内模式03内模式又称存储模式或物理模式,是三层结构中的最内层,也是最靠近物理存储的一层。它是对数据库存储结构的描述,是数据在数据库内部的表达方式。为了在数据库系统中实现3个抽象层次的联系与转换,数据库管理系统在这三级模式之间提供了外模式/模式和模式/内模式的二级映像。外模式/模式映像01数据库中的同一个模式可以有任意多个外模式,对于每一个外模式,都存在一个外模式/模式映像,它确定了数据库的局部逻辑结构与全局逻辑结构之间的对应关系。
例如,在学生的逻辑结构(学号,姓名,性别)中添加新的属性“系别”时,学生的逻辑结构变为(学号,姓名,性别,系别),由数据库管理员对各个外模式/模式映像做出相应的改变,保证了数据的局部逻辑结构不变,也就是保证了外模式不变。同样,因为应用程序是依据数据的局部逻辑结构所编写,所以应用程序不必改变,保证了数据与程序间的逻辑独立性。模式/内模式映像02数据库中只有一个模式和一个内模式,所以模式/内模式映像是唯一的。模式/内模式映像定义了数据的全局逻辑结构与存储结构,也就是模式与内模式之间的关系。当数据的存储结构发生变化,只需数据库管理员对模式/内模式映像做出相应的改变,就能使模式保持不变,从而使应用程序也不用发生改变,确保了数据的物理独立性。随着计算机软硬件技术的进步,特别是大数据、云计算的出现,数据库技术获得了快速发展,新技术和新系统层出不穷。云数据库01
云数据库(CloudDataBase)是指被优化或部署到一个虚拟计算环境中的数据库。具有按需付费、按需扩展、高可用性及存储整合等优势。01020304可以使用户按照存储容量和带宽的需求付费因为云数据库基本采用多租户的形式,能够以共享资源的形式节省用户的开销。可实现按需扩展理论上云数据库具有无限的可扩展性,具有良好的弹性。云的可移植性可移植性是指可以将数据库从一个地方移到另一个地方。用户不必控制运行原始数据库,只需要一个有效的连接字符串就可以使用云数据库。高可用性不存在单点失效的问题,一个节点失效,剩余的节点会接管任务。将一个现有的数据库优化到云环境,有以下好处:分布式数据库02
分布式数据库(DistributedDataBase)是指数据分别存储在计算机网络中的各台计算机上的数据库。分布式数据库系统通常使用较小的计算机系统,每台计算机可单独放在一个地方,其中都可能有DBMS的一份完整拷贝副本,或者部分拷贝副本,并具有自己局部的数据库,位于不同地点的许多计算机通过网络互相连接,共同组成一个完整的、全局的、逻辑上集中且物理上分布的大型数据库。分布式数据库相对传统集中式数据库具有更高的数据访问速度、更强的可扩展性和更高的并发访问量等优点。大数据01
大数据(BigData)也称海量数据或巨量数据,是指数据量大到无法利用传统数据处理技术在合理的时间内获取、存储、管理和分析的数据集合。
“大数据”一词除用来描述信息时代产生的海量数据外,也用来命名与之相关的技术、创新与应用。大数据的特征(4V)海量的数据规模(Volume)快速的数据流转(Velocity)价值密度低(Value)多样的数据类型(Variety)大数据采集大数据预处理大数据存储与管理大数据分析与挖掘大数据可视化展现大数据技术是指用非传统的方式对大量结构化和非结构化数据进行处理,以挖掘出数据中蕴含的价值的技术。根据大数据的处理流程,可以将其关键技术分为右侧展现的技术。对于网络上各种来源的数据,包括社交网络数据、电子商务交易数据、网上银行交易数据、搜索引擎点击数据、物联网传感器数据等,在被采集前都是零散的,没有任何意义。大数据采集就是将这些数据写入数据仓库,整合在一起,以便对数据进行综合分析。
大数据采集包括网络日志采集、网络文件采集(提取网页中的图片、文本等)、关系型数据库的接入等,常用的工具有Flume,Kakfa,Sqoop等。(1)大数据采集由于大数据的来源和种类繁多,这些数据有残缺的、有虚假的、有过时的,因此,想要获得高质量的数据分析结果,必须在数据准备阶段提高数据的质量,即对大数据进行预处理。
大数据预处理是指将杂乱无章的数据转化为相对单一且便于处理的结构(数据抽取),或去除没有价值甚至会对分析造成干扰的数据(数据清洗),从而为后期的数据分析奠定基础。(2)大数据预处理大数据存储是指用存储器把采集到的数据存储起来,并建立相应的数据库,以便对数据进行管理和调用。目前,主要采用HDFS分布式文件系统(HadoopDistributedFileSystem)和非关系型分布式数据库(NoSQL)来存储和管理大数据。常用的NoSQL数据库包括HBase,Redis,Cassandra,MongoDB,Neo4j等。(3)大数据存储与管理大数据分析与挖掘是指通过各种算法从大量的数据中找出潜在的有用信息,并研究数据的内在规律和相互间的关系。常用的大数据分析与挖掘技术包括Spark,MapReduce,Hive,Pig,Flink,Impala,Kylin,Tez,Akka,Storm,S4,Mahout,MLlib等。(4)大数据分析与挖掘大数据可视化展现是指利用可视化手段对数据进行分析,并将分析结果用图表或文字等形式展现出来,从而使读者对数据的分布、发展趋势、相关性和统计信息等一目了然。目前,常用的大数据可视化工具有Echarts和Tableau等。(5)大数据可视化展现主动数据库02传统数据库一般只根据应用程序的要求对数据库进行基本操作,仅作为一种被动的数据仓库存在。主动数据库(ActiveDataBase)是指在没有用户干预的情况下,能够主动地对系统内部或外部所发生的事件做出反应的数据库,是数据库技术与人工智能技术相结合的产物。主动数据库最大的特点就是让数据库系统具有主动服务的功能,并以一种统一的机制来实现各种主动服务需求。系统提供一个自动监视模块,不时地检查着规划中包含的各种事件是否发生,一旦发现某事件发生,就主动触发执行某个动作。这样一来,数据库管理系统就可以自动执行由用户预先设定的动作,可把诸如完整性约束、存取控制、例外处理、监督和警告、状态开关自动切换及检索策略的切换,乃至复杂的演绎推理和实时处理等功能以一种统一的机制实施。虽然主动数据库还有待发展,但其已经在计算机集成制造、网络管理和办公自动化等领域有了广泛的应用。数据仓库01反映历史变化。数据仓库系统通常记录一个单位从过去某一时间点到目前时间点所有时期的信息,可通过这些信息对这一单位的发展历程和未来趋势做出分析和预测。面向主题。数据仓库中的数据按照一定的主题域进行组织,它们划分为各自独立的领域,每个领域都有自己的逻辑内涵且互补不交叉。数据仓库(DataWarehouse)是面向主题的、集成的、相对稳定的、反映历史变化的数据集合,通常用于辅助决策支持。集成性。数据仓库中的数据是对原有分散的数据库数据做抽取、清理后经过加工汇总得到的,源数据经统一与综合之后才能进入数据仓库。相对稳定。数据一旦加载到数据仓库,一般情况下不会再修改或删除,而是作为数据档案长期保存。数据挖掘02
数据挖掘(DataMining)是从大量数据中获取有效的、新颖的、潜在有用的、最终可理解的模式的非平凡过程,也称为知识发现。
简单来讲,数据挖掘就是从大量数据中提取或“挖掘”知识。数据挖掘间接挖掘在所有的属性中寻找某种关系,如关联规则和聚类等。直接挖掘利用可用的数据建立一个模型,这个模型是对一个特定属性的描述,如分类、估值和预测等数据挖掘是交叉性学科,它是数据库技术、机器学习、统计学、人工智能、可视化分析和模式识别等多门学科的融合。
它把现代企业中的原始数据转换为人工智能的来源,对数据进行操纵,提供可靠的、可以用来决策的信息。实战目的01(1)学习使用PowerDesigner建模工具绘制概念模型图(即E-R图)。(2)学习使用PowerDesigner建模工具生成物理模型图及对应的SQL语句。实战内容及步骤02下面以订货管理系统(见右图)为例,介绍在PowerDesigner中绘制概念模型图的操作步骤。步骤1启动PowerDesigner,其操作界面如图所示。步骤2新建概念模型图。在“ObjectBrowser”窗口中右击“Workspace”,在弹出的快捷菜单中选择“New”→“ConceptualDataModel”选项,打开“NewConceptualDataModel”对话框,将模块名修改为“订货管理”,单击“OK”按钮,如图所示。步骤3添加客户实体。在“Toolbox”窗口中选择“Entity”选项
,然后在编辑窗口的合适位置单击,即可添加实体。右击编辑窗口空白处,使鼠标变
温馨提示
- 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
- 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
- 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
- 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
- 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
- 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
- 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。
最新文档
- 2024年对外贸易协议签订流程及注意事项版B版
- 2024年标准代销业务协议示例版B版
- 漯河职业技术学院《地籍管理》2023-2024学年第一学期期末试卷
- 2025年吉林道路货运从业资格证模拟考试
- 2024年商业物业管理与社区安全防范体系建设合同3篇
- 2024年模具生产服务协议标准文本版B版
- 单位人事管理制度展示选集
- 2025出租车半股转让合同
- 乡村水厂建设与运营合作协议
- 环保工程总包施工合同
- 多金属废料高效综合回收利用产业升级项目环评报告书
- 石方开挖的环保措施
- 商洛市商州区金矿煤矿矿山地质环境保护与土地复垦方案
- 中国铁塔股份有限公司代维交接指南(2017年)
- 常用药物皮试配制法和药物过敏反应的急救措施
- 医学微生物学知到章节答案智慧树2023年山东第一医科大学
- 印刷通用质量检验标准
- 电子测量技术基础课后答案
- 大兴调查研究研讨发言材料学习心得体会中心组3篇
- 培训学校火灾应急预案
- 面试评分表完整版
评论
0/150
提交评论