Hadoop入门

1.为什么不用分布式处理数据?
多进程部署到多台服务器上,要考虑数据一致性、可靠性、网络通讯等。业务逻辑很简单,但却要耗费大量的经历在集群之间协调、调度任务、数据共享、一致性的保证上等。

2.Hadoop是什么?
apache旗下的一款开源软件平台。

3.Hadoop解决了什么问题?
①海量数据存储(HDFS)
②海量数据分析(mapreduce)
③资源管理调度(Yarn)

4.Hadoop功能?
利用服务器集群,根据用户自定义业务逻辑,对海量数据进行分布式处理。

5.Hadoop核心组件有哪些?
①HDFS(分布式文件系统)
②Mapreduce(分布式运算编程框架)
③YARN(为Mapreduce程序分配运算硬件资源调度的系统,确定mapreduce在哪运行,配置yarn要配置yarn的resourcemanager和yarn为mapreduce提供的服务)

6.HDFS如何存储海量数据?(原理)
在这里插入图片描述
 HDFS 采用Master/Slave的架构来存储数据,这种架构主要由四个部分组成,分别为HDFS Client、NameNode、DataNode和Secondary NameNode。下面我们分别介绍这四个组成部分

①Client:就是客户端。

  • 文件切分。文件上传 HDFS 的时候,Client 将文件切分成 一个一个的Block,然后进行存储。
  • 与 NameNode 交互,获取文件的位置信息。
  • 与 DataNode 交互,读取或者写入数据。
  • Client 提供一些命令来管理 HDFS,比如启动或者关闭HDFS。
  • Client 可以通过一些命令来访问 HDFS。

②NameNode:就是 master,它是一个主管、管理者。

  • 管理 HDFS 的名称空间
  • 管理数据块(Block)映射信息
  • 配置副本策略
  • 处理客户端读写请求。

③DataNode:就是Slave。NameNode 下达命令,DataNode 执行实际的操作。

  • 存储实际的数据块。
  • 执行数据块的读/写操作。

④Secondary NameNode:并非 NameNode 的热备。当NameNode 挂掉的时候,它并不能马 上替换 NameNode 并提供服务。

  • 辅助 NameNode,分担其工作量。
  • 定期合并 fsimage和fsedits,并推送给NameNode。
  • 在紧急情况下,可辅助恢复 NameNode。

7.mapreduce如何进行海量数据的计算?(原理)

map函数和reduce函数是交给用户实现的,这两个函数定义了任务本身。

  • map函数:接受一个键值对(key-value pair),产生一组中间键值对。MapReduce框架会将map函数产生的中间键值对里 键相同 的值传递给一个reduce函数。

  • reduce函数:接受一个键,以及相关的一组值,将这组值进行合并产生一组规模更小的值(通常只有一个或零个值)。

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值