软考笔记0820
非关系型数据库
所谓的数据库的关系是指数据之间的关系,数据之间的结构。非关系型数据库有着性能优势,比如redis。
关于web1 2 3的区别
-
web1时代是只读时代,cs架构,用户传播分享信息
-
web2是读写,用户可以写互动,社交网络时代。
-
web3是去中心化时代,分布式服务,区块链技术
分布式系统的数据库
cap理论
-
一致性 保证所有分布式终端有权限的用户都能看到改变后的数据,相同的数据。
-
可用性 系统再任何时候都要响应
-
分区性 某一些节点出现问题,系统还可以继续稳定运行
ACID 属性是用来描述数据库事务可靠性的四个特性,保证数据在出现错误、断电或其他异常情况下依然保持正确和一致。ACID 代表:
1. Atomicity(原子性)
- 定义:事务中的所有操作要么全部成功,要么完全不执行。
- 目的:防止部分更新,避免“做一半”的情况。
- 例子:转账时,要么 A 扣款和 B 收款都成功,要么都不发生,不能只扣款没到账。
2. Consistency(一致性)
- 定义:事务执行前后,数据库必须从一个一致状态转到另一个一致状态。
- 目的:保证所有约束、规则和数据完整性始终成立。
- 例子:转账前后,A+B 的总金额不变(不会出现钱丢失或凭空增加)。
3. Isolation(隔离性)
- 定义:多个事务并发执行时,彼此不能互相干扰。
- 目的:避免事务间读到不完整或临时的数据。
- 例子:当两个用户同时转账时,一个事务的中间结果不能被另一个事务看见。
- 常见隔离级别:读未提交、读已提交、可重复读、串行化(从低到高)。
4. Durability(持久性)
- 定义:一旦事务提交,它的修改就是永久的,即使系统崩溃也不会丢失。
- 目的:保证事务的结果安全落盘或写入可靠存储。
- 例子:银行转账成功后,即便服务器宕机,转账结果也必须能恢复出来。
总结
- ACID 是传统关系型数据库事务的金标准(MySQL、PostgreSQL、Oracle 等都保证 ACID)。
- 分布式数据库/NoSQL 有时会放宽 ACID 以提高性能和可扩展性,这时通常会用 CAP 定理 或 BASE 理论来描述其特性。

浙公网安备 33010602011771号