• 分布式数据库(笔记)


    课程链接:015_数据库系统的用户接口以及SQL语言(一)_哔哩哔哩_bilibili

    1、分类

    DDB:物理上分散,逻辑上集中

    特点:

    • 有统一的全局模式
    • 靠分布式数据库管理系统实现 DDBMS
    • 分布在网络的不同节点上

    优点:

    • 具有局部自治性
    • 灵活性高(可以在多个节点上有相同副本)
    • 系统成本低(方便加节点)
    • 高效率(满足本地的日常存取需求90%,10%通过其他网络)
    • 并行性

    缺点:

    • 难以集成多个已有的数据库(分布式数据库最好从头开始)
    • 设计、实现、应用、维护复杂

    分布式数据库存在的问题:

    • 查询优化,减少网上的数据传输量
    • 并发控制,考虑网络的全局冲突
    • 恢复机制,数据如何保持一致(转账)(故障组合)
    • 数据分布问题,如何切割数据

    FDBS:物理上分散,逻辑上分散 (联邦式数据库)

    • 多个已有数据库做集成

    2、数据分布

    数据分布策略

    • 集中式:分布式系统,数据集中存放(特例)
    • 划分式:数据切割,存在不同的节点,节点之间数据不重复
    • 全复制:网络每个节点数据库都是完整数据(适合只读数据库,更新要全部更新)
    • 混合式:上面方式的混合(按照应用需要放数据,可以重复、可以划分)

    数据分布单元

    • 关系单元(粒度粗)
    • 裂片单位
      • 水平分割(元组)
      • 垂直分割(属性)
      • 混合方式:水平+垂直

    数据分割准则

    • 保证数据完整性
    • 可重构性
    • 不相交性(水平分割时需要满足)

    数据分布带来的问题

    (前三个是DDBMS问题,最后是数据库设计问题)

    • 多副本一致性问题(要考虑节点故障情况)
    • 分布一致性问题(保证裂片的不相交)
    • 查询语句转换(把用户查询转化成对裂片查询,副本选择)
    • 数据库分布方案、裂片设计

    3、联邦式数据库

    • 采用松耦合方法,相互独立、自治,允许参与耦合的数据库都保持自己的数据模式不变,
    • 没有统一的全局模式
    • 成员之间规定相互之间的输入、输出模式
      • FS是联邦模式数据映射,包括输入输出模式 FS=CS+IS
      • CS 是输出模式,IS 是输入模式
      • ES 是其他数据库返回回来的数据,需要转化为IS

    4、DDBMS的查询优化

    • 优化目标:减少网络上的数据传输
    • 代数优化:关系运算(与关系数据库一样)
    • 操作优化:索引、物理存储结构,还要做转换(针对物理裂片),得到全局执行计划

    例子:R2数据量少,那么把R2传送到R1

    5、DDBMS的恢复机制

    • 保证ACID,事务准则 2pc,要么同时提交,要么同时上报

    6、DDBMS的并发控制

    • 单个节点不能冲突,系统全局也不能冲突
    • 全局死锁问题

  • 相关阅读:
    mysql【力扣】
    springboot医美容院预约管理系统java ssm
    Redis - 保证数据库与缓存数据一致性 - 如何保证两步都执行成功?
    Java InputStream.reset()方法具有什么功能呢?
    【校招VIP】前端计算机网络之webSocket相关
    互联网上有哪些适合上班族的副业?
    剑指 Offer 37. 序列化二叉树
    分布式.RPC-WebService三要素,三个规范, Soap协议
    C primer plus学习笔记 —— 8、结构体
    .NET应用系统的国际化-多语言词条服务
  • 原文地址:https://blog.csdn.net/hlllllllhhhhh/article/details/133043150