热门标签 | HotTags
当前位置:  开发笔记 > 编程语言 > 正文

1.3数据库系统结构及组成(三级模式结构)

文章目录1.3.1数据库系统结构一、数据库系统模式的概念二、数据库系统的三级模式结构三、数据库的二级映像功能与数据独立性1.3.2数据库系统的体系结构一、DBS体系结构的组成二、D

文章目录

  • 1.3.1 数据库系统结构
    • 一、数据库系统模式的概念
    • 二、数据库系统的三级模式结构
    • 三、数据库的二级映像功能与数据独立性
  • 1.3.2 数据库系统的体系结构
    • 一、DBS体系结构的组成
    • 二、DBS体系结构的分类
1.3.1 数据库系统结构
  • 数据库管理系统内部的系统结构(模式结构):
    从数据库管理系统角度看,数据库系统通常采用三级模式结构;
  • 数据库系统外部的体系结构:从数据库最终用户角度看,数据库系统的体系结构分为集中式结构(单用户结构、主从式结构)、客户/服务器结构、分布式结构。

一、数据库系统模式的概念

  1. 型和值:
    · 型(Type):是指对某一数据的结构和属性的说明。
    · 值(Value):型的一个具体赋值。
    《1.3数据库系统结构及组成(三级模式结构)》
  2. 模式和实例:
    · 模式(schema):是数据库中全体数据的逻辑结构和特征的描述,它仅仅涉及到型的描述,不涉及到具体的值。
    · 模式和型的关系:全体和部分
    · 实例(instance):模式的一个具体值称为模式的一个实例。(时间为变量)
    · 实例和值的关系:全体和部分

模式和实例的关系:

  • 同一个模式可以有很多实例;
  • 模式是相对稳定的(模式反映的是数据的结构及其关系,会维持一段时间),而实例是相对变动的(实例反映的是数据库某一时刻的状态)。

二、数据库系统的三级模式结构

数据库系统的三级模式结构是指数据库系统是由外模式、模式和内模式三级构成:

  1. 模式(核心):模式也称逻辑模式。
  • 说明:
    · 一个数据库只有一个模式;
    · 数据库模式以某一种数据模型为基础;
    · 定义模式时不仅要定义数据的逻辑结构(例如记录由哪些数据项构成,数据项的名字、类型、取值范围等),而且要定义这些数据间的联系,以及与数据有关的安全性、完整性要求。
    《1.3数据库系统结构及组成(三级模式结构)》
  1. 外模式:外模式也称子模式或用户模式,它是数据库用户(包括应用程序和最终用户)看见和使用的局部数据的逻辑结构和特征的描述,是数据库用户的数据视图。
  • 说明:
    · 一个数据库可以有多个外模式;
    · 外模式通常是模式的子集;
    · 同一个模式可以为某一用户的多个应用系统所使用,但一个应用程序只能使用一个外模式;
    · 外模式的定义也属于逻辑结构设计的范畴。
    《1.3数据库系统结构及组成(三级模式结构)》
  1. 内模式:内模式也称存储模式,它是数据物理结构和存储结构的描述,是数据在数据库内部的表述方式。
  • 说明:
    · 一个数据库只有一个内模式。
    · 内模式由OS和DBMS共同管理。

三、数据库的二级映像功能与数据独立性

DMBS在三级模式之间提供了两层映像:

  • 外模式/模式映像
  • 模式/内模式映像
    作用:保证了数据库系统中的数据的逻辑独立性和物理独立性
    《1.3数据库系统结构及组成(三级模式结构)》
    1、外模式/模式映像
    (1)数量:
    N
    (2)作用:
             ①定义了外模式与模式之间的对应关系(子集和全集的映射关系)。
             ②保证逻辑独立性。(扩展:当模式改变时,由数据库管理员对各个外模式/模式的映像作相应改变,可以使外模式保持不变,从而应用程序不必修改。)
    2、模式/内模式映像
    (1)数量:
    1
    (2)作用:
             ①定义了数据全局逻辑结构与存储结构之间的对应关系。
             ②保证物理独立性。(扩展:当数据库的存储结构改变了(关系数据库:数据文件的合并与拆分,非关系数据库:排序方式改变、增加索引),由数据库管理员对各个模式/内模式的映像作相应改变,可以使模式保持不变,从而应用程序也不必修改。)

