使用案例

ChubaoFS是一个分布式文件系统,兼容绝大部分POSIX文件系统语义,挂载后可以像使用本地文件系统一样简单。基本上可以用在任何需要文件系统的场合,替换本地文件系统,实现可无限扩展的、无物理边际的存储.已经应用在多种场景,下面是摘取的部分场景

HBase

使用hdfs作为后端存储数据会经常遇到下面的问题

  • 对小文件不友好,小文件个数太多,比较占用namenode内存,文件系统所能容纳的文件数目是由 Namenode 的内存大小来决定
  • 运维复杂
  • Namenode管理元数据,不易扩容

使用chubaofs作为后端存储的优势

  • 对小文件友好,文件个数不受限制
  • 运维简单
  • Metanode管理文件元数据,支持水平扩容
  • 不同的volume文件元数据分布在不同的metanode上,彼此隔离,互不影响

ElasticSearch

使用本地磁盘存储数据会经常遇到下面的问题:

  • 磁盘使用率不均匀,磁盘IO无法充分利用
  • 本地磁盘空间大小受限制

使用chubaofs作为后端存储的优势

  • 磁盘空间不受限制,易扩容,根据磁盘使用百分比自动扩展磁盘容量,能够实现存储系统按需扩容,极大的节省存储成本
  • 磁盘IO使用率均匀,磁盘IO得到充分利用
  • 保证数据高可靠,不用担心丢失数据

Nginx日志存储

你是不是经常为本地磁盘空间已满问题而发愁,使用chubaofs,可以将数据存储在分布式文件系统中,不用再担心磁盘空间不够用问题。

使用本地磁盘存储日志的问题

  • docker本地磁盘空间小
  • docker容器故障,日志丢失且不可恢复
  • 物理机和docker机器混合部署,难以管理,运维成本高

使用chubaofs存储Nginx日志优势

  • 磁盘空间不受限制,易扩容,根据磁盘使用百分比自动扩展磁盘容量,能够实现存储系统按需扩容,极大的节省存储成本
  • 保证数据高可靠,不用担心丢失数据
  • 多副本,可解决磁盘级和datanode节点故障导致日志无法写入问题
  • 兼容posix文件系统接口,应用程序无需任何改动
  • chubaofs运维简单,一个人就可以轻松的管理上万台机器的集群

Spark

在大数据集场景下,你是否为存储Spark中间计算结果需要精心计算每个task的数据量而发愁,可以将shuffle结果存储到cfs,不用再担心磁盘没有可用空间而导致任务失败问题,实现存储和计算分离。

使用本地磁盘存储shuffle中间结果的痛点

  • 磁盘空间不足
  • 临时目录文件过多,无法创建新文件

使用chubaofs优势

  • 磁盘空间不受限制,易扩容,根据磁盘使用百分比自动扩展磁盘容量,能够实现存储系统按需扩容,极大的节省存储成本
  • Metanode管理文件元数据,可以水平扩容,文件个数不受限制

MySQL数据库备份

使用云存储备份MySQL数据库的缺点

  • 需要利用云存储SDK或者RESTful API开发备份程序,增加运维难度。
  • 备份文件失败,排查问题比较困难
  • 备份文件到云存储后,不方便查看文件是否上传成功
  • 备份文件经过多层服务处理,影响性能

使用chubaofs备份MySQL数据库的优点

  • 简单易用,兼容POSIX文件接口,可以当作本地文件系统使用
  • 完整且详尽的操作记录存储在本地文件系统中,排查问题简单方便
  • 只需执行ls命令,即可验证文件是否上传成功
  • 支持PageCache和WriteCache,与云存储相比,文件读写性能显著提升

机器学习

使用本地磁盘存储训练数据集的缺点

  • 本地磁盘空间小,有多个模型,每个模型的训练数据集到达TB级别,使用本地磁盘存储训练数据集,需要缩减训练数据集大小
  • 训练数据集需要经常更新,需要更多的磁盘空间
  • 如果机器故障,存在训练数据集丢失风险

使用chubaofs存储点击流日志优势

  • 磁盘空间不受限制,易扩容,根据磁盘使用百分比自动扩展磁盘容量,能够实现存储系统按需扩容,极大的节省存储成本
  • 数据有多个副本,保证数据高可靠,不用担心丢失数据
  • 兼容posix文件系统接口,应用程序无需任何改动