当前位置: 首页 > news >正文

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

目录

一、数据库模式

        1、集中式数据库

        2、分布式数据库

二、数据库设计过程

        1、E-R模型

        2、概念结构设计

        3、逻辑结构设计

三、关系代数

        1、并交差

        2、投影和选择

        3、笛卡尔积

        4、自然连接


一、数据库模式

        1、集中式数据库

                三级模式:

                (1)外模式:用户模式-视图级

                (2)概念模式:模式-表级

                (3)内模式:存储模式-文件级

                两级映射:

                (1)外模式-概念模式映射:提高数据逻辑独立性

                (2)概念模式-内模式映射:提供数据物理独立性

        2、分布式数据库

                (1)数据独立性:除了数据的逻辑独立性与物理独立性外,还有数据分布独立性(分布透明性)。

                (2)集中与自治共享结合的控制结构:各局部的DBMS可以独立地管理局部数据库,具有自治功能。同时,系统又设有集中控制机制,协调各局部DBMS的工作,执行全局应用。

                (3)适当增加数据冗余度:在不同的场地存储同一数据的多个副本,可以提高系统的可靠性和可用性,同时也能提高系统性能。(提高系统的可用性,即当系统中某个节点发生故障时,因为数据有其他副本在非故障场地上,对其他所有场地来说,数据仍然是可用的,从而保证数据的完备性)。

                (4)全局的一致性、可串行性和可恢复性:可串行性指的是并行结果与某个串行序列结果一致。

                【分布透明性

                (1)分片透明性:分不分片,用户感受不到(不关心用户如何分布存储)。

                                分片模式分:

                                        · 水平分片:按记录

                                        · 垂直分片:按字段

                                        · 混合分片

                (2)位置透明性:数据存放在哪里,用户不用管(用户无需知道数据存放的物理位置)。

                (3)复制透明:不关心节点的复制情况。

                (4)局部数据模型透明性(逻辑透明):用户或应用程序无需知道局部场地使用的哪种数据模型。

                【两阶段提交协议2PC

                (1)2PC事物提交两个阶段

                        表决阶段,目的是形成一个共同决定

                        执行阶段,目的是实现这个协调者的决定

                (2)两条全局提交规则

                        只要有一个参与者撤销事务,协调者就必须做出全局撤销决定

                        只要所有参与者都同意提交事务,协调者才能作出全局提交决定

二、数据库设计过程

        【设计过程四步骤

        (1)需求分析

                        产出数据流图、数据字典和需求说明书

        (2)概念结构设计

                        产出E-R图

        (3)逻辑结构设计

                        产出关系模式,也就是二维表

        (4)物理设计

        1、E-R模型

        2、概念结构设计

                【集成的方法

                (1)多个局部E-R图一次集成。

                (2)逐步集成,用累加的方式一次集成两个局部E-R。

                【集成产生的冲突及解决办法

                (1)属性冲突:包括属性域冲突和属性取值冲突。(同一对象

                (2)命名冲突:包括同名异义和异名同义。(同一对象

                (3)结构冲突:包括同一对象在不同应用中具有不同的抽象,以及同一实体在不同局部E-R图中所包含的属性个数和属性排列次序不完全相同。

        3、逻辑结构设计

                【实体完整性约束】主键,唯一且非空。

                【参照完整性约束】外键,可以为空,否则就是其他的主键为外键。

                【用户自定义完整性约束】

                【触发器】对某个变化的数据,可以是表、字段等建立监听,一旦数据发生变化,做相应操作,可以做数据同步。可以解决复杂的数据一致性问题,安全性不是很强。

                【简单属性】不可再分的属性

                【复合属性】可再分的属性

                【派生属性】例:可以通过身份证号推导出具体年龄,那年龄就是身份证号的派生属性

三、关系代数

        1、并交差

        2、投影和选择

        3、笛卡尔积

                属性列数是二者只和,元组行数是二者乘积。

        4、自然连接

                 答案:A

http://www.lryc.cn/news/172315.html

相关文章:

  • Docker的相关知识介绍以及mac环境的安装
  • Android设计支持库
  • 【Java 基础篇】Java实现文件搜索详解
  • 会C++还需要再去学Python吗?
  • vue部分/所有内容全屏切换展示
  • 8.gec6818开发板通过并发多线程实现电子相册 智能家居 小游戏三合一完整项目
  • 角度回归——角度编码方式
  • 【C# Programming】值类型、良构类型
  • Linux Day18 TCP_UDP协议及相关知识
  • 【Java 基础篇】Java网络编程实时数据流处理
  • Oracle 和 mysql 增加字段SQL
  • 【脚本】 【Linux】循环执行命令
  • 快速用Python进行数据分析技巧详解
  • BD就业复习第二天
  • 大数据Flink(八十五):Window TVF 支持多维数据分析
  • css-边框原理教程
  • 【数据结构】时间、空间复杂度
  • Databend 开源周报第 111 期
  • iOS自动化测试方案(一):MacOS虚拟机保姆级安装Xcode教程
  • vue3 - Vue 项目处理GitHub Pages 部署后 _plugin-vue_export-helper.js 404
  • 一百八十一、Hive——海豚调度HiveSQL任务时当Hive的计算引擎是mr或spark时脚本的区别(踩坑,附截图)
  • Linux 隔离网段下端口转发
  • 【CDN和UDN】CDN和UDN技术特点以及使用场景
  • 【Linux】改变缓存路径、清理缓存
  • python+opencv寻找图片或视频中颜色进行追踪之HSV颜色处理
  • ubuntu 22.04 服务器网卡无IP地址
  • 基于SpringBoot的网上点餐系统
  • 浅谈xss
  • 悬崖边:企业如何应对网络安全漏洞趋势
  • MyBatis 动态 SQL、MyBatis 标签、MyBatis关联查询