十二道MR习题 - 2 - 多文件保存

题目:

需要将MR的执行结果保存到3个文件中,该怎么做。

又是一个送分题。

对于Hadoop的MapReduce来说只需要设置一下reduce任务的数量即可。MR的Job默认reduce数量是1,需要调用job的setNumReduceTasks()方法来调整reduce任务的数量。

对于spark来说,可以调用coalesce方法或repartition方法来调整分区的数量,这样也可以调整最终结果输出文件的数量。关于coalesce方法和分区的关系这里不展开了,随便搜搜就能找到了。

#######

时间: 2024-12-28 20:42:45

十二道MR习题 - 2 - 多文件保存的相关文章

十二道MR习题 – 1 – 排序

题目: 一个文件,大小约为100G.文件的每一行都是一个数字,要求对文件中的所有数字进行排序. 对于这个题目,了解过Hadoop的同学可以笑而不语了.即使用spark实现也是非常简单的事情. 先说下如何用Hadoop实现.实际上也没什么好说的:Map任务逐行读入数字,而后在Reduce中输出就可以了,简单粗暴到令人发指. 看下代码好了: package com.zhyea.dev; import org.apache.hadoop.conf.Configuration; import org.a

十二道MR习题 - 3 - 交集并集差集

题目 有两个文件A和B,两个文件中都有几百万行数字,现在需要找出A文件和B文件中数字集合的交集.并集.以及A对B的差集. 简单说一下思路: 这个问题关键在于key和value的设计.这里我将文件中的数字设置为key,将文件名称设置为value.这样在reduce阶段很容易就能找出A.B两个文件中数字的交并差集了. 并集就是reduce阶段能输出的全部记录:交集则需要做下过滤,即一个记录中的value需要同时有A.B两个文件的名称:差集则是文件名称集合中只包含A或B的记录. 看下用MapReduc

十二道MR习题 - 4 - TopN问题

题目: 有一个很大的文件,这文件中的内容全部都是数字,要求尝试从这个文件中找出最大的10个数字. 分析: 看起来像是一个比较简单的问题.不用大数据框架的话,也能比较轻易的实现:就是逐个读取文件中的每个数字,放到一个大顶堆结构中:将大顶堆放满以后,每读取一个数字就将之和大顶堆中的最小值进行比较,如果其大于这个最小值的话,就将其放入堆中,并将堆中的最小值删除:这样读取到最后,堆中剩下来的内容就是top 10了. 用MapReduce实现的话也说不上困难:我们只使用Map任务读取文件,而reduce中

第十四周项目2:用文件保存的学生名单

问题及代码: /* *Copyright (c)2015,烟台大学计算机与控制工程学院 *All rights reserved. *文件名称:project.cpp *作 者:陈文青 *完成日期:2015年6月16日 *版 本 号:v1.0 * *问题描述: (1)定义学生类,其中包含姓名.C++课.高数和英语成绩及总分数据成员. (2)用对象数组进行存储学生的成绩,读入成绩并计算总分:将总分高于平均总分且没挂科的同学的信息保存到文件pass_score.dat中. *程序输入: *程序输出:

第十四周(-用文件保存的学生名单)

/* *copyright(c) 2015,烟台大学计算机学院 *All rights reserved. *文件名称:第十四周(-用文件保存的学生名单) *作者:王忠 *完成日期:2015.6.09 *版本号:v1.0 * *问题描述:文件score.dat中保存的是若干名学生的姓名和C++课.高数和英语成绩. (1)定义学生类,其中包含姓名.C++课.高数和英语成绩及总分数据成员. (2)用对象数组进行存储学生的成绩,读入成绩并计算总分:将总分高于平均总分且没挂科的同学的信息保存到文件pas

第十四周 【项目2-用文件保存的学生名单】若干名学生的学号 姓名和C++课、高数和英语成绩

运行代码: /* *Copyright (c)2014,烟台大学计算机与控制工程学院 *All rights reserved. *文件名称:d.cpp *作 者:张旺华 *完成日期:2015年6月3日 *版 本 号:v1.0 */ /* *[项目2-用文件保存的学生名单] * 文件score.dat中保存的是若干名学生的学号 姓名和C++课.高数和英语成绩. */ #include <fstream> #include<iostream> #include<string&g

第十四周 *【项目2-用文件保存的学生名单】

/* *Copyright (c)2014,烟台大学计算机与控制工程学院 *All rights reserved. *文件名称:d.cpp *作 者:张旺华 *完成日期:2015年6月3日 *版 本 号:v1.0 */ /* *[项目2-用文件保存的学生名单] * 文件score.dat中保存的是若干名学生的姓名和C++课.高数和英语成绩. */ #include <fstream> #include<iostream> #include<string> #inclu

C#代码实现把网页文件保存为mht文件

MHT叫“web单一文件”.顾名思义,就是把网页中包含得图片,CSS文件以及HTML文件全部放到一个MHT文件里面.而且浏览器可以直接读取得. 由于项目需要,需实现把指定的网页文件保存为mht文件.于是到网上搜索了相关的资料.找到了一份代码.测试后通过. 现将实现过程记录如下: Step 1:项目引用文件: 安装目录/System32/cdosys.dll(c:/windows/System32/cdosys.dll),这样,将增加两个命名空间:ADODB, CDO. Step 2:放一个按钮b

请问如何更改dedecms“文件保存目录”的字符限制 ?

打 开数据库找到“ ×××_arctype ”这个表,注意×××可能因为每个网站不同而不同,也许你的是“dede_arctype”.找到后再找到这三个字段名“typedir. sitepath.siteurl”.你看到这三个字段的类型了吗?分别是“char(60).char(60).char(50)”.如果看官聪明已经 猜到了.  对,就是更改这三个字段的字符长度.笔者已经改为“char(200).char(200).char(200)”.改成200应该足够长了吧. 请问如何更改dedecms"