Hadoop 自定义数据类型
2016-08-20 16:51
302 查看
序列化在分布式环境的两大作用:进程间通信,永久存储。
Writable接口, 是根据 DataInput 和 DataOutput 实现的简单、有效的序列化对象.
MR的任意Value必须实现Writable接口:
MR的key必须实现WritableComparable接口,WritableComparable继承自Writable和Comparable接口:
(本节先讲自定义value值,下一节再讲自定义key值,根据key值进行自定义排序)
以一个例子说明,自定义数据类型(例子来源于学习的课程):
原始数据是由若干条下面数据组成:
数据格式及字段顺序如下:
现在要做的工作是以“手机号码”为关键字,计算同一个号码的upPackNum, downPackNum,upPayLoad,downPayLoad四个累加值。
运用MapReduce解决问题思路:
1、框架将数据分成<k1,v1>,k1是位置标记,v1表示一行数据;
2、map函数输入<k1,v1>,输入<k2,v2>,k2是选定数据的第1列(从0开始),v2是自定义的数据类型,包含第六、七、八、九列封装后的数据;
3、框架将<k2,v2>依据k2关键字进行map排序,然后进行combine过程,再进行Reduce段排序,得到<k2,list(v2...)>;
4、reduce函数处理<k2,list(v2...)>,以k2为关键字,计算list的内容。
要自定义的数据类型是Value值,因此要继承Writable接口,自定义数据类型如下:
最后实现map函数和Reduce函数如下,基本框架和wordCount相同:
最终输出结果如下:
附实验数据下载地址:https://yunpan.cn/cqcEy6QSzUEs7 访问密码 2fb1。数据来源:网易云课堂hadoop大数据实战
Writable接口, 是根据 DataInput 和 DataOutput 实现的简单、有效的序列化对象.
MR的任意Value必须实现Writable接口:
MR的key必须实现WritableComparable接口,WritableComparable继承自Writable和Comparable接口:
(本节先讲自定义value值,下一节再讲自定义key值,根据key值进行自定义排序)
以一个例子说明,自定义数据类型(例子来源于学习的课程):
原始数据是由若干条下面数据组成:
数据格式及字段顺序如下:
现在要做的工作是以“手机号码”为关键字,计算同一个号码的upPackNum, downPackNum,upPayLoad,downPayLoad四个累加值。
运用MapReduce解决问题思路:
1、框架将数据分成<k1,v1>,k1是位置标记,v1表示一行数据;
2、map函数输入<k1,v1>,输入<k2,v2>,k2是选定数据的第1列(从0开始),v2是自定义的数据类型,包含第六、七、八、九列封装后的数据;
3、框架将<k2,v2>依据k2关键字进行map排序,然后进行combine过程,再进行Reduce段排序,得到<k2,list(v2...)>;
4、reduce函数处理<k2,list(v2...)>,以k2为关键字,计算list的内容。
要自定义的数据类型是Value值,因此要继承Writable接口,自定义数据类型如下:
最后实现map函数和Reduce函数如下,基本框架和wordCount相同:
最终输出结果如下:
附实验数据下载地址:https://yunpan.cn/cqcEy6QSzUEs7 访问密码 2fb1。数据来源:网易云课堂hadoop大数据实战
相关文章推荐
- 【转】自定义Hadoop数据类型
- Hadoop-MapReduce之自定义数据类型
- Hadoop自定义数据类型
- Hadoop 学习自定义数据类型
- 了解Hadoop数据类型,输入输出格式及用户如何自定义。
- Hadoop自定义排序和自定义数据类型使用(setSortComparatorClass和setGroupingComparatorClass)
- hadoop的自定义数据类型和与关系型数据库交互
- Hadoop自定义排序和自定义数据类型使用(setSortComparatorClass和setGroupingComparatorClass)
- Hadoop自定义数据类型和输入格式
- Hadoop(十):简单了解Hadoop数据类型,输入输出格式及用户如何自定义。
- Hadoop系列-MapReduce自定义数据类型(序列化、反序列化机制)(十二)
- hadoop自定义数据类型
- Hadoop自定义数据类型
- hadoop 自定义数据类型
- hadoop自定义数据类型
- Hadoop 自定义数据类型和自定义排序
- Hadoop自定义数据类型编程练习
- hadoop-自定义数据类型
- Hadoop MapReduce编程 API入门系列之自定义多种输入格式数据类型和排序多种输出格式(十一)
- Hadoop 自定义数据类型及输入格式