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

背景

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

组件基本信息

  • 组件:seaweedfs
  • 开源协议:Apache-2.0 License

内容

本节我们分享一个分布式存储系统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 纠删码可降低存储成本并提高可用性。

文件管理器功能

  • Filer 服务器通过 http 提供“普通”目录和文件。
  • 文件 TTL 会自动使文件元数据和实际文件数据过期。
  • Mount filer通过 FUSE 直接将文件读写为本地目录。
  • Filer Store Replication为 filer 元数据存储启用 HA。
  • Active-Active Replication支持异步单向或双向跨集群连续复制。
  • Amazon S3 兼容 API使用 S3 工具访问文件。
  • Hadoop Compatible File System从 Hadoop/Spark/Flink/etc 访问文件,甚至运行 HBase。
  • Async Replication To Cloud对 Amazon S3、Google Cloud Storage、Azure、BackBlaze 具有极快的本地访问和备份。
  • WebDAV作为 Mac 和 Windows 上的映射驱动器访问,或从移动设备访问。
  • AES256-GCM 加密存储安全地存储加密数据。
  • Super Large Files存储数十 TB 的大型或超大型文件。
  • Cloud Drive将云存储挂载到本地集群,通过异步回写进行缓存以实现快速读写。
  • 除了云驱动器之外,远程对象存储的网关将存储桶操作镜像到远程对象存储
本文声明:
88x31.png

知识共享许可协议
本作品由 cn華少 采用 知识共享署名-非商业性使用 4.0 国际许可协议 进行许可。


http://www.taodudu.cc/news/show-6348738.html

相关文章:

  • 微信公众平台运营的关键是数据实时掌握——数据分析
  • 1 微信公众平台数据统计功能的作用是什么?
  • 公众号数据分析
  • 如何采集微信公众号历史数据
  • CAS单点登录(十一)——单点退出
  • 单点问题
  • 什么是单点登录?怎么样实现单点登录
  • 《Java Web开发实战》Java工程师推荐的进阶之路
  • Spring Cloud 微服务及相关技术总结
  • 如何进行代码重构?
  • 外包岗位对于程序员有什么优势?
  • 程序员怎么选择外包公司?
  • 程序员可以在外包公司做多久?能做一辈子吗?
  • 互联网程序员和外包公司的程序员有什么区别?
  • 程序员的私人外包专家
  • 现在互联网是外包公司天下了吗?程序员说不可能,但是…
  • 真的,程序员别去外包公司|程序员有话说
  • 广大程序员不要做外包
  • 程序员去外包公司有前途吗?
  • 外包公司面试门槛高吗?程序员进外包公司容易吗?
  • Java项目管理系统 的设计与实现
  • python开发项目管理平台_基于Python的软件项目管理系统.doc
  • 【23】基于java教师科研项目管理系统
  • 基于J2EE的科研项目管理系统设计与实现
  • [含文档+源码等]高校科研项目管理系统[包运行成功]
  • 基于ESP32的WiFi-RSSI定位
  • WIFI之一:WIFI常识 基站定位原理
  • 黑客入门——手机wifi定位原理
  • 物联网定位技术|实验报告|实验一 Wi-Fi指纹定位
  • Vivado2016如何改变字体大小

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

  1. 组件分享之后端组件——Redis数据库的一个Go客户端redigo

    组件分享之后端组件--Redis数据库的一个Go客户端redigo 背景 近期正在探索前端.后端.系统端各类常用组件与工具,对其一些常见的组件进行再次整理一下,形成标准化组件专题,后续该专题将包含各类 ...

  2. 组件分享之后端组件——阿里妈妈前端团队出品的开源接口管理工具RAP第二代rap2-delos...

    组件分享之后端组件--阿里妈妈前端团队出品的开源接口管理工具RAP第二代rap2-delos 背景 近期正在探索前端.后端.系统端各类常用组件与工具,对其一些常见的组件进行再次整理一下,形成标准化组件 ...

  3. 组件分享之后端组件——用于将日志写入滚动文件的组件包lumberjack

    组件分享之后端组件--用于将日志写入滚动文件的组件包lumberjack 背景 近期正在探索前端.后端.系统端各类常用组件与工具,对其一些常见的组件进行再次整理一下,形成标准化组件专题,后续该专题将包 ...

  4. 组件分享之后端组件——基于Golang语言的游戏服务器框架leaf

    组件分享之后端组件--基于Golang语言的游戏服务器框架leaf 背景 近期正在探索前端.后端.系统端各类常用组件与工具,对其一些常见的组件进行再次整理一下,形成标准化组件专题,后续该专题将包含各类 ...

  5. 组件分享之后端组件——基于Golang实现的高级消息队列协议 (AMQP) 的消息代理garagemq...

    组件分享之后端组件--基于Golang实现的高级消息队列协议 (AMQP) 的消息代理garagemq 背景 近期正在探索前端.后端.系统端各类常用组件与工具,对其一些常见的组件进行再次整理一下,形成 ...

  6. 组件分享之后端组件——国际化组件go-i18n

    组件分享之后端组件--国际化组件go-i18n 背景 近期正在探索前端.后端.系统端各类常用组件与工具,对其一些常见的组件进行再次整理一下,形成标准化组件专题,后续该专题将包含各类语言中的一些常用组件 ...

  7. 组件分享之后端组件——基于Golang实现的database/sql附加功能组件dbr

    组件分享之后端组件--基于Golang实现的database/sql附加功能组件dbr 背景 近期正在探索前端.后端.系统端各类常用组件与工具,对其一些常见的组件进行再次整理一下,形成标准化组件专题, ...

  8. 组件分享之后端组件——基于Golang实现的基于LDAP V3协议的操作包ldap

    组件分享之后端组件--基于Golang实现的基于LDAP V3协议的操作包ldap 背景 近期正在探索前端.后端.系统端各类常用组件与工具,对其一些常见的组件进行再次整理一下,形成标准化组件专题,后续 ...

  9. 组件分享之前端组件——初学者的web开发课程Web-Dev-For-Beginners

    组件分享之前端组件--初学者的web开发课程Web-Dev-For-Beginners 背景 近期正在探索前端.后端.系统端各类常用组件与工具,对其一些常见的组件进行再次整理一下,形成标准化组件专题, ...

