系统架构设计师 - 数据库系统(1)

数据库系统

  • 数据库系统
    • 数据库模式 ★
    • 分布式数据库 ★★★
    • 数据库设计阶段 ★★
    • ER模型 ★
    • 关系模型 ★ ★
      • 结构
      • 约束条件
        • 完整性约束
    • 关系代数 ★ ★ ★ ★
      • 概述
      • 自然连接


大家好呀!我是小笙,本章我主要分享系统架构设计师 - 数据库系统(1)知识,希望内容对你有所帮助!!

数据库系统

数据库模式 ★

三种模式:外模式、概念模式、内模式

image-20240619125816416

关系的3种类型

  • 基本关系(通常又称为基本表或基表):实际存在的表,实际存储数据的逻辑表示
  • 查询表:查询结果对应的表
  • 视图表:由基表或其他视图表导出的表,本身不独立存储,数据库只存放它的定义,常称为虚表
    • 数据库视图,它一个虚拟表(逻辑上的表),其内容由查询定义(仅保存SQL查询语句)同真实的表一样,视图包含一系列带有名称的列和行数据。但是,视图并没有真正存储这些数据,而是通过查询原始表动态生成所需要的数据
    • 视图的优点
      1. 视图能简化用户操作
      2. 视图使用户能以多种角度看待同一数据
      3. 视图对重构数据库提供了一定程度的逻辑独立性
      4. 视图可以对机密数据提供安全保护
    • 物化视图:它不是传统意义上虚拟视图,是实体化视图,其本身会存储数据。同时当原始表中的数据更新时,物化视图也会更新

