首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >HDFS数据块与HDD存储数据块

HDFS数据块与HDD存储数据块
EN

Stack Overflow用户
提问于 2018-07-19 21:10:27
回答 1查看 498关注 0票数 0

我使用Hadoop HDFS已经有相当一段时间了,我知道HDFS块(64Mb,128Mb)的工作原理,我仍然不清楚其他文件系统中的块,例如硬盘驱动器有4kb的存储块容量。

所以我的理解是,所有的存储系统都使用块来存储数据,即使我们的移动SD卡也是如此,但是Hadoop为了处理海量数据有更大的块大小,对吗?

如果有比较不同数据块存储系统的文档,请告诉我。

EN

回答 1

Stack Overflow用户

回答已采纳

发布于 2018-07-19 22:53:28

HDFS基本上是对现有文件系统的抽象(这意味着64MB/128MB块在LFS中存储为4k块)。hdfs块大的原因是为了最小化寻道。HDFS块存储在正常文件系统中的连续内存位置(彼此相邻),这意味着读取它的总时间是在LFS上查找第一个块的头部,然后读取块的内容,而不再进行任何查找,因为它们是连续的。

这意味着我们读取的数据与磁盘传输速率相当,查找时间最少。

这在MR作业中非常有用,因为我们必须读取大量数据并对这些数据执行操作,因此最大限度地减少查找时间会带来良好的性能提升。

此外,HDFS还意味着要处理大文件。假设你有一个1 1GB的文件。对于4k的块大小,您必须发出256,000个请求才能获取该文件。在HDFS中,这些请求通过网络到达Name,以确定可以找到该块的位置。如果使用64Mb的块,请求数将减少到16。使用大块的原因是为了减轻namenode的压力。由于namenode存储文件块的元数据,如果块大小很小,那么namenode将很容易被块数据淹没。

这些链接还将帮助您更好地了解HDFS vs LFS

票数 1
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/51423557

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档