温馨提示×

温馨提示×

您好,登录后才能下订单哦!

密码登录×
登录注册×
其他方式登录
点击 登录注册 即表示同意《亿速云用户服务条款》

为什么要用Hadoop

发布时间:2021-12-09 15:23:26 来源:亿速云 阅读:268 作者:iii 栏目:大数据

这篇文章主要讲解了“为什么要用Hadoop”,文中的讲解内容简单清晰,易于学习与理解,下面请大家跟着小编的思路慢慢深入,一起来研究和学习“为什么要用Hadoop”吧!

什么是 Hadoop

Hadoop 是由很多技术项目组成的一个生态系统。狭义的 Hadoop 有三个框架:

  • 海量数据的存储 - HDFS(Hadoop Distributed File System)
  • 海量数据的分析 - MapReduce
  • 资源管理调度 - YARN(Yet Another Resouce Negotiator)

以上狭义的 Hadoop 最擅长的仅仅是做海量离线日志分析,广义的 Hadoop 包含很多组件,现在可以做非常多的事情,应用场景非常广,包括实时计算等。

大数据计算的核心是移动计算而不是移动数据:将运算程序分发到分布式的数据集上运行,而不是移动数据。

为什么要使用 Hadoop

数据量不断增大,单节点无法应对海量数据的处理,需要使用分布式架构,需要考虑的复杂情况非常多,如:任务监控、节点存活监控、数据如何共享、中间数据如何传递等。Hadoop 作为分布式框架,已经为我们解决了这些问题,使用它极大降低了海量数据下的公共数据处理问题。

如何解决海量数据的存储

首先了解一下什么是 NFS,NFS 网络文件系统将文件挂载到不同的机器上,通过一台服务器(NFS Server)作为统一的入口,其他客户端访问 Server,Server 将从目标机器上取文件给客户端。简单理解为有一个文件服务器在远端,叫 NFS Server,上面有共享文件,可以将它挂载到你本地的机器上,访问 NFS Server 就像访问自己电脑的某一个磁盘一样(比如 C 盘)。

HDFS 是有 NameNode 和 DataNode 的概念,最基本的模型是一台 NameNode,多台 DataNode。NameNode 存储元信息,如某个文件存放在哪台服务器上,有几份备份等。DataNode 存储数据,数据文件被切分成块(block),每一块存储在多个节点上,互为备份,默认是 3 份,可以在同一个机架,一般为了保证高可用,会放在不同机架上。

HDFS 和 NFS 的主要区别:

  • HDFS 数据冗余,具有容错性,而 NFS 只存储一份;
  • HDFS 数据多副本解决单点瓶颈,读取性能会比 NFS 更好;

如何解决海量数据的计算

海量数据的计算关键是移动计算而不是移动数据。

假设有特别多的数据需要计算,只用一台机器是无法实现的,因为数据无法一次读取完,会对内存造成特别大的压力,需要读取很多次,会受网络的限制。

Hadoop 通过 MapReduce 实现海量数据的计算,数据存储在多个 DataNode 上,Map 阶段将计算程序分发到每个 DataNode 上,将每个节点上的计算结果通过网络发送到某一台做 Reduce 计算的机器,Reduce 将结果进行汇总输出。

感谢各位的阅读,以上就是“为什么要用Hadoop”的内容了,经过本文的学习后,相信大家对为什么要用Hadoop这一问题有了更深刻的体会,具体使用情况还需要大家实践验证。这里是亿速云,小编将为大家推送更多相关知识点的文章,欢迎关注!

向AI问一下细节

免责声明:本站发布的内容(图片、视频和文字)以原创、转载和分享为主,文章观点不代表本网站立场,如果涉及侵权请联系站长邮箱:is@yisu.com进行举报,并提供相关证据,一经查实,将立刻删除涉嫌侵权内容。

AI