MapReduce
2016-03-02 15:09
155 查看
MapReduce是一个处理数据的项目模型。Hadoop可以通过多个语言来写MapReduce项目。MapReduce是天生并行(inherently parallel)的。
为什么说这个天气数据集是非常好的candidate对于MapReduce,其中提到的两个特征:半结构化(semi-structured)和record-oriented(面向记录)。不是很理解。
Mapper class 是一个通用类型,有4个形式类型变量来输入输出key和value,Hadoop使用它自己的基本数据类型集合来优化网络序列化(serialization)。为什么?
输入路径通过FileInputFormat的addInputPath(),它可以是一个单独的文件,也可以是一个目录(将会输入目录下的所有文件),或者一个文件模式(正则吗?),这个可以多次调用。
输出路径(必须只有一个)被FileOutputFOrmat的setOutputPath()指定,目录一定不能存在。防止在一个大job中,覆盖了一些输出文件。
我们指定Map class 和Reduce class
Hadoop并不保证,调取combiner function的次数,所以我们需要无论调取0次1次还是多次都应该产生相同的输出。这句话不太理解,看样子就是combine的计算逻辑一定要是可拆分的,例如求最大,最小,和什么的,但是求平均值就不对了。
为什么说这个天气数据集是非常好的candidate对于MapReduce,其中提到的两个特征:半结构化(semi-structured)和record-oriented(面向记录)。不是很理解。
Mapper class 是一个通用类型,有4个形式类型变量来输入输出key和value,Hadoop使用它自己的基本数据类型集合来优化网络序列化(serialization)。为什么?
输入路径通过FileInputFormat的addInputPath(),它可以是一个单独的文件,也可以是一个目录(将会输入目录下的所有文件),或者一个文件模式(正则吗?),这个可以多次调用。
输出路径(必须只有一个)被FileOutputFOrmat的setOutputPath()指定,目录一定不能存在。防止在一个大job中,覆盖了一些输出文件。
我们指定Map class 和Reduce class
Hadoop并不保证,调取combiner function的次数,所以我们需要无论调取0次1次还是多次都应该产生相同的输出。这句话不太理解,看样子就是combine的计算逻辑一定要是可拆分的,例如求最大,最小,和什么的,但是求平均值就不对了。
相关文章推荐
- iio adc转换应用编写
- 设计模式之代理模式
- JVM调优总结
- Qt安装与新建项目
- lua 与C通过c api传递table (2)
- 升级centos的内核到3.17版本
- win10设置自动更新
- bzoj1020 安全的航线flight
- Maven--Archetype
- TEMU:动态分析组件
- HTML4 和 HTML5 的10个关键区别
- 队列(Queue)--环形队列、优先队列和双向队列
- linux下编写shell获取指定目录下的文件名
- windows 下安装SVN服务器
- scala技术栈
- Python练习(3):浮点数的比较和二分法
- heat创建stack时为何要在keystone新建一个临时project
- Extjs下拉列表树形图
- 把一个开发者帐号下的app转移到另一个开发者帐号
- Clion 1.2.4 激活