分布式数据库(笔记)

news2024/11/25 7:47:54

课程链接: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的并发控制

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

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.coloradmin.cn/o/1024168.html

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈,一经查实,立即删除!

相关文章

Responder

环境准备 操作系统:Kali Linux工具:responder,john,evil-winrm PS:输入以下命令解决靶场环境无法打开问题 #echo "<靶机IP> unika.htb">>/etc/hostsresponder工具 [Kali 官网] 手册地址:https://www.kali.org/tools/responder/ 摘要: This package c…

ubuntu 里根文件系统的扩容,/dev/ubuntu-vg/ubuntu-lv 文件系统扩充到整个分区

笔者安装了ubuntu服务器版软件&#xff0c;由于系统安装的时候没有划分好磁盘分区&#xff0c;只采用了1000G固态硬盘的 200G来安装系统&#xff0c;安装完毕后&#xff0c;用df -h 命令查看如下&#xff1a; 根文件系统仅占用了 196G&#xff0c;而本身硬盘的尺寸为1000G&…

C++笔记之std::forward

C笔记之std::forward 文章目录 C笔记之std::forward例一例二 std::forward的作用是在C中帮助实现完美转发&#xff08;perfect forwarding&#xff09;&#xff0c;它将传递给它的参数以原始类型和引用的方式传递给下一个函数&#xff0c;保持参数的值类别&#xff08;lvalue或…

爬虫 — Js 逆向

目录 一、概念1、爬虫2、反爬虫3、加密解密4、加密5、步骤 二、常用加密方式1、加密方式2、常见加密算法3、JS 中常见的算法4、MD5 算法4.1、MD5 加密网站4.2、特点 5、DES/AES 算法6、RSA 算法7、base64 算法 三、环境配置1、node.js 环境配置2、PyCharm 环境配置 一、概念 1…

【AI视野·今日NLP 自然语言处理论文速览 第三十六期】Tue, 19 Sep 2023

AI视野今日CS.NLP 自然语言处理论文速览 Tue, 19 Sep 2023 (showing first 100 of 106 entries) Totally 106 papers &#x1f449;上期速览✈更多精彩请移步主页 Daily Computation and Language Papers Speaker attribution in German parliamentary debates with QLoRA-ada…

xp 系统 安装 python 2.7 ide pip

1 下载python http://www.python.org/ftp/python/ python-2.7.2.msi 安装完需要设置环境变量 2 下载 setuptools setuptools-0.6c11.win32-py2.7.exe https://pypi.tuna.tsinghua.edu.cn/simple/setuptools/ 3 下载 pip &#xff0c;python 2.7 最高支持 pip 20.3.4 https:…

安全远程访问工具

什么是安全远程访问 安全远程访问是指一种 IT 安全策略&#xff0c;允许对企业网络、任务关键型系统或任何机密数据进行授权、受控访问。它使 IT 团队能够根据员工和第三方的角色和工作职责为其提供不同级别的访问权限&#xff0c;安全的远程访问方法可保护系统和应用程序&…

C语言指针讲解-------进阶篇(下篇)

目录 六.函数指针数组 七.指向函数指针数组的指针 八.回调函数 冒泡排序 与 qsort 函数 冒泡排序 qsort函数 六.函数指针数组 函数指针数组---数组存放的是函数 ---指针存放的是函数的地址 #define _CRT_SECURE_NO_WARNINGS #include<stdio.h> int Add(int x, in…

TuyaLink 快速入门教程

通过本入门教程&#xff0c;大家能了解到如何在涂鸦 IoT 开发平台上使用 TuyaLink 完成智能设备接入。并通过 Java 程序&#xff0c;在 IntelliJ IDEA 中使用 TuyaLink 的 GitHub Demo 工程&#xff0c;对一个电工开关设备&#xff0c;实现基本的数据上报下发功能。 准备工作 …

分类预测 | Matlab实现GA-RF遗传算法优化随机森林多输入分类预测

分类预测 | Matlab实现GA-RF遗传算法优化随机森林多输入分类预测 目录 分类预测 | Matlab实现GA-RF遗传算法优化随机森林多输入分类预测效果一览基本介绍程序设计参考资料 效果一览 基本介绍 Matlab实现GA-RF遗传算法优化随机森林多输入分类预测&#xff08;完整源码和数据&…

