| |
|
开发:
C++知识库
Java知识库
JavaScript
Python
PHP知识库
人工智能
区块链
大数据
移动开发
嵌入式
开发工具
数据结构与算法
开发测试
游戏开发
网络协议
系统运维
教程: HTML教程 CSS教程 JavaScript教程 Go语言教程 JQuery教程 VUE教程 VUE3教程 Bootstrap教程 SQL数据库教程 C语言教程 C++教程 Java教程 Python教程 Python3教程 C#教程 数码: 电脑 笔记本 显卡 显示器 固态硬盘 硬盘 耳机 手机 iphone vivo oppo 小米 华为 单反 装机 图拉丁 |
-> 大数据 -> 第1章 数据库系统的基本原理 -> 正文阅读 |
|
[大数据]第1章 数据库系统的基本原理 |
目录 3.数据库管理系统(DataBase Management System,DBMS) 5.数据库应用系统(或数据库应用程序)(DataBase Application System,DBAS) 1.1数据库系统概述1.数据(Data)数据是数据库存储的基本对象,是描述现实世界中各种具体事物或抽象概念的、可存储的并具有明确意义的符号记录。数据是数据库存储的对象。 2.数据库(DataBase,DB)数据库是为实际应用建立的、相互关联的数据集合。数据库是长期存储在计算机内、有组织的、可共享的大量数据集合。 数据库的基本特征:(1)可共享:在网络环境中被多个用户同时使用;? (2)长期存储:日积月累。带来的问题:数据库庞大、空间溢出、查询缓慢; (3)有组织(核心优势):数据按一定的数据模型组织、描述和存储; (4)数据独立性较高:应用程序和数据不相互依赖。是数据库系统追求的目标; (5)易扩展:在数据库中易增添新的对象和数据。 (6)冗余度较小:冗余即数据重复存储。在建立数据模型时,应当尽量减少数据冗余。 3.数据库管理系统(DataBase Management System,DBMS)数据库管理系统是位于用户与操作系统之间的一层数据库管理软件,是管理和维护数据库的专门软件。 数据库管理系统的主要功能:(1)数据定义功能:DBMS提供数据定义语言DDL使用户可以定义数据库及其中的数据对象(包括表、视图、索引等)和数据的完整性约束; (2)数据操纵功能:DBMS提供数据操纵语言DML使用户可以对数据库的数据进行增加、删除、 修改和查询操作,简称“增、删、改、查”,对应SQL语言的四个命令即INSERT、DELETE、UPDATE、SELECT; (3)数据的存储、组织和管理功能:系统数据记录在数据字典中的元数据。数据库管理系统要组织、存储、管理用户数据和系统数据,确定数据的存储组织方式,提供数据存取方式,以提高存储空间利用率和存取效率; (4)数据库的事务管理和运行管理:支持多用户并发事务对数据库的共享即同时访问,实现并发控制;提供数据库完整性机制,管理多用户的合法使用,实现数据库安全性保护(DCL)提供数据库的故障恢复机制; (5)其它功能:提供DBMS与其它软件系统的通信;不同数据库管理系统之间的数据转换等。提供数据库性能监视、系统维护等实用工具。 4.数据库系统(DataBase System,DBS)数据库系统是指在计算机系统中引入数据库后的系统。数据库系统=数据库(DB)+数据库管理系统(DBMS)+应用系统+数据库管理员(DBA))组成的存储、管理、处理和维护数据的系统。 ? (1)数据库系统管理数据的优点:①数据结构化:数据库中实现了数据的真正结构化,数据的结构用数据模型描述,无需程序定义和解释。 整体结构化:数据的组织不再仅仅针对某一个具体应用程序;不仅某项数据内部结构化,数据库整体是结构化的,能够存储数据之间的联系; ②数据的共享性高,冗余度低,易扩充:数据面向整个系统。减少数据不一致性(同一数据的不同拷贝的值不同)。易于扩充,适应不同用户的需求; ③数据独立性高:应用程序和数据不相互依赖; ④数据由DBMS统一管理和控制:数据的安全性保护;数据的完整性检查;并发控制;数据库恢复。 (2)数据库系统的用户—DBA:DBA负责数据库建立使用和维护的专门的人员。 DBA的主要职责:①参与数据库的设计; ②定义数据库的安全性要求和完整性约束条件; ③数据库系统的日常维护:定期备份数据、监视数据库运行情况、监视数据库所使用磁盘空间情况; ④数据库的改进和重组、重构:进行性能监控和调优,对数据库进行重组织,以提高系统的性能,当需求增加和改变时,对数据库进行重构。 5.数据库应用系统(或数据库应用程序)(DataBase Application System,DBAS)数据库应用系统主要是指现时业务逻辑的应用程序,是为解决实际应用问题、利用DBMS和应用开发工具开发的满足应用需要的应用程序(包含数据库)。 1.2数据模型(Data Model)1、数据模型的概念:数据模型是对现实世界数据特征的抽象。(1)数据库中通过数据模型来表示现实世界的数据对象及其联系。数据模型是数据库的逻辑结构,反映了数据库数据的逻辑组织方式。 (2)一个DBMS总是基于某种数据模型的。一般按数据模型对DBMS分类。 2.数据模型的组成要素:通常由数据结构、数据操作和完整性约束三部分组成。 (1)数据结构。是数据模型的最核心的组成部分。数据结构描述数据库的组成对象以及对象之间的联系。通常按其数据结构的类型来命名数据模型,例层次结构、网状结构和关系结构的数据模型分别命名为层次模型、网状模型、关系模型。 (2)数据操作。是指对数据库中数据允许执行的操作的集合,包括操作及有关的操作规则。主要有检索和更新(包括插入、删除、修改)两大类。 (3)数据的完整性约束条件。是一组完整性规则,用于保证数据的正确、有效、相容。在关系模型中体现为实体完整性和参照完整性。 3.按不同角度对数据模型分类(1)结构化模型:层次模型、网状模型、关系模型; (2)半结构化、非结构化模型:大数据应用中出现了大量半结构化、非结构化的模型和面向对象模型。 2、层次模型数据结构:树形结构。数据及其间联系用树结构来表示。满足下面两个条件的基本层次联系的集合为层次模型(就是树结构): (1)有且只有一个结点没有双亲结点,这个结点称为根结点; (2)根以外的其它结点有且只有一个双亲结点。 ? ?3、网状模型数据结构:网状结构。数据及其间联系用网状结构来表示。满足下面两个条件的基本层次联系的集合(一对多关系,结构上像有向图): (1)允许一个以上的结点无双亲; (2)一个结点可以有多于一个的双亲。 ? 4、关系模型关系模型采用的数据结构是关系,用关系表示数据库中的数据对象及其联系。 1.关系(Relation):一个关系就是一张规范的二维表,它由行(元组)和列(属性)组成,一个数据库的关系模型由多个二维表组成。 2.元组(Tuple):表中的一行即为一个元组,除去第一行的名字。 3.属性:表中的一列即为一个属性,每个属性都有一个属性名。 4.码/关键码/关键字(key):表中的某个属性或者属性的组合能唯一确定一个元组。在一个关系中可以有多个码。 5.关系模式:关系名(属性1,属性2,属性3,...,属性n); 6.关系数据模型的操作与完整性约束 (1)关系数据模型操作主要包括查询、插入和更新数据; (2)关系的完整性约束:实体完整性、参照完整性、用户定义完整性。 1.3数据库体系结构1、数据库系统的三级结构(1)是数据库内部的结构。将数据库内部结构分为三级模式;屏蔽低层的复杂性,便于各类用户使用。 (2)数据库管理系统支持三级模式结构。提供定义三级模式的DDL;由数据库设计人员定义三级模式。 ? 2、数据库系统的三级模式(1)模式(Schema):也称逻辑模式。是对数据库中全体数据的逻辑结构和特征的描述。一个数据库只有一个模式,是所有应用的公共数据视图。是三级模式结构的中间层,与数据的物理存储细节和硬件环境无关,与具体的应用程序无关。设计数据库模式结构时应首先确定数据库的逻辑模式。 (2)外模式(External Schema):也称子模式或用户模式。是数据库用户(应用程序员)使用的局部数据的逻辑结构和特征的描述。外模式一般是是模式的子集。一个数据库可以有多个外模式,分别满足不同类用户的具体应用需求。 外模式与应用的关系是一对多。一个外模式可以被多个应用程序共同使用。 外模式是保证数据库安全性的一项措施。每个应用(用户)只能看见和访问所对应的外模式中的数据。 (3)内模式(Internal Schema):也称存储模式。是数据物理结构和存储方式的描述。内模式是数据在数据库内部的表示方式,(如数据记录的存储方式、索引的组织方式等)。内模式独立于具体的存储设备,体现数据库物理存储策略。一个数据库只有一个内模式。 3、数据库系统的二级映射和数据独立性?(1)数据库系统的二级映射:外模式/模式映射和模式/内模式映射。(2)数据独立性:指应用程序与数据之间的独立性,包括物理独立性和逻辑独立性。①物理独立性——模式/内模式映射。定义了数据全局逻辑结构与存储结构之间的对应关系。数据库中模式/内模式映射是唯一的。 当数据库的存储结构改变了,数据库管理员可以修改模式/内模式映射,使模式保持不变,从而使应用程序不受影响。保证了数据与程序的物理独立性,简称数据的物理独立性。 ②逻辑独立性——外模式/模式映射。定义了每个外模式与模式之间的对应关系。外模式/模式映射有多个。 当模式改变时,数据库管理员修改有关的外模式/模式映射,使外模式保持不变。由于应用程序是依据数据的外模式编写的,从而应用程序不必修改,保证了数据与程序的逻辑独立性,简称数据的逻辑独立性。 (3)数据库三级模式结构、二级映射的意义①实现了数据与程序之间的独立性。保证了数据库外模式的稳定性,从而从底层保证了应用程序的稳定性。除非应用需求本身发生变化,否则应用程序一般不需要修改。 ②简化了应用程序的编制工作。DBMS管理数据的存取,用户不必考虑存取路径等细节。 |
|
|
上一篇文章 下一篇文章 查看所有文章 |
|
开发:
C++知识库
Java知识库
JavaScript
Python
PHP知识库
人工智能
区块链
大数据
移动开发
嵌入式
开发工具
数据结构与算法
开发测试
游戏开发
网络协议
系统运维
教程: HTML教程 CSS教程 JavaScript教程 Go语言教程 JQuery教程 VUE教程 VUE3教程 Bootstrap教程 SQL数据库教程 C语言教程 C++教程 Java教程 Python教程 Python3教程 C#教程 数码: 电脑 笔记本 显卡 显示器 固态硬盘 硬盘 耳机 手机 iphone vivo oppo 小米 华为 单反 装机 图拉丁 |
360图书馆 购物 三丰科技 阅读网 日历 万年历 2024年11日历 | -2024/11/24 4:18:04- |
|
网站联系: qq:121756557 email:121756557@qq.com IT数码 |