分布式是写出来的(五)

数据冗余策略

RS(Reed Solomon Coding)纠删码

在存储系统中,需要采用数据冗余技术来保证数据的可靠性,相比使用多副本复制机外,使用纠删码能够以更小的数据冗余度获得更高的数据可靠性。
RS纠删码将原文件分成n个数据块,同时为这n个数据块生成m个校验块,而能够容忍最多丢失这(N+M)个块中的任意m个数据或者校验块。
但是重点是RS纠删码完成的是保证数据不丢失,但无法保证数据被篡改!这个就引出来一些分布式算法(Raft),暂时是这样理解的。如果有问题后期再更改

数据冗余是指在存储和传输过程中,出了实际需要的数据,还存在额外的数据进行校验。(额外的数据可以是一个备份,也可以是校验完毕的数据)

ECC(Error Checking and Correcting)

ECC内存,即应用了能够实现错误检查和纠正技术(ECC)的内存条。一般多应用在服务器及图形工作站上,这将使整个电脑系统在工作时更趋于安全稳定。ECC是“Error Checking and Correcting”的简写,中文名称是“错误检查和纠正”。
ECC本身并不是一种内存型号,也不是一种内存专用技术,它是一种广泛应用于各种领域的计算机指令中,是一种指令纠错技术。它的英文全称是“Error Checking and Correcting”,对应的中文名称就叫做“错误检查和纠正”,从这个名称我们就可以看出它的主要功能就是“发现并纠正错误”,它比奇偶校正技术更先进的方面主要在于它不仅能发现错误,而且能纠正这些错误,这些错误纠正之后计算机才能正确执行下面的任务,确保服务器的正常运行。

RAID 1

RAID 1通过磁盘数据镜像实现数据冗余,在成对的独立磁盘上产生互 为备份的数据。当原始数据繁忙时,可直接从镜像拷贝中读取数据,因此RAID 1可以提高读取性能。RAID 1是磁盘阵列中单位成本最高的,但提供了很高的数据安全性和可用性。当一个磁盘失效时,系统可以自动切换到镜像磁盘上读写,而不需要重组失效的数据。
在这里插入图片描述

拓展阅读

分布式系统的一致性

由于异常的存在,分布式存储系统设计时往往会将数据冗余存储多份,每一份称为一个副本(replica/copy)。这样,当某一个节点出现故障时,可以从其他副本上读到数据。可以这么认为,副本是分布式存储系统容错技术的唯一手段。由于多个副本的存在,如何保证副本之间的一致性是整个分布式系统的理论核心。

分布式存储系统多个副本之间的数据一致性,有强一致性,弱一致性,最终一致性,因果一致性,顺序一致性。

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

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

相关文章

java在acm中的一些应用

这两天遇到了一些关于大数据处理的题目,发现Java对于这方面的优势很大。最重要的是代码量小了。于是针对这两天对Java的摸索,写一篇日志。记录一下针对ACM来说常用的Java方面的东西。1、输入首先要想输入需要先包括:[java] view plaincopyimp…

Codeforces 55D Beautiful Number (数位统计)

把数位dp写成记忆化搜索的形式,方法很赞,代码量少了很多。 下面为转载内容: a positive integer number is beautiful if and only if it is divisible by each of its nonzero digits. 问一个区间内[l,r]有多少个Beautiful数字 范围9*…

埃拉托斯特尼筛法 快速查找素数

埃拉托斯特尼筛法快速查找素数时间限制&#xff1a;1000 ms | 内存限制&#xff1a;65535 KB难度&#xff1a;3描述现在给你一个正整数N&#xff0c;要你快速的找出在2.....N这些数里面所有的素数。输入给出一个正整数数N(N<2000000)但N为0时结束程序。测试数据不超过100组…

教主们:虽然这道题我不会,但Ac还是没问题的。

wywcgs&#xff1a;亦称Lord Wu&#xff0c;俗名吴垠&#xff0c;2009级厦门大学智能科学与技术学院研究生&#xff0c;本科就读于哈尔滨工业大学。因其深厚的算法功底与独到的思维方式&#xff0c;被尊为“吴教主”&#xff0c;至今声威犹存。2006年起参加ACM/ICPC竞赛&#x…

引用 Map 数据结构的排序问题

用过map吧&#xff1f;map提供一个很常用的功能&#xff0c;那就是提供key-value的存储和查找功能。例如&#xff0c;我要记录一个人名和相应的存储&#xff0c;而且随时增加&#xff0c;要快速查找和修改&#xff1a; 岳不群&#xff0d;华山派掌门人&#xff0c;人称君子剑 …

程序猿不能错过的十部电影

不同的行业领域中很多时候都分享着共同的思想和理念。比如&#xff0c;大量的计算机编程中涉及到的概念都被运用到了电影里。有些概念出现在电影里后变得如此之酷&#xff0c;甚至反过来能帮助我们程序员更好的理解这些概念。下面就是小编最喜欢的10大电影&#xff0c;它们都在…

goland远程调试Docker