最新文章

  1. 经典语录【摘自网路】
  2. AR+ 实时音视频通话,×××无缝结合
  3. 软件构建之链接应用--链接脚本
  4. 给图片加一层半透明_设计半透明风格卡通星球图片的PS教程
  5. ubuntu 20.04 快速开启TCP BBR实现高效单边加速
  6. win11更新后黑屏怎么办 Windows11更新后黑屏的解决方法
  7. Windows Server 2008 活动目录备份的几种方法
  8. 信息安全工程师教程学习笔记汇总(思维导图及考试要点)
  9. OpenCore引导配置说明第六版
  10. 使用js-xlsx纯前端导出excel
  11. 《Clojure Web开发实战》——第2章,第2.3节应用架构
  12. VS code上如何实现一键生成代码片段
  13. CentOS 8 Error: Failed to download metadata for repo ‘appstream‘: Cannot prepare internal mirrorlist
  14. JDBC防止SQL注入原理
  15. 光功率 博科交换机_FAQ-交换机是否支持查看光模块型号及收发光功率
  16. CSS实现鼠标悬停缩放
  17. 适用于数据中心和边缘应用的液冷技术
  18. flash 外国小游戏教程网站
  19. 全国计算机二级等级考试2017,2017年全国计算机二级考试科目及内容
  20. 如何解决div里面的h4标题拖拽,并且实现div里面的文本能够选中和不能选中的问题

热门文章

  1. c/c++ signal(信号)解析
  2. There is no getter for property named ‘xxx‘ in ‘class com.xxx‘
  3. 华为云CCE学习笔记-部署harbor(helm模板)
  4. 解决wps VBA安装的问题
  5. 生活随笔:心血来潮的今天
  6. 【C语言】(用函数实现)请给小学生随机出10道加减法的练习题,要求:10以内的加减法,并且能批改。
  7. nfs:server is not responding, still trying(NFS,不能从服务器读取,mount的问题)
  8. 3-D Reconstruction from a Single Still Image-学习《1》
  9. WK2124 驱动移植
  10. python字典遍历的几种方法(for in 用法)