软考高级 架构师 第三章 数据库2

1.数据库安全

1.1.措施

用户标识和鉴定:账号密码

存取控制:用户权限控制,如:增删改查

密码存储和传输:远程终端信息传输使用密码加密

视图的保护:对视图进行授权

审计:使用专门的文件或数据库,自动记录用户的操作,如日志

1.2.故障及解决方法

故障关系 故障原因 解决办法
事务本身的可预期故障 本身逻辑 在程序中设置Rollback
事务本身的不可预期故障 算术移除、违反存储保护 由DBMS的恢复子系统通过日志,撤销事务对数据库的修改,回退到事务初始状态
系统故障 系统停止运行 检查点法
介质故障 外存被破坏 使用日志重新做业务

1.3.数据库备份

静态备份(冷备份):在备份时不允许数据库任何操作。优点速度快,容易归档。缺点:只能提供恢复到某个时间点上的数据,不能做其他工作,不能按表恢复或按用户恢复。

动态备份(热备份):在转储期间可对数据库进行存取操作,转储和用户事务并发执行。优点:可在表空间或数据库文件级备份,数据库仍可使用,可达到秒级恢复;缺点:不能出错,否则后果严重,若热备份失败,所得结果几乎全部不可用。

完全备份:备份所有数据

差量备份:仅备份上一次完全备份之后变化的数据

增量备份:备份上一次备份之后变化的数据

日志文件:在事务处理过程中,DBMS把事务开始、结束以及对数据库的插入、删除和修改的每一次操作写入日志文件。一旦发生故障,DBMS的恢复子系统利用日志文件撤销事务对数据库的改变,回退到事务的初始状态。

2.分布式数据库

局部数据库位于不同的物理位置,使用一个全局DBMS将所有局部数据库联网管理

分片模式:

水平分片:将表水平记录存放在不同位置

垂直分片:将表垂直的列值存放在不同位置

分布透明性:

分片透明性:用户或应用程序不需要知道逻辑上访问的具体是如何分块存储的。

位置透明性:应用程序不关心数据存储的物理位置的改变。

逻辑透明性:用户或应用程序不需要知道局部使用的是哪种数据模式。

复制透明性:用户或应用程序不需要知道数据是从哪里复制过来的。

3.数据仓库

数据仓库是一个面向主题、集成的、非易失的且随时间变化的数据集合,用于支持决策管理。

3.1.特点

面向主题:按照一定的主题域进行组织的。

集成的:数据仓库的数据是在对原有分散的数据库数据抽取、清理的基础上经过系统加工、汇总和整理得到的,必须消除源数据中的不一致性,以保证数据仓库的信息是关于整个企业的一致的全局信息。

相对稳定的:数据仓库的数据主要用于决策分析用,所涉及到的操作主要是数据查询,一旦进入某个数据仓库,一般情况下将被长期保留。数据仓库一般有大量的查询,但是修改和删除比较少,通常只需要定期地刷新和加载。

反应历史变化:数据仓库中地数据通常包含历史数据,记录了企业从过去某个时间点到目前各个阶段地信息。通过这些信息,可以对企业的发展历史和未来趋势做出定量分析和预测。

3.2.四个层次

数据源:数据仓库的基础,是整个系统的数据源泉

数据的存储与管理:是 整个数据仓库系统的核心

OLAP(联机分析)服务器:对分析需要的数据进行有效集成,按多维模型组织,以便进行多角度、多层次的分析,并发现趋势

前端工具:主要包括各种报表工具、查询工具、数据分析工具、数据挖掘工具以及各种基于数据仓库或数据集市的应用开发工具

3.3.技术-BI系统

BI系统四个阶段:数据预处理、建立数据仓库、数据分析和数据展现

数据预处理:ETL抽取、转换、加载

数据分析:一般采用OLAP和数据挖掘技术

4.反规范化技术

规范化设计之后,数据库设计者希望通过牺牲部分规范化来提高性能。

益处:降低连接操作的需求、降低外码和索引的数目,还能减少表的数量,提高查询效率

可能带来的问题:数据重复存储,浪费存储空间,可能会出现完整性问题,为了保证数据一致性,增加了数据维护的复杂性,会降低修改速度。

做法:

1、增加冗余列

2、增加派生列,派生是指这个值是可以计算出来的

3、重新组表,原本需要连表查询的数据组成一张表

4、水平分割表

5、垂直分割表

5.大数据

特点:大量化、多样化、价值密度低、快速化

大数据和传统数据对比:

维度 大数据 传统数据
数据量 PB及以上 GB或TB
数据分析需求 深度分析(关联分析、回归分析) 现有数据的分析与检测
硬件平台 集群平台 高端服务器

处理大数据一般使用集成平台,称为大数据处理系统,其特征为:高可拓展性、高性能、高度容错、支持异构环境、较短的分析延迟、易用且开放的接口、较低成本、向下兼容

6.SQL语言

不记录

6.1.例题:

答案:C A D B

相关推荐
摸鱼仙人~39 分钟前
Redis 数据结构全景解析
数据结构·数据库·redis
t198751282 小时前
解决MySQL删除/var/lib/mysql下的所有文件后无法启动的问题
数据库·mysql·adb
大佐不会说日语~6 小时前
Redis高频问题全解析
java·数据库·redis
会飞的灰大狼6 小时前
初识数据库
数据库
旋风菠萝8 小时前
JVM易混淆名称
java·jvm·数据库·spring boot·redis·面试
AWS官方合作商8 小时前
Amazon RDS for MySQL成本优化:RDS缓存降本实战
数据库·mysql·aws
77qqqiqi9 小时前
解决Property ‘sqlSessionFactory‘ or ‘sqlSessionTemplate‘ are required报错问题
java·数据库·微服务·mybatis·mybatisplus
眺望电子-ARM嵌入式9 小时前
技术笔记 | Ubuntu 系统 OTA 升级全流程详解
数据库·postgresql·php
程序猿小D10 小时前
Java项目:基于SSM框架实现的校园活动资讯网管理系统【ssm+B/S架构+源码+数据库+毕业论文+远程部署】
java·数据库·mysql·spring·毕业设计·ssm框架·校园活动
数据要素X10 小时前
【数据架构08】数字化转型架构篇
大数据·数据库·数据仓库·架构·数据库架构