开发环境 goland windows10 Docker centos IP:123.57.43.91 操作原理及流程 goland通过tcp/8080(应该选取2375&#xff0c;登录阿里云开启这个端口&#xff0c;这里临时采用)端口与docker-host通信&#xff0c; 发送docker指令&#xff0c;然后让linux执行&#xff0c;通过d…

紫书的训练计划——一点点来,坚持到底!

先做 第10章3 数论的一点补充。然后趁热温习 10.1 和10.2 &#xff08;可能会有重的题目&#xff09; &#xff08;期望&#xff0c;概率的题目还要过段时间回来补坑&#xff09;然后 第7、8.1&#xff0c;8.2 章做暴力求解和高效算法&#xff08;可以适当的加快步伐&#…

go设计模式思维导图

go设计模式思维导图

【转载】最短路径之Dijkstra算法详细讲解

&#xff11; 最短路径算法 在日常生活中&#xff0c;我们如果需要常常往返A地区和B地区之间&#xff0c;我们最希望知道的可能是从A地区到B地区间的众多路径中&#xff0c;那一条路径的路途最短。最短路径问题是图论研究中的一个经典算法问题&#xff0c; 旨在寻找图&#xf…

Intelij 添加php注释

没有methodParameters()) groovyScript("def result; def params\"${_1}\".replaceAll([\\\\[|\\\\]|\\\\s], ).split(,).toList(); for(i 0; i < params.size(); i) {result * param params[i] ((i < params.size() - 1) ? \\n:)}; return result…

为什么LeetCode过一段时间又不会了

怎么从这个迷宫的左上角走到右下角&#xff1f; 看起来好像很简单&#xff0c;花时间还是可以找得到答案。 看了答案之后可以很清楚&#xff0c;这是正解。 只有一个问题&#xff1a; 我怎么就没立刻想到&#xff1f; 当在看题解或者听别人讲授思路的时候&#xff0c;你就是…

148. 排序链表

148. 排序链表 给你链表的头结点 head &#xff0c;请将其按 升序 排列并返回 排序后的链表 。 示例 1&#xff1a; 输入&#xff1a;head [4,2,1,3] 输出&#xff1a;[1,2,3,4] 示例 2&#xff1a; 输入&#xff1a;head [-1,5,3,4,0] 输出&#xff1a;[-1,0,3,4,5] 示…

HDU 1874 畅通工程续 (Dijkstra , Floyd , SPFA, Bellman_Ford 四种算法)

畅通工程续 题目链接&#xff1a;http://acm.hdu.edu.cn/showproblem.php?pid1874 Problem Description 某省自从实行了很多年的畅通工程计划后&#xff0c;终于修建了很多路。不过路多了也不好&#xff0c;每次要从一个城镇到另一个城镇时&#xff0c;都有许多种道路方案可以…

vim如何自动补全,ycm配置

vimplus已经很完善了&#xff0c;现在安装已经很容易了。 git clone https://github.com/chxuan/vimplus.git ~/.vimplus cd ~/.vimplus ./install.sh Ubuntu配置vim 更新2018年11月8号 用了一段时间的Ubuntu 18简直太方便了。 三步操作全部配完&#xff01;&#xff01;&a…

Cake -- ACM解决方法

一次生日Party可能有p人或者q人参加,现准备有一个大蛋糕.问最少要将蛋糕切成多少块(每块大小不一定相等),才能使p人或者q人出席的任何一种情况,都能平均将蛋糕分食. Input 每行有两个数p和q. Output 输出最少要将蛋糕切成多少块. Sample Input 2 3 Sample Output 4 …

【转载】ACM中矩阵乘法的应用

copied from 大神s blog 不要以为数学中的矩阵也是黑色屏幕上不断变化的绿色字符。在数学中&#xff0c;一个矩阵说穿了就是一个二维数组。一个n行m列的矩阵可以乘以一个m行p列的矩阵&#xff0c;得到的结果是一个n行p列的矩阵&#xff0c;其中的第i行第j列位置上的数等于前一…

线程控制(一)

1. 线程执行顺序问题 #include <stdio.h> #include <string.h> #include <pthread.h> #include <stdlib.h> #include <unistd.h>void *thread1(void *); void *thread2(void *);pthread_key_t key;void *thread1(void *arg){int a 1, *tsd &a…

C++学习笔记(一)

本文主要内容为C下的输入输出函数以及for循环中的C11新特性。 一、输入输出函数 1. cin cin 遇到 空格、回车、Tab结束输入&#xff0c; 且会将读到的空格、回车、Tab 丢弃&#xff0c;例&#xff1a; #include<iostream> using namespace std;int main(void) {char a…

关于Github的那点事儿

今天突然发现无法从本地git push到远程仓库了&#xff08;然而事实是网有点卡&#xff0c;github官网没更新过来&#xff0c;然而……ssh-key已经删了….&#xff09;&#xff0c;所以又重新添加ssh-key。 ssh-keygen -t rsa cat ~/.ssh/id_rsa.pub 将显示的内容粘贴到github…