什么是Hadoop
- 开源的
- 可靠的:可以通过备份的数据恢复
- 可扩展:机器动态的增加或减少不会影响数据的存储和计算
- 分布式计算:多台机器并行的处理
Hadoop能做什么
海量数据的存储——HDFS
- 存储海量数据
- 动态的添加机器
- 备份
- 当数据收到损坏时,快速自动恢复
海量数据分析——mapreduce
- 核心理念:分而治之
- 处理海量的数据获得有价值的信息
- mapreduce原理:
假设有海量的数据要我们来数其中各个图形的数目,我们可以简化一下,如上图,要数左边的个数,可以分给两个计算机去处理,最后何总得到结果。同样的,如果有大量数据,就可以分给百台计算机去处理。
任务调度和集群资源管理——YARN
- 资源管理(cpu,内存)
- 通过资源管理来合理安排任务,进行任务调度
Hadoop特点
- 扩容能力:动态增加或减少,并不会影响集群计算
- 成本低:普通的机器也能作为集群的结点
- 高效率:分布式计算
- 可靠性:默认备份三份,也可以指定备份多少
应用场景
- 日志分析:公司的每天产生的日志分析
- 推荐系统:淘宝购买物品之后,分析你的购物,推荐物品
来看一下课程中给的一张图: