组件分享之后端组件——一个简单且高度可扩展的分布式文件系统seaweedfs

组件分享之后端组件——一个简单且高度可扩展的分布式文件系统seaweedfs

背景

近期正在探索前端、后端、系统端各类常用组件与工具,对其一些常见的组件进行再次整理一下,形成标准化组件专题,后续该专题将包含各类语言中的一些常用组件。欢迎大家进行持续关注。

组件基本信息

内容

本节我们分享一个分布式存储系统seaweedfs,它是一个用于 blob、对象、文件和数据湖的快速分布式存储系统,可存储数十亿个文件!Blob 存储具有 O(1) 磁盘寻道、云分层。Filer支持Cloud Drive、跨DC双活复制、Kubernetes、POSIX FUSE挂载、S3 API、S3 Gateway、Hadoop、WebDAV、加密、纠删码。
可提供如下特性:

  1. 存储数十亿文件!
  2. 快速提供文件!

SeaweedFS 最初是作为一个对象存储来有效处理小文件。中央主服务器不管理中央主服务器中的所有文件元数据,而是仅管理卷服务器上的卷,而这些卷服务器管理文件及其元数据。这减轻了来自中央主机的并发压力,并将文件元数据传播到卷服务器中,从而允许更快的文件访问(O(1),通常只有一次磁盘读取操作)。

每个文件的元数据只有 40 字节的磁盘存储开销。O(1) 磁盘读取非常简单,欢迎您通过实际用例来挑战性能。

SeaweedFS 从实现Facebook 的 Haystack 设计文件开始。此外,SeaweedFS 使用 f4 的想法实现了擦除编码:Facebook 的 Warm BLOB Storage System ,并且与Facebook 的 Tectonic Filesystem有很多相似之处

在对象存储之上,可选的Filer可以支持目录和 POSIX 属性。Filer 是一个独立的线性可扩展无状态服务器,具有可自定义的元数据存储,例如 MySql、Postgres、Redis、Cassandra、HBase、Mongodb、Elastic Search、LevelDB、RocksDB、Sqlite、MemSql、TiDB、Etcd、CockroachDB 等。

对于任何分布式键值存储,大值可以卸载到 SeaweedFS。SeaweedFS 具有快速的访问速度和线性可扩展的容量,可以作为分布式Key-Large-Value 存储

SeaweedFS 可以透明地与云集成。SeaweedFS利用本地集群上的热点数据和访问时间为O(1)的云上的温数据,既可以实现本地快速访问时间,又可以实现弹性云存储容量。更重要的是,云存储访问API成本最小化。比直接云存储更快、更便宜!

附加的功能

  • 可以选择无复制或不同的复制级别,机架和数据中心感知。
  • 自动主服务器故障转移 - 无单点故障 (SPOF)。
  • 自动 Gzip 压缩取决于文件 mime 类型。
  • 删除或更新后自动压缩以回收磁盘空间。
  • 自动进入 TTL 过期
  • 任何具有一些磁盘空间的服务器都可以添加到总存储空间中。
  • 添加/删除服务器不会导致任何数据重新平衡,除非由管理员命令触发。
  • 可选的图片调整大小。
  • 支持ETag、Accept-Range、Last-Modified等。
  • 支持 in-memory/leveldb/readonly 模式调优以实现内存/性能平衡。
  • 支持重新平衡可写和只读卷。
  • 可定制的多个存储层:可定制的存储磁盘类型以平衡性能和成本。
  • 透明的云集成:通过分层云存储的热数据无限容量。
  • 用于热存储的纠删码 机架感知 10.4 纠删码可降低存储成本并提高可用性。

文件管理器功能

本文声明:
88x31.png
知识共享许可协议
本作品由 cn華少 采用 知识共享署名-非商业性使用 4.0 国际许可协议 进行许可。
  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 打赏
    打赏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

CN華少

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值