细说GNSS模拟器的RTK功能(四)应用实例02

在之前的文章中&#xff0c;我们详细介绍了什么是RTK&#xff0c;并且用一个基于RTCM插件的RTK使用实例&#xff0c;来模拟RTCM的使用&#xff0c;本期文章我们将通过另一种方式——基于多实例&#xff0c;来模拟两个同步的射频信号。 基于多实例 硬件设置 首先&#xff0c;需…

elasticsearch bulk 批量操作

1&#xff1a;bulk 是 elasticsearch 提供的一种批量增删改的操作API bulk 对 JSON串 有着严格的要求。每个JSON串 不能换行 &#xff0c;只能放在同一行&#xff0c;同时&#xff0c; 相邻的JSON串之间必须要有换行 &#xff08;Linux下是\n&#xff1b;Window下是\r\n&#…

zaabix实现对nginx监控

本文使用监控模板net.tcp.listen[port]实现监听端口 实验环境&#xff1a; 首先搭建好zabbix-server &#xff0c;zabbix-agenthttps://mp.csdn.net/mp_blog/creation/editor/132622769?spm1001.2014.3001.9457 而后在zabbix-agent主机上下载一个nginx 登录zabbix网站创建主…

JavaWeb开发-06-SpringBootWeb-MySQL

一.MySQL概述 1.安装、配置 官网下载地址&#xff1a;https://dev.mysql.com/downloads/mysql/ 2.数据模型 3.SQL简介 二.数据库设计-DDL 1.数据库 官网&#xff1a;http:// https://www.jetbrains.com/zh-cn/datagrip/ 2.表&#xff08;创建、查询、修改、删除&#xff09; #…

vscode 插件配置推荐

VSCode汉化包插件 &#xff1a;Chinese (Simplified) (简体中文) Language Pack for Visual Studio Code VSCode汉化包&#xff0c;原始默认是英文的所以我们需要下一个中文插件。 VSCode自动补全标签 &#xff1a;Auto Close Tag Auto Close Tag 对Html或Xml文件自动创建结…

【小程序】实现经典2048小游戏

概述 经典小游戏2048&#xff0c;2048小游戏对于逻辑要求还是很有技术含量的&#xff0c;有兴趣的可以看看 详细 以前学习时写的小游戏2048&#xff0c;技术含量还是不错的&#xff0c;有兴趣的可以看看 2048已经封装好了&#xff0c;在主页面直接引入文件可以直接调用 演…

SQLite 学习笔记2 - 常用命令和示例

———————————————— 版权声明&#xff1a;本文为CSDN博主「网易智企」的原创文章&#xff0c;遵循CC 4.0 BY-SA版权协议&#xff0c;转载请附上原文出处链接及本声明。 原文链接&#xff1a;https://blog.csdn.net/netease_im/article/details/123741168 ————…

基于SpringBoot+Vue的健身房管理系统设计与实现

前言 &#x1f497;博主介绍&#xff1a;✌全网粉丝10W,CSDN特邀作者、博客专家、CSDN新星计划导师、全栈领域优质创作者&#xff0c;博客之星、掘金/华为云/阿里云/InfoQ等平台优质作者、专注于Java、小程序技术领域和毕业项目实战✌&#x1f497; &#x1f447;&#x1f3fb;…

ASEMI代理瑞萨R7S721021VCFP#AA0芯片介绍

编辑-Z 型号&#xff1a;R7S721021VCFP#AA0 特性&#xff1a; 指令缓存大小&#xff1a;32 KB 数据缓存大小*2:32 KB TLB条目&#xff1a;128个条目 Jazelle架构扩展&#xff1a;完整 采用NEON技术的媒体处理引擎&#xff1a;包括在内 FPU&#xff1a;包括 PTM接口&am…

gpt扣款失败,openai扣款失败无法使用-如何解决gpt扣款失败的问题?

gpt扣款失败&#xff0c;openai扣款失败无法使用。毕竟你花了钱却无法使用你所期待的服务&#xff0c;这种情况确实令人不快。但是&#xff0c; 为什么gpt扣款失败&#xff1f; 可能是由于支付问题导致的扣款失败。这包括信用卡额度不足、支付信息错误等等。如果你的支付信息…