常见的分布式文件系统有GFS、HDFS、Lustre 、Ceph 、GridFS 、mogileFS、TFS、FastDFS等。各自适用于不同的领域。它们都不是系统级的分布式文件系统,而是应用级的分布式文件存 储服务。

Google学术论文,这是众多分布式文件系统的起源
Google File System(大规模分散文件系统)
MapReduce (大规模分散FrameWork)
BigTable(大规模分散数据库)
Chubby(分散锁服务)
一般你搜索Google_三大论文中文版(Bigtable、 GFS、 Google MapReduce)就有了。


GFS(Google File System)
Google公司为了满足本公司需求而开发的基于Linux的专有分布式文件系统。。尽管Google公布了该系统的一些技术细节,但Google并没有将该系统的软件部分作为开源软件发布。
下面分布式文件系统都是类 GFS的产品。


HDFS
Hadoop 实现了一个分布式文件系统(Hadoop Distributed File System),简称HDFS。 Hadoop是Apache Lucene创始人Doug Cutting开发的使用广泛的文本搜索库。它起源于Apache Nutch,

后者是一个开源的网络搜索引擎,本身也是Luene项目的一部分。Aapche Hadoop架构是MapReduce算法的一种开源应用,是Google开创其帝国的重要基石。


Ceph
是加州大学圣克鲁兹分校的Sage weil攻读博士时开发的分布式文件系统。并使用Ceph完成了他的论文。
说 ceph 性能最高,C++编写的代码,支持Fuse,并且没有单点故障依赖, 于是下载安装, 由于 ceph 使用 btrfs 文件系统, 而btrfs 文件系统需要 Linux 2.6.34 以上的内核才支持。
可是ceph太不成熟了,它基于的btrfs本身就不成熟,它的官方网站上也明确指出不要把ceph用在生产环境中。


Lustre
Lustre是一个大规模的、安全可靠的,具备高可用性的集群文件系统,它是由SUN公司开发和维护的。
该项目主要的目的就是开发下一代的集群文件系统,可以支持超过10000个节点,数以PB的数据量存储系统。
目前Lustre已经运用在一些领域,例如HP SFS产品等。
适合存储小文件、图片的分布文件系统研究

------------------------------------------------------------------------------

目前Lustre已经运用在一些领域,例如HP SFS产品等。
  集群存储简介:
  在集群里,一组独立的节点或主机可以象一个系统一样步调一致地工作。整个集群只有唯一
的命名空间。厂商们也已经制造了一些软件和硬件设备,它们可以把不相干的文件系统融合成只使用一个命名空间的文件系统。用户可以访问并共享其他用户的数据,而无需考虑是什么介质或其所处的是哪台主机。
  集群存储系统需要解决的最基本的问题:
(1)提供共享访问数据,便于集群应用程序的编写和存储的负载均衡;
(2)提供高性能的存储,在I/O级和数据吞吐率方面能满足成百上千台规模的Linux集群服务器聚合访问的需求
  与分布式文件系统相比:
  数据不需要从一个文件系统拷贝或复制到另一个文件系统,通过集群系统共享应用和数据的任务执行起来要比在单独的设备上执行快得多;
  集群可以为文件和文件系统提供更多的空间;
  因为只需要管理一个文件系统,而不再是每个存储设备或主机都需要一个文件系统,管理也更容易了;如果集群内的某台服务器出现了故障,另一台服务器就可以把它的工作接手过来,故障恢复也成为了现实;
  用户也可以同时对位于其网络上的存储设备里的所有文件进行访问。
------------------------------------------------------------------------------
用于图片等小文件大规模存储的分布式文件系统调研
架构高性能海量图片服务器的技术要素
nginx性能改进一例(图片全部存入google的leveldb)
FastDFS分布文件系统
TFS(Taobao File System)安装方法
动态生成图片 Nginx + GraphicsMagick


MogileFS
由memcahed的开发公司danga一款perl开发的产品,目前国内使用mogielFS的有图片托管网站yupoo等。
MogileFS是一套高效的文件自动备份组件,由Six Apart开发,广泛应用在包括LiveJournal等web2.0站点上。
MogileFS由3个部分组成:
  第1个部分是server端,包括mogilefsd和mogstored两个程序。前者即是 mogilefsd的tracker,它将一些全局信息保存在数据库里,例如站点domain,class,host等。后者即是存储节点(store node),它其实是个HTTP Daemon,默认侦听在7500端口,接受客户端的文件备份请求。在安装完后,要运行mogadm工具将所有的store node注册到mogilefsd的数据库里,mogilefsd会对这些节点进行管理和监控。
  第2个部分是utils(工具集),主要是MogileFS的一些管理工具,例如mogadm等。
  第3个部分是客户端API,目前只有Perl API(MogileFS.pm)、PHP,用这个模块可以编写客户端程序,实现文件的备份管理功能。


mooseFS
持FUSE,相对比较轻量级,对master服务器有单点依赖,用perl编写,性能相对较差,国内用的人比较多
MooseFS与MogileFS的性能测试对比


FastDFS
是一款类似Google FS的开源分布式文件系统,是纯C语言开发的。
FastDFS是一个开源的轻量级分布式文件系统,它对文件进行管理,功能包括:文件存储、文件同步、文件访问(文件上传、文件下载)等,解决了大容量存储和负载均衡的问题。特别适合以文件为载体的在线服务,如相册网站、视频网站等等。
官方论坛 
FastDfs google Code 
分布式文件系统FastDFS架构剖析


