最近在看文件存储系统相关内容,在研究MinIO的时候,发现了一个词“擦除编码”。
原文里面解释:
```
MinIO以分布式方式在对象级别实现擦除编码,并且可以在硬件故障的情况下重建对象,而不会牺牲性能或导致停机
```
所以怀着对这个词的不理解,上网去一顿学习。
首先,这个擦除编码的目的,我是理解的,就是当存储硬件发生故障了,我们想把存储在上面的数据恢复出来
其次,实现原理是什么呢?
个人觉得就是像分布式的概念,分区容错性
先把数据分割成碎片,为了保证安全在里面揉进去冗余数据,形成新的存储数据,然后把数据存储到多个磁盘上(这些磁盘组成磁盘阵列RAID)
其中这些冗余的数据都是基于奇偶校验算法生成的数据,他们也分散在分组磁盘上,当一个磁盘发生故障时,奇偶校验数据可以将丢失的数据恢复或者重建到备用磁盘中。
擦除编码里面有个系列:RAID1,RAID5,RAID6,这些方法有些是牺牲空间(RAID1),有些是提高空间利用率,需要计算等,各有优势
目前就是了解到这个程度,先储备起来,后续用到再学....