知识库✳

教程与手册

全部教程
  1. 01Oracle 函数手册
  2. 02性能优化手册
  3. 03Linux Shell
  4. 04Oracle 学习与演练
  5. 05网络基础学习
  6. 06数据治理与管理
返回个人网站
数DAMA 数据管理教程从知识体系到落地实践
首页课程目录搜索
知识库

已完成 0 / 17 章

模块一 · 基础与框架

  • 01数据管理:把数据当作资产
  • 02数据处理伦理

模块二 · 治理与架构

  • 03数据治理
  • 04数据架构

模块三 · 建模与存储

  • 05数据建模和设计
  • 06数据存储和操作

模块四 · 安全与集成

  • 07数据安全
  • 08数据集成和互操作

模块五 · 内容与主数据

  • 09文件和内容管理
  • 10参考数据和主数据

模块六 · 分析与质量

  • 11数据仓库和商务智能
  • 12元数据管理
  • 13数据质量

模块七 · 前沿与组织

  • 14大数据和数据科学
  • 15数据管理成熟度评估
  • 16数据管理组织与角色期望
  • 17数据管理与组织变革
❖

DAMA 数据管理教程

返回个人网站知识库

内容框架参考《DAMA 数据管理知识体系指南(原书第 2 版)》,正文为教学改写; 建议对照原书与所在组织的实际场景学习。

以 Next.js 16 · Tailwind CSS v4 · HeroUI v3 装帧

06
  1. 首页
  2. 课程目录
  3. 数据存储和操作

第 6 章◆进阶◆建议 50 分钟◆模块三 · 建模与存储

数据存储和操作

理解数据库架构、ACID/BASE 与 CAP 的取舍,掌握容量、备份恢复、性能与变更管理的日常运营方法。

学完这一章,你应该能

  • 区分数据库操作支持与技术支持,明确 DBA 及相关角色职责
  • 根据业务特征选择集中式、分布式、联邦或云数据库架构
  • 用 ACID、BASE、CAP 解释不同系统的一致性取舍
  • 设计容量规划、备份恢复、性能管理与变更控制流程
  • 用存储、性能、操作、服务四类指标衡量运营水平

6.1DBA 的两条主线

数据存储与操作包括数据库操作支持和数据库技术支持。前者关注数据生命周期中的运行活动:环境搭建、获取、备份、恢复到处置,以及性能保障;后者关注技术选型、架构、安装、升级和疑难问题。DBA 是这两个方面的核心角色,但不是唯一角色。

  • 三项目标:全生命周期管理数据可用性、确保数据完整性、管理事务性能
  • 五条原则:识别自动化机会、构建时考虑重用、合理使用最佳实践、明确 SLA、项目早期就让 DBA 参与
  • 角色分工:生产 DBA、应用程序 DBA、过程/开发 DBA、网络存储管理员(NSA)
  • 数据管理专员、架构师、网络与安全分析师也参与性能、保留与恢复规划

提示DBA 不该是项目最后才被叫来「建个库」的人。越早参与,越能避免模型、索引、备份和权限上的返工。

6.2数据库架构与一致性取舍

集中式把所有数据放在一套系统中,管理简单但存在单点风险;分布式通过多节点横向扩展,用软件复制与故障检测提供整体可用性;联邦数据库不复制数据,而是把多个自治数据库映射成一个逻辑整体;区块链以哈希链保证交易不可篡改;云平台则提供虚拟机镜像、数据库即服务(DaaS)和托管数据库等形态。

常见数据库架构
架构特点适用场景
集中式单一系统、统一管理访问受限、强一致、规模可控
分布式多节点横向扩展、自动故障处理大规模、高并发、海量数据
联邦式保留本地自治,映射为统一视图异构系统集成、主数据、虚拟化访问
区块链区块哈希链、不可篡改交易存证、合同、健康信息交换
云 / 虚拟化虚拟机镜像、DaaS、托管数据库弹性伸缩、降低运维负担

松耦合联邦由各组件提供联邦模式;紧耦合联邦由独立进程发布统一模式,不复制数据。

ACID、BASE 与 CAP
概念核心主张典型场景
ACID原子性、一致性、隔离性、持久性关系型 OLTP、金融交易
BASE基本可用、软状态、最终一致大规模互联网、社交媒体、大数据
CAP一致性、可用性、分区容错最多同时满足两项分布式系统设计取舍

CAP 不是让你放弃一项,而是提示在分区发生时必须在一致性与可用性之间做选择。

6.3选择与评估数据库技术

DBMS 选型会影响数据集成、应用性能和业务产能。评估既要看技术指标,也要看组织与供应商因素。全面投产前,先用小规模试点或概念验证(POC)验证成本与收益。

  • 没有一种数据库架构能同时满足所有需求;多数组织会同时运行多种数据库
  • 缺少事务能力的数据库不适合零售 POS 等要求强一致的场景
  • 培训与交叉培训要纳入预算,尤其是支持敏捷开发时
  • 技术管理可借鉴 ITIL 的过程模型:事件、问题、变更、配置管理
DBMS 评估维度
维度关注点
技术架构与复杂度、容量与速度、事务/分析类型、特殊功能、平台支持、扩展性、韧性
工具监控、备份、调优、开发支持工具是否成熟
成本许可、维护、计算与存储资源、总拥有成本(TCO)
组织风险偏好、人才储备、供应商声誉与支持策略、客户案例

6.4日常运营:容量、备份、性能与变更

