系统架构设计师 - 数据库系统(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.mzph.cn/bicheng/31058.shtml

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

相关文章

2024-06-20力扣每日一题

链接&#xff1a; 2748. 美丽下标对的数目 **废话&#xff1a;**彩笔做题家回归&#xff0c;要开始找工作噜 题意 在数组里&#xff0c;按i<j规则取两个数字nums[i]和nums[j]&#xff0c;只要nums[i]的第一位数字和nums[j]的最后一位数字互质&#xff0c;则结果加一 解…

RX8025/INS5T8025实时时钟-国产兼容RS4TC8025

该模块是一个符合I2C总线接口的实时时钟&#xff0c;包括一个32.768 kHz的DTCXO。 除了提供日历&#xff08;年、月、日、日、时、分、秒&#xff09;功能和时钟计数器功能外&#xff0c;该模块还提供了大量其他功能&#xff0c;包括报警功能、唤醒定时器功能、时间更新中断功能…

访问控制列表(Access Control Lists,ACL)与哈希查找的爱恨情怨

访问控制列表&#xff08;Access Control Lists&#xff0c;ACL&#xff09;与哈希查找 什么是访问控制列表ACL&#xff1f;直接说ACL是干啥的ACL概念为什么需要ACLACL类型ACL匹配机制使用例子 哈希查找什么是哈希查找&#xff1f;哈希查找的基本原理哈希查找的步骤 哈希查找在…

H3C防火墙抓包(命令行)

命令行 请按照如下步骤收集下设备的debug信息 1&#xff09; 创建一个空ACL 3XXX&#xff0c;写上两条明细rule&#xff0c;分别对应来回流量的源目地址 [FW]acl advanced 3XXX [FW-acl-ipv4-adv-3XXX]rule permit ip source x.x.x.x 0 destination y.y.y.y 0 [FW-acl…

js如何实现开屏弹窗

开屏弹窗是什么&#xff0c;其实就是第一次登录后进入页面给你的一种公告提示&#xff0c;此后再回到当前这个页面时弹窗是不会再出现的。也就是说这个弹窗只会出现一次。 <!DOCTYPE html> <html><head><meta charset"utf-8"><title>…

【绝对有用】C++ vector const函数和右值移动

std::vector 是 C 标准库中的动态数组&#xff0c;提供了许多方便的函数来操作数组。以下是 std::vector 的常用函数及其使用方法&#xff1a; 构造函数 vector()&#xff1a;默认构造函数&#xff0c;创建一个空的 vector。vector(size_t n)&#xff1a;创建一个包含 n 个默…

索引和深分页优化案例

一、初始状态没加索引 总数据100w左右 浅分页 查询10条需要1.5s左右 select * from timer_task where app hzhXtimer order by run_timer limit 0,10深分页查询10条需要1.7s左右 select * from timer_task where app hzhXtimer order by run_timer limit 100000,10看执…

视频采集概念

视频采集通常指的是将视频信号从视频源&#xff08;如摄像头、视频播放器等&#xff09;捕获并转换为数字格式&#xff0c;以便于计算机处理和存储。 步骤&#xff1a; 视频信号捕获&#xff1a;通过摄像头、网络摄像头、视频采集卡等设备将视频信号捕获。 信号转换&#xff…

【diffusers极速入门(三)】生成的图像尺寸与 UNet 和 VAE 之间的关系

先上结论&#xff0c;一句话总结即&#xff1a; SD 图片的输入\输出尺寸&#xff08;高或宽&#xff09; Unet 输入\输出的样本尺寸&#xff08;高或宽&#xff09; x VAE 的缩放尺寸 在使用生成模型时&#xff0c;特别是图像生成任务中&#xff0c;理解 UNet 和 VAE&#xf…

【CPP】选择排序:冒泡排序、快速排序

目录 1.冒泡排序简介代码分析 2.快速排序2.1霍尔版本简介代码分析 2.2挖坑版本2.3前后指针版本2.4非递归的快排思路代码 什么是交换排序&#xff1f; 基本思想&#xff1a;所谓 交换&#xff0c;就是根据序列中两个记录键值的比较结果来对换这两个记录在序列中的位置&#xff0…

[BUUCTF从零单排] Web方向 01.Web入门篇之粗心的小李解题思路

这是作者新开的一个专栏《BUUCTF从零单排》&#xff0c;旨在从零学习CTF知识&#xff0c;方便更多初学者了解各种类型的安全题目&#xff0c;后续分享一定程度会对不同类型的题目进行总结&#xff0c;并结合CTF书籍和真实案例实践&#xff0c;希望对您有所帮助。当然&#xff0…

对比分析:GBDT、XGBoost、CatBoost和LightGBM

对比分析&#xff1a;GBDT、XGBoost、CatBoost和LightGBM 梯度提升决策树&#xff08;GBDT&#xff09;是当前机器学习中常用的集成学习方法之一&#xff0c;它通过集成多个弱学习器&#xff08;通常是决策树&#xff09;来构建强学习器。GBDT在分类和回归任务中表现优异&…

微软Azure AI更新视频翻译和语音翻译 API 功能!企业适用TTS文本转语音

很高兴与大家分享 Azure AI 语音翻译产品套件的两个重大更新&#xff01; 分别是视频翻译和增强的实时语音翻译 API。 视频翻译&#xff08;批量&#xff09; 微软宣布推出视频翻译预览版&#xff0c;这是一项突破性的服务&#xff0c;旨在改变企业本地化视频内容的方式。 随着…

微博舆情分析系统可以继续完善的基于python 前端vue

微博舆情分析系统可以继续完善的&#xff0c;前后端分离&#xff0c;前端基于vue 后端基于python的flask可以说是非常的简洁&#xff0c;支持实时更新数据。界面如图 主要工作点体现在后端实时更新数据跟数据的处理方面上&#xff0c;后续有空会用hadoop来处理海量数据真…

刷题——找到对应数组目标值的下标

二分查找-I_牛客题霸_牛客网 方法一&#xff1a;遍历找目标值 int search(vector<int>& nums, int target) {// write code herefor(int i 0; i < nums.size(); i) {if(target nums[i]) {return i; // 返回目标值在数组中的索引}}return -1; // 如果找不到目…

C++语法07 程序中的除法和求余

程序中的除法 int / int int double / int double int / double double double / double double 规律总结 只要除号任意一边出现了double类型&#xff0c;结果就是double类型 只有除号两边都是int类型&#xff0c;结果才是int类型 这个规律也适用于加法减法和乘法 …

用国内首家文生软件平台生成一个整蛊拼图小游戏是什么体验?

前言&#xff1a; 众所周知&#xff0c;2023年是中国大模型发展的元年&#xff0c;以ChatGPT3.5为代表的初代语言大模型横空出世&#xff0c;直接掀起了一阵全球范围内的AIGC浪潮。 在中国大模型追星赶月的这一年&#xff0c;技术迭代日新月异&#xff0c;行业趋势不断变化&a…

IIS配置網站登錄驗證,禁止匿名登陸

需要維護一個以前的舊系統&#xff0c;這個系統在內網運行&#xff0c;需要抓取電腦的登陸賬號&#xff0c;作為權限管理的一部分因此需要在IIS配置一下

基于可视化设计的低代码开发分析与应用探讨

随着数字化时代的到来&#xff0c;越来越多的企业开始关注低代码开发。低代码开发作为一种快速应用开发模式&#xff0c;能够显著提高企业生产力。本文以可视化设计为核心&#xff0c;对低代码开发的原理、技术架构、应用场景及挑战进行分析&#xff0c;旨在为我国低代码产业的…

线性代数|机器学习-P16矩阵A的导数

文章目录 1. 概述2. 求 d A − 1 ( t ) d t \frac{\mathrm{d}A^{-1}(t)}{\mathrm{d}t} dtdA−1(t)​3. 求 d λ ( t ) d t \frac{\mathrm{d}\lambda(t)}{\mathrm{d}t} dtdλ(t)​3.1 A 和 A T A^T AT有相同的特征值3.2 特征向量单位化3.3 求 λ ( t ) \lambda(t) λ(t) 1. 概述…