《1.3数据库系统结构及组成(三级模式结构)》

1.3.2 数据库系统的体系结构

一、DBS体系结构的组成

  1. 硬件设备
  2. 相关的软件: OS,DBMS及数据库,开发工具及编译系统,应用系统
  3. 相关人员:DBA,应用程序员,用户

二、DBS体系结构的分类

  1. 集中式结构
    1)单用户数据库系统
    整个数据库系统,包括应用程序、DBMS、数据库,都装在一台计算机上,为一个用户独占,不同机器之间不能共享数据。
    2)主从式结构的数据库系统
    一个主机带多个终端的多用户结构。数据库系统,包括应用程序、DBMS、数据库,都集中存放在主机上,所有处理任务都由主机来完成。
    《1.3数据库系统结构及组成(三级模式结构)》
  2. 客户/服务器结构
    工作原理:在客户/服务器结构中,客户端的用户请求(数据请求)通过网络传送到数据库服务器,数据库服务器验证(身份验证、权限验证、数据验证)通过后,进行数据处理,将处理结果(原始数据)返回给用户。
    1)两层客户/服务器体系结构(client/server architecture)
    · 服务器:网络中某个(些)结点上的计算机专门用于执行DBMS功能,称为数据库服务器(查询服务器,事物服务器,SQL服务器)。(存放DBMS和数据库)
    · 客户机:其他结点上的计算机安装DBMS的外围应用开发工具(DBMS的客户端工具)和应用系统,称为客户机。
    《1.3数据库系统结构及组成(三级模式结构)》
    《1.3数据库系统结构及组成(三级模式结构)》
    2)面向Web应用的三层客户/服务器体系结构(browser/server archiecture)
    这种体系结构在客户端和数据库服务器间增加了一个中间层(middle tier)。这个中间层根据应用的不同,有时称为应用服务器(application server),又是称为Web服务器(web server)。
    《1.3数据库系统结构及组成(三级模式结构)》
  • 优点:
    显著减少了网络上的数据传输量,提高了系统的性能、吞吐量和负载能力;
    客户/服务器结构的数据库往往更加开放(支持不同的硬件和软件平台、开发工具),应用程序具有更强的可移植性和扩展性,同时也可以减少软件维护开销。
  1. 分布式结构的数据库系统
    分布式结构的数据库系统是指数据库中的数据在逻辑上是一个整体,但物理地分布在计算机网络地不同结点上
    网络中的每个结点都可以独立处理本地或异地数据库中的数据。本地计算机单独不能胜任的处理任务,可以通过通信网络取得其他DB和计算机的支持
    《1.3数据库系统结构及组成(三级模式结构)》
    1)分布式数据库服务器的模式:
    ① 主从式:一个主服务器(具有所有权限),多个子服务器(数据由主服务器发布,只有部分功能);
    ② 多主式:多个主服务器,它们之间始终保持数据一致。
    2)数据存储方案:
    ① 传统存储方案
    ② 云存储(Hadoop生态系统中的分布式数据存储)
    《1.3数据库系统结构及组成(三级模式结构)》

《1.3数据库系统结构及组成(三级模式结构)》