运营的核心是把「不可用」和「数据丢失」的概率降到可接受水平。容量要提前规划,备份要能恢复,性能要用 SLA 约束,变更要可回退。任何一项缺失,都会在事故中放大。

  1. 01理解需求:估算首年容量与未来增长(含索引、日志、镜像),识别使用高峰与访问要求
  2. 02规划业务连续性:按数据库重要性排序恢复优先级,制定并演练恢复计划
  3. 03备份:按 SLA 约定频率,全量 + 增量 + 事务日志,异地保存,定期做恢复测试
  4. 04创建与配置环境:开发、测试、UAT、预生产、生产等多环境,配置审计与访问控制
  5. 05管理性能:设定 SLA,监控可用性与响应时间,定位慢查询、不良代码、资源争用与过载
  6. 06变更管理:所有变更脚本化、先在低阶环境验证、经审批后实施,并准备回退方案

提示不可读的备份比没有备份更糟:它让你误以为有退路。恢复测试不是可选项,而是备份方案的一部分。

6.5治理与度量

存储治理包括度量、信息资产跟踪、数据审计与有效性验证。度量不是为了好看,而是为了发现趋势、支撑容量与 SLA 决策。许可与合同也要纳入治理,否则会带来财务与法律风险。

  • 定期审计许可、支持费用与租赁协议,评估过时、过保或昂贵的技术
  • 数据审计检查存储是否符合合同与方法要求;数据验证检查质量与可用性
  • 变更要可记录、可审计、可回退;生产变更与模型变更应建立关联
四类运营度量
类别指标示例
存储数据库类型与数量、容量、已用存储、存储容器数量、队列长度
性能事务频率与数量、查询性能、API 服务性能
操作数据检索时间、备份大小、数据质量评估、可用性
服务问题提交/解决/升级数量、平均解决时间、SLA 达成率

指标应与数据架构师、数据质量团队共同确定,避免只由运维视角定义。

练习

4 题 · 先自己写,再展开对照

提示POS 要求交易立即一致;社交分析更看重可用与规模。

参考答案

POS 系统选 ACID:
- 交易必须原子、持久、隔离,不能出现「扣款成功但订单未生成」;
- 在网络分区时,宁可牺牲部分可用性,也要保证一致性;
- 这是 CAP 中偏向 C 的选择。

社交媒体分析平台更适合 BASE:
- 允许数据短暂过期,最终一致即可;
- 分区与节点故障时仍要保持可用;
- 通过软状态与异步复制换取规模与弹性;
- 这是 CAP 中偏向 A 与 P 的选择。

关键不是哪个更先进,而是业务能否接受短暂不一致,以及故障时的损失由谁承担。

自评要点

  • 两个场景选择正确
  • 用 CAP 解释一致性与可用性的取舍
  • 落到业务损失,而非技术偏好

提示备份的价值只在能恢复时成立;考虑 RPO、RTO、异地与演练。

参考答案

风险:
- 备份可能损坏、不完整或无法读取,事故时才发现没有退路;
- 不知道恢复需要多长时间,无法满足业务连续性要求;
- 备份与生产在同一位置,灾难时一起丢失;
- 没有明确恢复优先级,关键系统可能最后才恢复。

最低保障:
1)与业务约定 RPO(可容忍的数据丢失量)和 RTO(可容忍的恢复时间);
2)全量 + 增量 + 事务日志,按 SLA 频率执行,异地保存;
3)定期恢复测试,记录实际恢复时间与问题;
4)按数据库重要性排序恢复顺序,形成书面计划并定期评审;
5)变更前确认可回退,保留回退所需备份与脚本。

自评要点

  • 指出不可读/未测试备份的风险
  • 提到 RPO/RTO
  • 包含异地、演练、优先级与回退

提示从可用性、SQL、资源争用、负载与容量逐层排查。

参考答案

1)先确认范围:是所有库、单库、单类查询,还是特定时段?可用性是否正常?
2)看等待与瓶颈:CPU、内存、I/O、锁、网络,区分资源不足还是争用。
3)查 SQL:慢查询、缺索引、执行计划变化、隐式转换、全表扫描、不良代码。
4)查负载:批处理与在线交易是否重叠,是否可错峰;连接池与并发是否合理。
5)查容量:数据量增长、分区是否失效、统计信息是否过期、归档是否及时。
6)查配置与架构:应用与数据库是否争抢资源、是否过载、是否需要读写分离或分区。
7)再决定措施:优化 SQL/索引、调整批处理窗口、归档历史数据、扩容或重构。

「加内存」只有在确认内存是瓶颈时才有效,否则可能掩盖真正的问题。

自评要点

  • 排查顺序由范围到根因
  • 覆盖 SQL、锁、负载、容量、配置
  • 不直接跳到扩容

提示可重复、可审计、可回退;开发、测试、UAT、生产逐级验证。

参考答案

原因:
- 手工操作不可重复、易出错,无法审计;
- 低阶环境可暴露语法、权限、性能与依赖问题;
- 脚本化便于版本控制、代码评审和自动化;
- 事故时可快速回退,缩短恢复时间。

最小控制集:
1)变更申请与审批(谁、为什么、影响范围);
2)版本化脚本与代码评审;
3)在开发/测试/UAT 逐级验证;
4)备份与回退方案;
5)变更窗口与业务通知;
6)实施记录、验证步骤与结果;
7)变更后监控与复盘。

自评要点

  • 解释脚本化与低阶验证的价值
  • 控制集覆盖审批、验证、回退、记录
  • 提到审计与版本控制

本章对应《DAMA 数据管理知识体系指南(原书第 2 版)》第 6 章。正文为教学改写,建议对照原书与所在组织的实际场景阅读。

← 上一章

数据建模和设计

下一章 →

数据安全