分布式数据库 ★★★

  • 数据独立性,除了数据的逻辑独立性与物理独立性外,还有数据分布独立性(分布透明性)
  • 集中与自治共享结合的控制结构,各局部的DBMS可以独立地管理局部数据库,具有自治的功能。同时,系统又设有集中控制机制,协调各局部DBMS的工作,执行全局应用
  • 适当增加数据冗余度,在不同的场地存储同一数据的多个副本,可以提高系统的可靠性和可用性,同时也能提高系统性能。(提高系统的可用性,即当系统中某个节点发生故障时,因为数据有其他副本在非故障场地上,对其他所有场地来说,数据仍然是可用的,从而保证数据的完备性
  • 全局的一致性、可串行性和可恢复性

分布式数据库管理系统 - 组成

  • LDBMS
  • GDBMS
  • 全局数据字典
  • 通信管理(CM)

分布式数据库管理系统 - 结构

  • 全局控制集中的 DDBMS
  • 全局控制分散的 DDBMS
  • 全局控制部分分散的 DDBMS

分布透明性

  • 分片透明性:是指用户不必关心数据是如何分片的,它们对数据的操作在全局关系上进行,即如何对用户是透明的
    • 水平分片
    • 垂直分片
    • 混合分片
  • 复制透明:用户不用关心数据库在网络中各个节点的复制情况,被复制的数据的更新都由系统自动完成
  • 位置透明性:是指用户不必知道所操作的数据放在何处,即数据分配到哪个或哪些站点存储对用卢是透明的
  • 局部数据模型透明性:是最低层次的透明性,该透明性提供数据到局部数据库的映像,即用户不必关心局部DBMS支持哪种数据模型、使用哪种数据操纵语言,数据模型和操纵语言的转换是由系统完成的。因此,局部映像透明性对异构型和同构异质的分布式数据库系统是非常重要的

例题

1、分布式数据库系统除了包含集中式数据库系统的模式结构之外,还增加了几个模式级别,其中 全局概念模式 定义分布式数据库中数据的整体逻辑结构,使得数据使用方便,如同没有分布一样

  • 分片模式
  • 全局外模式
  • 分布模式
  • 全局概念模式

2、在分布式数据库中包括分片透明、复制透明、位置透明和逻辑透明等基本概念,其中 逻辑透明 是指局部数据模型透明,即用户或应用程序无需知道局部场地使用的是哪种数据模型

  • 分片透明
  • 复制透明
  • 位置透明
  • 逻辑透明

3、分布式数据库两阶段提交协议中的两个阶段是指 表决阶段、执行阶段

  • 加锁阶段、解锁阶段
  • 获取阶段、运行阶段
  • 表决阶段、执行阶段
  • 扩展阶段、收缩阶段

数据库设计阶段 ★★

image-20240620125226222

例题

1、在数据库设计的 逻辑设计 阶段进行关系规范化

  • 需求分析
  • 概念设计
  • 逻辑设计
  • 物理设计

2、在数据库设计的需求分析阶段应完成包括 数据字典和数据流图 在内的文档

  • E-R图
  • 关系模式
  • 数据字典和数据流图
  • 任务书和设计方案

ER模型 ★

实体(Entity):实体是现实世界中可区分的对象,例如人、物、事件或概念等。在数据库设计中,实体通常表示为一个表格(关系),表格中的每一行即代表一个具体的实体实例,行中的每一列对应于实体的属性

属性(Attribute):实体具有的特征或者描述,用来描述实体的各个方面。属性也可以称为字段或列,对应于数据库表中的字段。例如,一个“人”的实体可以有“姓名”、“年龄”、“性别”等属性

关系(Relationship):不同实体之间的联系或关联,用来描述实体之间的相互作用或依赖关系。关系可以是一对一、一对多或多对多的。例如,“雇员”与“部门”之间可以有“属于”关系

  • 一对一(1:1)
  • 一对多(1:n)
  • 多对多(n:m)

关系模型 ★ ★

结构

示例:学生(学号、姓名、年龄等等)

  • 目或度:关系模式中属性的个数(学号、姓名、年龄等等的个数)
  • 候选键/码:唯一标识元组,且无冗余(候选键可以由多个属性组成,但是其中的属性不可以可有可无;一组关系模式中也可以有多个候选键)
  • 主键/码:候选键中任选一个
  • 主属性与非主属性:组成候选键的属性就是主属性,其他的就是非主属性
  • 外键/码:其他关系模式里的主键
  • 全码:关系模式的左右属性组合起来就是这个关系模式的候选码

约束条件

完整性约束
  • 实体完整性约束:规定基本关系的主属性不能取空值
  • 参照完整性约束:关系与关系间的引用,其他关系的主键或空值
  • 用户自定义完整性约束:应用环境决定(用户自定义,比如工资高于xx值算高薪)
  • 触发器:复杂的完整性约束(了解)

关系代数 ★ ★ ★ ★

概述

关系的本质就是二维表(属性列,元组行)

image-20240410123910177 image-20240410124319213

注意

  • 并集合会去重
  • 投影就是修改属性列个数
  • 选择就是筛选出记录

自然连接

  • 属性列:二者属性之和去重
  • 元组行:二者同名属性列相同
image-20240410125335671

性能方面考虑:自然连接优于笛卡尔积

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.rhkb.cn/news/354944.html

如若内容造成侵权/违法违规/事实不符,请联系长河编程网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

idea插件开发之在项目右键添加菜单

写在前面 本文看下如何在右键列表中增加菜单。 正戏 首先创建一个Action,要显示的menu选择ProjectViewPopupMenu,如下: action public class CAction extends AnAction {Overridepublic void actionPerformed(AnActionEvent e) { // …

OSPF 动态路由协议(思科、华为)

#交换设备 OSPF 动态路由协议 一、基本概念 1.中文翻译:开放式最短路径优先路由协议(open shortest path first),是一个内部网关路由协议(一个自治系统内)2.也称为:链路状态路由协议&#xf…

火爆全网 LLM大模型教程:从零开始构建大语言模型,git突破18K标星

什么!一本书的Github仓库居然有18.5k的星标!(这含金量不必多说) 对GPT大模型感兴趣的有福了!这本书的名字叫 《Build a Large Language Model (From Scratch)》 也就是 从零开始构建大语言模型! 虽然这是一…

常说的云VR是什么意思?与传统vr的区别

虚拟现实(Virtual Reality,简称VR)是一种利用计算机技术模拟产生一个三维空间的虚拟世界,让用户通过视觉、听觉、触觉等感官,获得与现实世界类似或超越的体验。VR技术发展历程可追溯至上世纪,经历概念提出、…

鸿蒙 Web组件的生命周期(api10、11、12)

概述 开发者可以使用Web组件加载本地或者在线网页。 Web组件提供了丰富的组件生命周期回调接口,通过这些回调接口,开发者可以感知Web组件的生命周期状态变化,进行相关的业务处理。 Web组件的状态主要包括:Controller绑定到Web组…

两行css 实现瀑布流

html <ul ><li><a href"" ><img src"05094532gc6w.jpg" alt"111" /><p>传奇</p></a></li><li><a href"" ><img src"05094532gc6w.jpg" alt"111"…

文件防篡改监控工具 - WGCLOUD全面介绍

WGCLOUD是一款优秀的运维监控软件&#xff0c;免费、轻量、高效&#xff0c;部署容易&#xff0c;上手简单&#xff0c;对新手非常友好 WGCLOUD部署完成后&#xff0c;点击菜单【文件防篡改】&#xff0c;可以看到如下页面 我们点击【添加】按钮&#xff0c;输入监控文件的信息…

深圳比创达EMC|EMC与EMI测试整改:保障电子设备电磁兼容性步骤

随着电子技术的迅猛发展&#xff0c;电子设备在我们的日常生活中扮演着越来越重要的角色。然而&#xff0c;这些设备在运行时产生的电磁干扰&#xff08;EMI&#xff09;以及对外界电磁干扰的敏感性&#xff08;EMC&#xff09;问题&#xff0c;不仅影响着设备本身的性能&#…

Windows电脑部署Jellyfin服务端并进行远程访问配置详细教程

文章目录 前言1. Jellyfin服务网站搭建1.1 Jellyfin下载和安装1.2 Jellyfin网页测试 2.本地网页发布2.1 cpolar的安装和注册2.2 Cpolar云端设置2.3 Cpolar本地设置 3.公网访问测试4. 结语 前言 本文主要分享如何使用Windows电脑本地部署Jellyfin影音服务并结合cpolar内网穿透工…

代理模式(静态代理/动态代理)

代理模式&#xff08;Proxy Pattern&#xff09; 一 定义 为其他对象提供一种代理&#xff0c;以控制对这个对象的访问。 代理对象在客户端和目标对象之间起到了中介作用&#xff0c;起到保护或增强目标对象的作用。 属于结构型设计模式。 代理模式分为静态代理和动态代理。…

[Mysql] 的基础知识和sql 语句.教你速成(上)——逻辑清晰,涵盖完整

目录 前言 上篇的内容概况 下篇的内容概况 数据库的分类 关系型数据库 常见的关系型数据库系统 非关系型数据库 1. 键值对数据库&#xff08;Key-Value Stores&#xff09; 特点&#xff1a; 常见的键值对数据库&#xff1a; 2. 文档数据库&#xff08;Document Store…

好用的linux一键换源脚本

最近发现一个好用的linux一键换源脚本&#xff0c;记录一下 官方链接 大陆使用 bash <(curl -sSL https://linuxmirrors.cn/main.sh)# github地址 bash <(curl -sSL https://raw.githubusercontent.com/SuperManito/LinuxMirrors/main/ChangeMirrors.sh) # gitee地址 …

Redis 网络模型

一、用户空间和内核空间 1.1 linux 简介 服务器大多采用 Linux 系统&#xff0c;这里我们以 Linux 为例来讲解&#xff0c;下面有两个不同的 linux 发行版&#xff0c;分别位 ubuntu 和 centos&#xff0c;其实发行版就是在 Linux 系统上包了一层壳。 任何 Linux 发行版&#…

RS-232协议详解:深入理解与实际应用

RS-232协议详解 RS-232协议&#xff0c;也称为推荐标准232&#xff0c;是一种用于串行通信的标准协议。它在计算机和外围设备之间的通信中广泛应用。本文将详细介绍RS-232协议的各个方面&#xff0c;包括其历史、工作原理、信号类型、连接方式、应用场景等。希望通过这篇文章&a…

如何使用React的lazy和Suspense来实现代码分割?

在React中&#xff0c;使用React.lazy和Suspense可以方便地实现组件的代码分割。代码分割是一种优化技术&#xff0c;它将代码拆分成多个包&#xff0c;然后按需加载这些包&#xff0c;从而加快应用的初始加载时间。下面是如何使用这两个API的基本步骤&#xff1a; 使用React.l…

软考初级网络管理员__网络单选题

1.某人的电子邮箱为 Rjspks163.com,对于Rjspks和163.com的正确理解为(2)&#xff0c;在发送电子邮件时&#xff0c;常用关键词使用中&#xff0c;(3)是错误的&#xff0c;采用的协议是(4)。若电子邮件出现字符乱码现象&#xff0c;以下方法中(5)一定不能解决该问题。 SNMP SM…

【安防天下】模拟视频监控系统——模拟监控系统的构成视频采集设备

文章目录 1 模拟监控系统的构成2 视频采集设备2.1 摄像机相关技术2.1.1 摄像机的工作原理2.1.2 摄像机的分类2.1.3 摄像机的主要参数 2.2 镜头相关介绍2.2.1 镜头的主要分类2.2.2 镜头的主要参数 1 模拟监控系统的构成 模拟视频监控系统又称闭路电视监控系统&#xff0c; 一般…

DB9母头接口定义485

在通信技术中&#xff0c;DB9接口广泛应用于串行通信&#xff0c;尤其是在RS232和RS485标准中。虽然DB9接口最常见于RS232通信&#xff0c;但通过适当的引脚映射&#xff0c;它也可以用于RS485通信。本文将详细介绍如何定义和使用DB9母头接口进行RS485连接。 DB9母头接口简介 …

这些帮助你成长的IOS应用,建议收藏

TrackIt TrackIt是一款功能丰富的任务清单、日程管理和习惯打卡应用&#xff0c;旨在帮助用户提高效率和专注力。通过这些功能&#xff0c;用户可以更好地规划时间和任务&#xff0c;从而实现个人目标和养成良好习惯。 在目标设定方面&#xff0c;SMART原则是一个常用的方法&a…

数据可视化实验五:seaborn绘制进阶图形

目录 一、绘制动态轨迹图 1.1 代码实现 1.2 绘制结果 二、使用seaborn绘制关系图 2.1 绘制散点图分析产品开发部已离职的员工的评分与平均工作时间 2.1.1 代码实现 2.1.2 绘制结果 ​编辑 2.2 基于波士顿房价数据&#xff0c;绘制房间数和房屋价格的折线图 2.2.1 代码…