分享

hadoop中HDFS与opesntack的swift有何不同

hyj 发表于 2014-2-8 00:39:01 [显示全部楼层] 回帖奖励 阅读模式 关闭右栏 4 17512
1. HDFS使用集中式单一节点架构(NameNode)来维护文件系统元数据,而在Swift中,元数据分布在整个集群中并拥有多个副本。注意:集中式元数据存储使HDFS存在性能、单点故障和扩展性问题,因此规模越大就性能越低,就越容易不可用,就越难扩展甚至不能扩展,所幸的是HDFS2使用NameNode HA和HDFS Federation解决了这三个问题。
2. Swift在设计时考虑到了多租户架构,而HDFS没有多租户架构这个概念。
3. HDFS针对大文件作了优化(HDFS关注吞吐量,常用于批量数据处理),而Swift被设计成可以存储任意大小的文件。
4. 在HDFS中,文件只能写入一次(部分版本可以使用Append操作在文件的末尾添加数据,但不支持在文件的任意位置进行修改),而在Swift中,文件可以写入多次。
5. HDFS用Java来编写,而Swift用Python来编写。

已有(4)人评论

跳转到指定楼层
好梦一场睡 发表于 2014-12-5 15:07:31
您好,我想问一下,在HDFS中上传数据时先选中一个datanode传送数据,同时利用这个节点以流水的形式向其他节点传送,但是在Swift中好像是由代理节点同时向三个节点进行数据传送,这样如果多人上传数据,会不会是上传速度变慢,还有就是可以在Swift上实现这种流水复制副本的形式吗?
回复

使用道具 举报

desehawk 发表于 2014-12-5 16:26:52
好梦一场睡 发表于 2014-12-5 15:07
您好,我想问一下,在HDFS中上传数据时先选中一个datanode传送数据,同时利用这个节点以流水的形式向其他节 ...



不知道楼主说的流水是个什么概念:
在hadoop2中为了解决单点问题,采用了journalnode,详细参考:


Hadoop2.x是如何解决NN(namenode)单点故障问题



这样如果多人上传数据,会不会是上传速度变慢

对于楼主的担忧,任何系统只要一上量都会存在问题,都会存在性能问题
回复

使用道具 举报

好梦一场睡 发表于 2014-12-5 16:33:55
desehawk 发表于 2014-12-5 16:26
不知道楼主说的流水是个什么概念:
在hadoop2中为了解决单点问题,采用了journalnode,详细参考:
...

要不您先看看这个文章http://www.zhihu.com/question/21852470,说的是HDFS副本写时复制,我想知道在Swift能否也实现这个
回复

使用道具 举报

好梦一场睡 发表于 2014-12-5 18:18:45
http://www.zhihu.com/question/21852470这个说的就是HDFS的数据写时复制机制,可不可以在Swift中实现?
回复

使用道具 举报

您需要登录后才可以回帖 登录 | 立即注册

本版积分规则

关闭

推荐上一条 /2 下一条