MapReduce复习

一、MapReduce概述

1.定义

是分布式运算框架

MapReduce:用户处理业务相关代码+自身的默认代码

2.优势劣势

优点:

1).易于编程。用户只关心业务逻辑,实现框架的接口。

2).良好的扩展性。可以动态增加服务器,解决计算资源不够的问题。

3).高容错性:任何一台挂掉,可以将任务转移到其它节点。

4).适合海量数据计算(TB/PB)几千台服务器共同计算。

劣势:

1).不擅长实时计算。mysql

2).不擅长流式计算。SparkStream flink适合。

3).不擅长DAG有向无环图计算。spark

3.Mapreduce核心思想-WordCount案例

例如:统计其中每一个单词出现的总次数(查询结果:a-p 一个文件,q-z一个文件)

Map阶段:分阶段

Reduce阶段:统计阶段

MapReduce程序运行时有三类进程:

1)、MrAppMaster:负责整个程序的过程调度及状态协调。

2)、MapTask:负责Map阶段整个数据处理流程处理。

3)、ReduceTask:负责Reduce阶段的整个处理流程。

说这是一个任务,一个job,一个mr都是一个事情

二、序列化

1.常用序列化进程:

除了String类型变成Text,其他类型都在Java类型基础上加Writable.

|------------|-----------------------|
| Java类型 | Hadoop Writable类型 |
| Boolean | BooleanWritable |
| Byte | ByteWritable |
| Int | IntWritable |
| Float | FloatWritable |
| Long | LongWritable |
| Double | DoubleWritable |
| String | Text |
| Map | MapWritable |
| Array | ArrayWritable |
| Null | NullWritable |

三、核心框架原理

1.输入数据InputFormat

2.shuffle

3.输出数据OutputFormat

4.join

5.ETL

hadoop作为etl工具之一。

清理的过程只需要在Mapper程序进行,不需要运行Reduce程序。

6.总结

四、压缩

1、有哪些压缩算法

2.特点

3.在生产上怎么用

五、常见的问题及解决方案

82-125跳过去

相关推荐
Mikhail_G1 小时前
Python应用八股文
大数据·运维·开发语言·python·数据分析
Elastic 中国社区官方博客5 小时前
JavaScript 中的 ES|QL:利用 Apache Arrow 工具
大数据·开发语言·javascript·elasticsearch·搜索引擎·全文检索·apache
lifallen7 小时前
Flink task、Operator 和 UDF 之间的关系
java·大数据·flink
源码宝9 小时前
智慧工地云平台源码,基于微服务架构+Java+Spring Cloud +UniApp +MySql
java·大数据·源码·智慧工地·智能监测·智能施工
XiaoQiong.Zhang10 小时前
简历模板3——数据挖掘工程师5年经验
大数据·人工智能·机器学习·数据挖掘
Faith_xzc11 小时前
Apache Doris FE 问题排查与故障分析全景指南
大数据·数据仓库·apache·doris
潘小磊11 小时前
高频面试之6Hive
大数据·hive·面试·职场和发展
数据与人工智能律师13 小时前
当机床开始“思考”,传统“制造”到“智造”升级路上的法律暗礁
大数据·网络·算法·云计算·区块链
摘星编程14 小时前
华为云Flexus+DeepSeek征文 | 模型即服务(MaaS)安全攻防:企业级数据隔离方案
大数据·人工智能·安全·华为云·deepseek
木鱼时刻15 小时前
从大数据到大模型:我们是否在重蹈覆覆辙
大数据