MooseFS和Hadoop两个分布式文件系统各有什么优缺点?

简介: MooseFS和Hadoop两个分布式文件系统各有什么优缺点?

MooseFS是一家波兰公司开发的分布式文件系统,相对于Google体系,Apache支持的Hadoop HDFS来说,小众了许多。


一、从分布式架构的角度看


两者都属于中心结构,这点上是区别于GlusterFS这种去中心化的分布式文件系统架构。


MooseFS的元数据管理主服务叫做MasterServer,而HDFS是NameNode。它们都是在管理着元数据目录树以及负责不同数据节点的分布式协作。


因此从分布式架构角度看,两者的中心化特性所带来的分布式优劣是不分伯仲的。


这种中心化的特征我以前提到过,那就是存在一个主服务,对元数据的管理维护所形成的逻辑操作,就能让整个分布式系统的文件目录的管理维护成本变得很低,这是优势。


劣势就在于主服务往往承担着巨大的风险,这种风险来自于内存需要缓存大量元数据,那么一个数据文件块的存储就不能太小,分布式文件系统不适合存储小文件这是通病。


但是中心化架构非常关键的一环就是主服务的高可用,如果没有高可用,主服务宕机就会出现集群不可用的巨大风险,因此两者都必然具有高可用架构设计。


然而MooseFS在高可用服务上是闭源收费的,但HDFS是一套复杂、开源、成熟的设计(QJM+ZKFC+主备)机制,因此HDFS在生产环境方面是占优势的。


但是MooseFS在免费开源上也提供了MetaLogger方案,至少能让元数据实时地同步到备用服务器,主节点出现故障,至少运维手动启动备选节点不用考虑元数据的维护问题。


二、从易用性上看


MooseFS具有与GlusterFS一样出色的本地目录融合机制,原理上都是基于Linux/BSD系统的内核机制FUSE(用户空间文件系统),让分布式文件系统目录可以Mount成普通文件目录来使用,这样就保证程序无关了。


但是HDFS主要利用JAVA接口或者HDFS命令行来访问,对于程序接口是友好的,但是对于非程序员使用就带来了很多不方便。


三、从大数据生态角度考虑


MooseFS更像一个工具,而HDFS则是一个数据底座。


HDFS的存储格式与物理存储是策略与机制分离设计。


也就是说存储后都会转换成统一的128M Block(块),但是上层调用端可以设计出各自不同的格式,例如Avro、Parquet、CSV等,这就非常有利于上层的数据解析设计。


常见的分布式数据库HBase就是设计了自己的HFile格式,让不同的数据库节点进行存储、索引和查询。


HFile作为一种HDFS的格式策略,底层依然是HDFS的Block统一存储、副本复制和块分布。


尽管MooseFS也具备差不多的设计思想,不过它 并不像Hadoop生态那样,在HDFS之上有Hive、HBase这样的重量级数据系统。


而且MooseFS基于C++开发,并没有像HDFS那样更容易提供Java接口的支持和扩展,也就缺少了很大的Java社区支持。


四、对比总结


因此MooseFS比较适合作为文件资料的仓库。更倾向于普通意义上的文件存储,只不过文件也作为数据块,存在不同的分布式节点位置,


HDFS的应用设计思路继承自Google GFS,主要是针对应用系统的海量碎片数据的归拢聚合、存储,基于Java设计实现,更适合作为企业级数据底座,也更适合作为数据仓库的基础设施。


相关文章
|
7天前
|
存储 缓存 分布式计算
|
2月前
|
存储 分布式计算 Hadoop
Hadoop是一个强大的分布式系统基础架构
【6月更文挑战第17天】Hadoop是一个强大的分布式系统基础架构
137 53
|
2月前
|
分布式计算 资源调度 Hadoop
分布式系统详解--架构(Hadoop-克隆服务器)
分布式系统详解--架构(Hadoop-克隆服务器)
34 1
|
2月前
|
XML 分布式计算 Hadoop
分布式系统详解--框架(Hadoop-单机版搭建)
分布式系统详解--框架(Hadoop-单机版搭建)
52 0
分布式系统详解--框架(Hadoop-单机版搭建)
|
2月前
|
存储 分布式计算 安全
|
2月前
|
NoSQL 架构师 Java
2024软考架构师考试---分布式锁的实现方式有那些以及优缺点
【6月更文挑战第16天】在分布式系统中,分布式锁是一种用于控制对共享资源访问的机制,以确保多进程、多线程环境下的数据一致性。分布式锁有多种实现方式,本文将介绍几种常见的分布式锁及其优缺点。
77 1
|
2月前
|
存储 分布式计算 Hadoop
使用Apache Hadoop进行分布式计算的技术详解
【6月更文挑战第4天】Apache Hadoop是一个分布式系统框架,应对大数据处理需求。它包括HDFS(分布式文件系统)和MapReduce编程模型。Hadoop架构由HDFS、YARN(资源管理器)、MapReduce及通用库组成。通过环境搭建、编写MapReduce程序,可实现分布式计算。例如,WordCount程序用于统计单词频率。优化HDFS和MapReduce性能,结合Hadoop生态系统工具,能提升整体效率。随着技术发展,Hadoop在大数据领域将持续发挥关键作用。
|
3月前
|
分布式计算 Hadoop 大数据
分布式计算框架比较:Hadoop、Spark 与 Flink
【5月更文挑战第31天】Hadoop是大数据处理的开创性框架,专注于大规模批量数据处理,具有高扩展性和容错性。然而,它在实时任务上表现不足。以下是一个简单的Hadoop MapReduce的WordCount程序示例,展示如何统计文本中单词出现次数。
133 0
|
2月前
|
存储 分布式计算 监控
分布式系统详解--框架(Hadoop-HDFS的HA搭建及测试)
分布式系统详解--框架(Hadoop-HDFS的HA搭建及测试)
41 0
|
2月前
|
分布式计算 资源调度 网络协议
分布式系统详解--框架(Hadoop--RPC协议)
分布式系统详解--框架(Hadoop--RPC协议)
32 0

相关实验场景

更多