TFS
TFS(Taobao !FileSystem)是一个高可扩展、高可用、高性能、面向互联网服务的分布式文件系统,主要针对海量的非结构化数据,它构筑在普通的Linux机器 集群上,可为外部提供高可靠和高并发的存储访问。TFS为淘宝提供海量小文件存储,通常文件大小不超过1M,满足了淘宝对小文件存储的需求,被广泛地应用 在淘宝各项应用中。它采用了HA架构和平滑扩容,保证了整个文件系统的可用性和扩展性。同时扁平化的数据组织结构,可将文件名映射到文件的物理地址,简化 了文件的访问流程,一定程度上为TFS提供了良好的读写性能。


GridFS文件系统
MongoDB是一种知名的NoSql数据库,GridFS是MongoDB的一个内置功能,它提供一组文件操作的API以利用MongoDB存储文件,GridFS的基本原理是将文件保存在两个Collection中,一个保存文件索引,一个保存文件内容,文件内容按一定大小分成若干块,每一块存在一个Document中,这种方法不仅提供了文件存储,还提供了对文件相关的一些附加属性(比如MD5值,文件名等等)的存储。

常见的分布式文件系统介绍相关推荐

  1. 常见的分布式文件系统介绍及对比

      常见的分布式文件系统有,GFS.HDFS.Lustre .Ceph .GridFS .mogileFS.TFS.FastDFS等.各自适用于不同的领域.它们都不是系统级的分布式文件系统,而是应用级 ...

  2. 【云存储】主流分布式文件系统介绍

    目录 1.引言 2.云存储与分布式文件系统 2.1.云存储 2.2.分布式文件系统 3.Google的三大云计算与云存储论文 3.1.The Google File System(谷歌文件系统) 3. ...

  3. FastDFS分布式文件系统介绍及单机版安装

    一.分布式文件系统 分布式文件系统 (Distributed File System) 是一个软件/软件服务器,这个软件可以用来管理文件,但这个软件所管理的文件通常不是在一个服务器节点上,而是在多个服 ...

  4. FastDFS 分布式文件系统介绍及安装部署

    依赖环境版本说明: 操作系统CentOS6.5 目标 了解项目中使用FastDFS的原因和目的: 掌握FastDFS的架构组成部分,能说出tracker和storage的作用: 了解FastDFS+n ...

  5. 一文搞定FastDFS分布式文件系统配置与部署

    Ubuntu下FastDFS分布式文件系统配置与部署 白宁超 2017年4月15日09:11:52 摘要: FastDFS是一个开源的轻量级分布式文件系统,功能包括:文件存储.文件同步.文件访问(文件 ...

  6. FastDFS分布式文件系统配置与部署

    一文搞定FastDFS分布式文件系统配置与部署 阅读目录 1 分布式文件系统介绍 2 系统架构介绍 3 FastDFS性能方案 4 Linux基本命令操作 5 安装VirtualBox虚拟机并配置Ub ...

  7. 盘点分布式文件存储系统____分布式文件存储系统简介

    盘点分布式文件存储系统 在项目的数据存储中,结构化数据通常采用关系型数据库,非结构化数据(文件)的存储就有很多种方式,服务器本地存储.Nas挂载.ftp等等,今天就来盘点一下,分布式文件存储系统. 一 ...

  8. 大数据开发:分布式文件存储系统简介

    在分布式存储技术体系当中,分布式文件存储是其中的分类之一,也是大数据架构当中常常用到的.得益于Hadoop的高人气,Hadoop原生的HDFS分布式文件系统,也广泛为人所知.但是分布式文件存储系统,并 ...

  9. 架构方案(16) 常见分布式文件存储介绍、选型比较、以及架构设计

    数据正成为世界上最有价值的资源,分布式文件存储是应对数据爆炸的最好解决方案,那就会涉及到分布式文件存储方案.选型.架构设计等. 分布式文件存储的来源 在这个数据爆炸的时代,产生的数据量不断地在攀升,从 ...

最新文章

  1. 结构体中定义函数指针
  2. Scala微服务架构 三
  3. Yii2框架源码分析之如何实现注册和登录
  4. UVA 532 - Dungeon Master
  5. angularjs 1.x $q模块使用
  6. 组态王7.5安装教程
  7. 高等数学入门教程 — 极限
  8. leetcode 312. Burst Balloons | 312. 戳气球(暴力递归->DP)
  9. kernel devel 安装与卸载
  10. jQuery是什么,jQuery入门简介
  11. mysql查询一个数据库所有表的记录数,mysql 查看数据库中所有表的记录数
  12. 中心极限定理通俗介绍
  13. vue里动态设置并获取ref
  14. java mschart_vb之mschart控件小结
  15. 吴晓慧讲述:“随手记安全吗”网贷平台“出清”利好行业发展
  16. Copy-on-Write模式:写时复制
  17. 服务器怎么开账号,大芒果服务器怎么创建GM账号?
  18. opencv实践中遇到的问题
  19. windows7英文系统如何将电脑屏幕背景色改成保护眼睛的淡绿色
  20. GitLab使用CAS服务进行单点登录配置

热门文章

  1. Spark:利用tac+cellid基站定位
  2. 笨鸟的生活(小白的学习日常)
  3. java斗地主发牌代码_[Java源码]扑克牌——斗地主发牌实现
  4. 只需一步,永久白嫖!请低调使用!
  5. wazuh agent 认证
  6. cfa的pv怎么用计算机算,CFA考试规定使用的计算器,以及它的使用方法
  7. oracle等待事件4——buffer busy wait 特别介绍
  8. 跟着老猫来搞GO-内建容器slice
  9. 《数据结构与算法分析》课程设计——迷宫问题
  10. Tomcat的部署学习