更新時間:2023年03月15日13時56分 來源:傳智教育 瀏覽次數(shù):
MinIO 是一個非常輕量的服務,可以很簡單的和其他應用的結合使用,它兼容亞馬遜 S3 云存儲服務接口,非常適合于存儲大容量非結構化的數(shù)據(jù),例如圖片、視頻、日志文件、備份數(shù)據(jù)和容器/虛擬機鏡像等。
它一大特點就是輕量,使用簡單,功能強大,支持各種平臺,單個文件最大5TB,兼容 Amazon S3接口,提供了 Java、Python、GO等多版本SDK支持。
MinIO集群采用去中心化共享架構,每個結點是對等關系,通過Nginx可對MinIO進行負載均衡訪問。
那去中心化有什么好處呢?
在大數(shù)據(jù)領域,通常的設計理念都是無中心和分布式。Minio分布式模式可以幫助你搭建一個高可用的對象存儲服務,你可以使用這些存儲設備,而不用考慮其真實物理位置。
它將分布在不同服務器上的多塊硬盤組成一個對象存儲服務。由于硬盤分布在不同的節(jié)點上,分布式Minio避免了單點故障。如下圖:
Minio使用糾刪碼技術來保護數(shù)據(jù),它是一種恢復丟失和損壞數(shù)據(jù)的數(shù)學算法,它將數(shù)據(jù)分塊冗余的分散存儲在各各節(jié)點的磁盤上,所有的可用磁盤組成一個集合,上圖由8塊硬盤組成一個集合,當上傳一個文件時會通過糾刪碼算法計算對文件進行分塊存儲,除了將文件本身分成4個數(shù)據(jù)塊,還會生成4個校驗塊,數(shù)據(jù)塊和校驗塊會分散的存儲在這8塊硬盤上。
使用糾刪碼的好處是即便丟失一半數(shù)量(N/2)的硬盤,仍然可以恢復數(shù)據(jù)。 比如上邊集合中有4個以內的硬盤損害仍可保證數(shù)據(jù)恢復,不影響上傳和下載,如果多于一半的硬盤壞了則無法恢復。