推荐阅读
  • MySQL 数据库迁移指南:从本地到远程及磁盘间迁移
    本文详细介绍了如何在不同场景下进行 MySQL 数据库的迁移,包括从一个硬盘迁移到另一个硬盘、从一台计算机迁移到另一台计算机,以及解决迁移过程中可能遇到的问题。 ... [详细]
  • 随着网络安全威胁的不断演变,电子邮件系统成为攻击者频繁利用的目标。本文详细探讨了电子邮件系统中的常见漏洞及其潜在风险,并提供了专业的防护建议。 ... [详细]
  • 探讨如何真正掌握Java EE,包括所需技能、工具和实践经验。资深软件教学总监李刚分享了对毕业生简历中常见问题的看法,并提供了详尽的标准。 ... [详细]
  • 本文探讨了如何在日常工作中通过优化效率和深入研究核心技术,将技术和知识转化为实际收益。文章结合个人经验,分享了提高工作效率、掌握高价值技能以及选择合适工作环境的方法,帮助读者更好地实现技术变现。 ... [详细]
  • 本文探讨了2012年4月期间,淘宝在技术架构上的关键数据和发展历程。涵盖了从早期PHP到Java的转型,以及在分布式计算、存储和网络流量管理方面的创新。 ... [详细]
  • 本文详细介绍了网络存储技术的基本概念、分类及应用场景。通过分析直连式存储(DAS)、网络附加存储(NAS)和存储区域网络(SAN)的特点,帮助读者理解不同存储方式的优势与局限性。 ... [详细]
  • 本文探讨了Java编程的核心要素,特别是其面向对象的特性,并详细介绍了Java虚拟机、类装载器体系结构、Java类文件和Java API等关键技术。这些技术使得Java成为一种功能强大且易于使用的编程语言。 ... [详细]
  • 本文详细分析了JSP(JavaServer Pages)技术的主要优点和缺点,帮助开发者更好地理解其适用场景及潜在挑战。JSP作为一种服务器端技术,广泛应用于Web开发中。 ... [详细]
  • 网络运维工程师负责确保企业IT基础设施的稳定运行,保障业务连续性和数据安全。他们需要具备多种技能,包括搭建和维护网络环境、监控系统性能、处理突发事件等。本文将探讨网络运维工程师的职业前景及其平均薪酬水平。 ... [详细]
  • Hadoop入门与核心组件详解
    本文详细介绍了Hadoop的基础知识及其核心组件,包括HDFS、MapReduce和YARN。通过本文,读者可以全面了解Hadoop的生态系统及应用场景。 ... [详细]
  • 数据库内核开发入门 | 搭建研发环境的初步指南
    本课程将带你从零开始,逐步掌握数据库内核开发的基础知识和实践技能,重点介绍如何搭建OceanBase的开发环境。 ... [详细]
  • 本文探讨了MariaDB在当前数据库市场中的地位和挑战,分析其可能面临的困境,并提出了对未来发展的几点看法。 ... [详细]
  • 探讨架构师在项目中应如何平衡对产品的关注和对团队成员的关注,以实现最佳的开发成果。 ... [详细]
  • 2018年3月31日,CSDN、火星财经联合中关村区块链产业联盟等机构举办的2018区块链技术及应用峰会(BTA)核心分会场圆满举行。多位业内顶尖专家深入探讨了区块链的核心技术原理及其在实际业务中的应用。 ... [详细]
  • 本文详细介绍如何通过修改配置文件来隐藏Apache、Nginx和PHP的版本号,从而增强网站的安全性。我们将提供具体的配置步骤,并解释这些设置的重要性。 ... [详细]
author-avatar
我是阿冫轶
这个家伙很懒,什么也没留下!
PHP1.CN | 中国最专业的PHP中文社区 | DevBox开发工具箱 | json解析格式化 |PHP资讯 | PHP教程 | 数据库技术 | 服务器技术 | 前端开发技术 | PHP框架 | 开发工具 | 在线工具
Copyright © 1998 - 2020 PHP1.CN. All Rights Reserved | 京公网安备 11010802041100号 | 京ICP备19059560号-4 | PHP1.CN 第一PHP社区 版权所有