接下来谈谈资料冗余的策略
最简单最好管理的冗余就是完完全全的复制一份在别的地方,就是我们经常说的备份,把重要的资料备份进去随身硬碟
云端的储存也会用同样的方法,如果复制两份,一台机器挂掉的机率是1%,那麽两台机器同时挂掉的机率是0.01%,也就是99.99%,这就是俗话说的4个9的稳定度
但是当然,1TB的资料我们就要用2TB的空间去存,不但有点浪费空间,而且写入的时候要写双倍量,不过读的时候会比较快,可以两边同时读
还有另外一种策略是Partition,Parition就是把同一条数据分成不同等份然後放在不同机器上,这也是我们Lab的策略,什麽意思呢?假如有一条资料 - Apple,我们有三台server,所以我们可以分成三份,AP, pl和e分别存在三台server中
不过这样一来,如果一台server挂了,我们的资料也复原不了
所以有个东西叫做纠删码(Erasure Coding),他是一种储存技术的保护方法和提升网路传输可靠度的方法,只要在原本的资料加入大约33%长度的纠删码,并把资料平均分在四台机器,一台机器挂了还能复原所有数据
所以说
如果使用复制两份,我们需要200%的容量,挂的机器只能一台
如果使用Partition,我们只需要133%的容量,挂的机器也只有一台
所以Partition比较省空间,当然他的缺点就是有点复杂,而且读完的时候还需要decoding,所以读的性能没有复制策略好
<<: 电子书阅读器上的浏览器 [Day20] 翻译功能 (II) 取得网页全文
>>: [Day05] TS:如何把物件型别的所有属性值取出变成 union type?试试 Indexed Access Types
今天要来解APCS的题目,这次是105年10月29的实作题第二题,那我们就开始吧! 题目 解答 a=...
Vuex的Action,相当於component内的methods,里面宣告并使用方法,但不会直接改...
前言 上一篇我们用 Python 简单的几行程序,就可以实践工厂方法设计模式,本篇继续讨论另一个设计...
今天我们在 PVE 内安装一下 Windows。 事前准备 Windows ISO(可以在 官网 下...
前言 [Day 24] LIFF ScanCode曾提过liff.scanCode()因技术问题,功...