码迷,mamicode.com
首页 > 其他好文 > 详细

分布式文件系统MogileFS

时间:2016-02-03 14:34:59      阅读:232      评论:0      收藏:0      [点我收藏+]

标签:internet   本地磁盘   服务器   客户端   成本   

一、分布式文件系统介绍

    定义:分布式存储系统是大量普通PC服务器通过与Internet互联,对外作为一个整体提供存储服务。分布式文件系统,顾名思义,就是分布式+文件系统。它包含这两个方面的内涵,从文件系统的客户端使用的角度来看,它就是一个标准的文件系统,提过一系列的API,由此进行文件或者目录的创建、移动、删除,以及对文件的读写等操作。从内部实现来看,分布式系统则不再和普通文件系统一样负责管理本地磁盘,它的文件内容和目录结构都不是存储再本地磁盘上,而是通过网络传输到远端系统上。并且,同一个文件存储不只是在一台机器上,而是在一组机器上分布式存储,协同提供服务。   

    特性:

    1、可扩展:分布式存储系统可以扩展到几百台至几千台的集群规模,且随着集群规模的增长,系统整体性能表现为线性增长;

    2、低成本:分布式存储系统的自动容错、自动负载均衡机制使其可以构建再普通PC机之上;另外,线性扩展能力也使得增长、减少机器非常方便,可以实现自动运维;

    3、高性能:无论针对整个集群还是单台服务器,都要求分布式系统具备高性能。

    4、易用性:分布式存储系统需要能够提供易用的对外接口;另外,也要求具备完善的监控、运维工具,并能方便的与其他系统集成,如从hadoop云计算系统导入数据;

    挑战:在于数据、状态信息的持久化,要求在自动迁移,自动容错、并发读写的过程中保证数据的一致性;


二、CAP理论

    来自Berkerly的Eric Brewer教授提出了一个著名的CAP理论:一致性(Consistency),可用性(Availability)和分区容忍性(Tolerance of networkPartition)三者不能同时满足;

    C:读操作总是能够读取到之前完成的写操作结果,满足这个条件的系统成为强一致系统,这里的“之前”一般对同一个客户端而言;

    A:读写操作再单台机器发生故障的情况下依然能够正常执行,而不需要等待发生故障的机器重启或者其上的服务迁移到其他机器;

    P:机器故障、网络故障、机房停电等异常情况下仍然能够满足一致性可可用性;

分布式存储系统要求能够自动容错,即分区可容忍性总是需要满足的,因此,一致性和写操作的可用性就不能同时满足了,需要再这两者间权衡,是选择不允许丢失数据,保持强一致,还是允许少量数据丢失以获得更好的可用性;


三、常见分布式文件系统

    GFS(Google File System):Google公司为了满足自己公司需求而开发的基于Linux的专有分布式文件系统。由于其元数据时存储再内存中,所以在存储文件数量上注定不可能达到海量存储,主要是存储大文件使用。

    HDFS(Hadoop Distributen File System):hadoop的重要组成之一,几乎完全山寨版的GFS。

    TFS:淘宝自主研发,将元数据存储于关系型数据库或其它高性能存储中,从而能维护海量文件元数据;主要用于存储海量小文件,维护难度大

    GlusterFS:去中心化的设计模式;擅长处理单个大文件;

    Ceph:Linux内核级实现的文件系统,目前已经直接被收录进Linux内核;bug较多,稳定性不佳

    MooseFs:持FUSE,相对比较轻量级,对master服务器有单点依赖,用perl编写,性能相对较差,国人用的较多;

    MogileFS:元数据放在数据库中,擅长处理海量小文件,性能较好;

    FastDFS:轻量级分布式系统,擅长处理海量小文件

四、MogileFS详细介绍

    1、MogileFS组成

    MogileFS组成的三个组件:

     tracker:追踪元数据   元数据访问路由器

     database:存储元数据

     storage:存储数据    

五、MogileFS实现

六、MogileFS高可用

七、Nginx反向代理MogileFS

本文出自 “把酒问苍天” 博客,请务必保留此出处http://79076431.blog.51cto.com/8977042/1740890

分布式文件系统MogileFS

标签:internet   本地磁盘   服务器   客户端   成本   

原文地址:http://79076431.blog.51cto.com/8977042/1740890

(0)
(0)
   
举报
评论 一句话评论(0
登录后才能评论!
© 2014 mamicode.com 版权所有  联系我们:gaon5@hotmail.com
迷上了代码!