首页 > 代码库 > 分布式存储mogilefs简介(1)

分布式存储mogilefs简介(1)

MogileFS



分布式存储

不能mount,基于API进行存储

分布式文件系统:(把存储空间抽象成文件格式的存储)

可以mount,基于VFS接口访问



常见的分布式文件系统

GFS:适合存储少量大文件

HDFS:适合存储少量大文件

TFS:淘宝FS,在名称节点上将元数据存储于关系型数据中,文件数量不在受限于名称节点的内存

       空间,可以存储海量小文件

TFS:腾讯FS(为开源)

Lustre:Oracle,企业级应用,重量级

GlusterFS:

MooseFS:基于FUSE的格式,可以挂载

Mogilefs:存储海量小数据(文件的源数据存放在mysql数据库中)

FastDFS:C语言研发 Mogilefs的克隆版

Perlbal:高性能的反向代理服务器(类似nginx)


mogilefs特性

1.应用层提供服务,不需要使用核心组件(仍然借助本地的文件系统工作),文件一般不切割

2.无单点

MogStored:存储多个数据副本;

Tracker:多节点;

Database:MySQL, ...

3.自动文件复制:复制的最小单位不是文件,而是class  (保存多个文件副本)

4.传输中立:无特殊协议,可以通过NFS或HTTP实现通信

5.简单的命名空间:没有目录,直接存在存储空间上,通过域(名称空间)来实现

                domain,class,fid(key)

6.不共享任何数据:

                元数据:db

                数据:mogilefs 副本

     7.不需要RAID



mogilefs角色

Tracker:

MogStored:存储数据副本;WEBDAV.

DB:存储元数据.


tracker

MogileFS的核心,是一个调度器,服务进程为mogilefsd

监听端口为7001


Database

数据库


mogstored

数据存储的位置,通常是一个HTTP(webDAV)服务器,

用来做数据的创建(put)、删除(delete)、获取(get),监听端口7500



mogilefs管理的几个概念

domain:一个mogilefs可以有多个domain

用来存放不同的文件

同一个domain内,key必须唯一

不同domain内,key可以相同


class:文件属性管理,定义文件存储在不同设备上的份数,最小复制单元


domain + fid 定位文件


             

              mogilefs工作流程图


技术分享



本文出自 “似水流年” 博客,请务必保留此出处http://sixijie123.blog.51cto.com/11880770/1878532

分布式存储mogilefs简介(1)