🏠 首页›第一梯队 · 决胜核心 · 第 8 小时 · 数据库设计基础知识

NoSQL 与分布式数据库

选择 2~5 分案例 25 分(试题一常客)
📄 教材出处 · 第 8 小时《数据库》 (书第 68–86 页) ▸ 查看原文摘录 打开教材 PDF ↗
第 68 页 ↗数据库设计基础知识 8.0 章节考点分析 主要学习数据库基础概念、关系数据库、数据库设计、应用程序与数据库交互、NoSQL 数据库等内容。
第 69 页 ↗本小时介绍数据库技术 的发展历程以及数据模型、主流的关系数据库、数据库设计的步骤与方法、新型数据库 NoSQL。
第 70 页 ↗数据控制功能包括:保证护具的安全性和完整性以及并发控制的能力。
第 71 页 ↗数据库设计基础知识 63 表8.1 数据库的三级模式 概念模式 外模式 内模式 是数据库中全体数据的逻 又叫子模式或用户模式,用以描述用户 是数据物理结构和存储方式的描 辑结构和特征的描述,是所 看到或使用的那部分数据的逻辑结构, 述,是数据在数据库内部的表示方 有用户的公共数据视图 用户根据外模式用数据操作语句或应用 式,定义所有的内部记录类型、索 程序去操作数据库中的数据 引和文件的组织方
第 72 页 ↗即填充左侧关系中所有与右侧关系中任一元 完全外连接 组都不匹配的元组,并填充右侧关系中所有与左侧关系中任一元组都不匹配的 元组,将产生的新元组加入自然连接的结果中 3.关系数据库设计基本理论 (1)函数依赖:设R(U)是属性U上的一个关系模式,X和Y是U的子集,r是R的任一关 系,如果对于r中的任意两个元组u和v,只要有u[X]=v[X],就有u[Y]=v[Y],则称X函数决定Y, 或称Y函数依赖
第 73 页 ↗数据库设计基础知识 65 模式的主码是学号+课程号,(学号,课程号)→成绩是完全函数依赖。

知识点目录(共 3 项)

  1. CAP 理论(三选二)与 BASE 原则
  2. NoSQL 四大类型:键值 Redis / 列族 HBase / 文档 MongoDB / 图 Neo4j
  3. Redis 数据类型与持久化机制(RDB / AOF)

知识点详解

一、CAP 理论(必考)

CAP 定理(Eric Brewer 提出):一个分布式系统中,一致性(C)、可用性(A)、分区容忍性(P)三者最多只能同时满足两个。

CAP CA 放弃分区容忍 传统单机数据库 CP 放弃可用性 强一致系统:HBase 等 AP 放弃强一致性,多数 NoSQL 的选择 C(Consistency)一致性:所有数据备份在同一时刻具有同样的值 . · C 一致性:所有备份同一时刻同值 · A 可用性:每个请求都有响应 · P 分区容忍性:部分故障/消息丢失   系统仍能继续运作 分布式系统中 P 必须实现(网络必然 有故障),因此实际是在 C 与 A 之间权衡
图 1-24 CAP 理论三选二(依据 CAP 定理及教材相关内容绘制)

BASE 理论(对 CAP 中 AP 的延伸,核心思想:无法做到强一致时,采用适当方式达到最终一致性):

对比记忆:ACID 是传统数据库的强一致性方案;BASE 是大型分布式系统的方案——牺牲强一致性换取高可用与可扩展性。CAP 的正确说法是"没有系统能同时保证 C、A、P"。

二、NoSQL 四大类型(必考)

类型特点典型产品
列式存储数据库应对分布式存储的海量数据,键仍存在,指向多个列Cassandra、HBase、Riak
键值对存储数据库优势是简单、易部署;缺点是只对部分值查询或更新时效率低Redis、Tokyo Cabinet、Voldemort、Oracle BDB
文档型数据库处理网页等复杂数据时比键值对查询效率更高CouchDB、MongoDB、SequoiaDB
图数据库适合存储图建模的数据:社交网络、生物信息网络、交通网络Neo4j、InfoGrid、Infinite Graph

NoSQL 特征:易扩展、大数据量、高性能、灵活的数据模型、高可用。NoSQL 整体框架(自下而上):数据持久层 → 数据分布层 → 数据逻辑模型层 → 接口层。适用情况:数据模型简单、需灵活性强的 IT 系统、对性能要求高、不需要高度的数据一致性。

考法:"社交网络/关系图谱→图数据库 Neo4j";"海量分布式→列式 HBase/Cassandra";"简单易部署→键值 Redis";"网页复杂结构→文档 MongoDB";NoSQL 四特征排序/框架层次填空。