核心概念

  • 纠删码(Erasure Coding):MinIO 使用 Reed-Solomon 纠删码,将对象分割为数据块和奇偶校验块,分布在多个驱动器上,以确保容错性。例如,在 16 驱动器设置中,数据可以被分割为 12 个数据块和 4 个奇偶校验块,即使最多 4 个驱动器发生故障,系统仍能够重建数据。

  • 存储池和纠删集:MinIO 存储池是逻辑上对存储资源的分组,每个池由多个节点组成,共享存储和计算能力。在一个存储池内,驱动器会被自动组织成一个或多个 纠删集

    • 数据分布:当一个对象被存储时,它会被分割为数据分片和奇偶校验分片,并分布到同一个纠删集内的不同驱动器上。
    • 冗余模型:纠删集构成数据冗余的基本单元,基于配置的数据信息与奇偶校验分片的比例确保系统的健壮性。
    • 可扩展性:一个 MinIO 存储池可以包含多个纠删集,新写入的数据总是被存储到具有最多可用容量的纠删集中。